update
This commit is contained in:
parent
b69f5b9d96
commit
57886bb812
|
@ -268,6 +268,31 @@ word is allowed which can be word2 followed by and a, b, or c, or a filename.
|
||||||
If this sounds too complicated a much simpler alternative is to use the _regex_words function for creating
|
If this sounds too complicated a much simpler alternative is to use the _regex_words function for creating
|
||||||
specifications for _regex_arguments.
|
specifications for _regex_arguments.
|
||||||
*** _regex_words
|
*** _regex_words
|
||||||
|
The _regex_words function makes it much easier to create specifications for _regex_arguments.
|
||||||
|
The results of calling _regex_words can be stored in a variable which can then be used instead
|
||||||
|
of a specification for _regex_arguments.
|
||||||
|
|
||||||
|
To create a specification using _regex_words you supply it with a tag followed by a description followed by a list
|
||||||
|
of specifications for individual words. These specifications take the form 'WORD:DESCRIPTION:SPEC' where WORD is the
|
||||||
|
word to be completed, DESCRIPTION is a description for it, and SPEC can be another variable created by _regex_words
|
||||||
|
specifying words that come after the current word or blank if there are no further words.
|
||||||
|
For example:
|
||||||
|
#+BEGIN_SRC sh
|
||||||
|
_regex_words firstword 'The first word' 'word1a:a word:' 'word1b:b word:' 'word1c:c word'
|
||||||
|
#+END_SRC
|
||||||
|
the results of this function call will be stored in the $reply array, and so we should store it in another array
|
||||||
|
before $reply gets changed again, like this:
|
||||||
|
#+BEGIN_SRC sh
|
||||||
|
local -a firstword
|
||||||
|
_regex_words word 'The first word' 'word1a:a word:' 'word1b:b word:' 'word1c:c word'
|
||||||
|
firstword="$reply[@]"
|
||||||
|
#+END_SRC
|
||||||
|
we could then use it with _regex_arguments like this:
|
||||||
|
#+BEGIN_SRC sh
|
||||||
|
_regex_arguments _cmd /$'[^\0]##\0'/ "$firstword[@]"
|
||||||
|
#+END_SRC
|
||||||
|
Note that I have added an extra pattern for the initial command word itself.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue