diff options
author | Sven Wischnowsky <wischnow@users.sourceforge.net> | 2000-05-11 08:54:47 +0000 |
---|---|---|
committer | Sven Wischnowsky <wischnow@users.sourceforge.net> | 2000-05-11 08:54:47 +0000 |
commit | 8e7e17237ea013a271ec41471bfcd40a2e39584a (patch) | |
tree | 5babcfb8dbd029bb11b63ea0c2c30a66a29e4b9c /Doc | |
parent | d3620a02dfad71562320a90315175855b44ed4de (diff) | |
download | zsh-8e7e17237ea013a271ec41471bfcd40a2e39584a.tar.gz zsh-8e7e17237ea013a271ec41471bfcd40a2e39584a.tar.xz zsh-8e7e17237ea013a271ec41471bfcd40a2e39584a.zip |
allow internally-mutually exclusive sets in _argument_sets; fixes for _argument_sets and the C-code for it (11320)
Diffstat (limited to 'Doc')
-rw-r--r-- | Doc/Zsh/compsys.yo | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Doc/Zsh/compsys.yo b/Doc/Zsh/compsys.yo index 4c7e6dd6b..8834fd489 100644 --- a/Doc/Zsh/compsys.yo +++ b/Doc/Zsh/compsys.yo @@ -3252,6 +3252,20 @@ option `tt(-c)' will not be completed any more, but if `tt(-a)' is given, both sets will still be considered valid, because it appears before the first hyphen, so both sets contain this option. +If the name-string is of the form `tt(LPAR())var(name)tt(RPAR())' then +all specifications in the set have an implicit exclusion list +containing the name of the set, i.e. all specifications are mutual +exclusive with all other specifications in the same set. This is +useful for defining multiple sets of options which are mutual +exclusive and in which the options are aliases for each other. E.g.: + +example(_argument_sets \ + -a -b \ + - '(compress)' \ + {-c,--compress}'[compress]' \ + - '(uncompress)' \ + {-d,--decompress}'[decompress]') + Don't expect too much with complicated options that get their arguments in the same string and `tt(->)var(state)' actions or with the tt(-C) option that is given to tt(_arguments), otherwise most |