From ed73fce676a8713babc78bbcc7380f7b026bec8a Mon Sep 17 00:00:00 2001 From: Joe Bloggs Date: Mon, 24 Mar 2014 01:53:02 +0000 Subject: [PATCH] Intro --- zsh-completions-howto.org | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/zsh-completions-howto.org b/zsh-completions-howto.org index d520545..fc06a84 100644 --- a/zsh-completions-howto.org +++ b/zsh-completions-howto.org @@ -1,18 +1,27 @@ * Intro +The official documentation for writing zsh completion functions is difficult to understand, and doesn't give many examples. +At the time of writing this document I was able to find two other tutorials on the web, however both of those tutorials only +explain a small portion of the capabilities of the completion system. This document aims to give more complete and easy to +understand explanation for creating zsh completion functions. I do not go into all the details, which can be looked up in the +[[http://zsh.sourceforge.net/Doc/Release/Completion-System.html#Completion-System][official documentation]]. + +Hopefully, after reading this, you will be able to get up and running with your own completion scripts pretty quickly. +Please make any scripts that you create publically available for others (e.g. by forking this repository and making a [[id:64bcd501-b0f0-48c7-b8e2-07af708b95ec][pull request]]). + ** Defining completion functions +Completion functions for a given command * Utility functions with example code ** compadd ** _gnu_generic ** _arguments - :PROPERTIES: - :ID: 64bcd501-b0f0-48c7-b8e2-07af708b95ec - :END: + ** _regex_arguments ** _regex_words ** _values ** _comma_separated +* gotchas * Putting it all together * Other resources -[[http://wikimatze.de/writing-zsh-completion-for-padrino.html][Here]] is a nicely formatted short tutorial showing basic usage of the [[id:64bcd501-b0f0-48c7-b8e2-07af708b95ec][_arguments]] function, -and [[http://www.linux-mag.com/id/1106/][here]] is a slightly more advanced tutorial using the [[id:64bcd501-b0f0-48c7-b8e2-07af708b95ec][_arguments]] function. -[[http://linux.die.net/man/1/zshcompsys][Here]] is the zshcompsys man page. +[[http://wikimatze.de/writing-zsh-completion-for-padrino.html][Here]] is a nicely formatted short tutorial showing basic usage of the _arguments function, +and [[http://www.linux-mag.com/id/1106/][here]] is a slightly more advanced tutorial using the _arguments function. +[[http://zsh.sourceforge.net/Doc/Release/Completion-System.html#Completion-System][Here]] is the zshcompsys man page.