zsh-users
 help / color / mirror / code / Atom feed
* _arguments question
@ 2000-07-12 17:40 Matt Armstrong
  0 siblings, 0 replies; 4+ messages in thread
From: Matt Armstrong @ 2000-07-12 17:40 UTC (permalink / raw)
  To: zsh-users

I have this completion function that I have a question on:

_p4_submit () {
    _arguments \
        '(-i)-c[changelist#]:changelist #' \
        '(-c)-i[input from stddin]' \
        ':submit file:_files'
}       

I have made -i and -c mutually exclusive.  How can I make all three
mutually exclusive?  This command accepts only one of the three
possible arguments.


-- 
matt


^ permalink raw reply	[flat|nested] 4+ messages in thread
* Re: _arguments question
@ 2000-07-13  8:57 Sven Wischnowsky
  2000-07-13 15:20 ` Matt Armstrong
  0 siblings, 1 reply; 4+ messages in thread
From: Sven Wischnowsky @ 2000-07-13  8:57 UTC (permalink / raw)
  To: zsh-users


Matt Armstrong wrote:

> I have this completion function that I have a question on:
> 
> _p4_submit () {
>     _arguments \
>         '(-i)-c[changelist#]:changelist #' \
>         '(-c)-i[input from stddin]' \
>         ':submit file:_files'
> }       
> 
> I have made -i and -c mutually exclusive.  How can I make all three
> mutually exclusive?  This command accepts only one of the three
> possible arguments.

To say that with either of the options, the argument may not be
completed, you include either its number or a `:' in their exclusion
lists (the `:' means that no argument at all may be completed after
the option).

To say that after the argument no option should be completed, there
are at least two ways. Either you give it a exclusion list, too
(`(-c -i):submit ...') or you use the -A option to _arguments:

    _arguments -A '' \
        '(: -i)-c[changelist#]:changelist #' \
        '(: -c)-i[input from stddin]' \
        ':submit file:_files'

The argument given to -A (the '' in the example) can be used to give a 
pattern matching strings that should be silently accepted and should
not be considered to be normal arguments. E.g. if there may be other
options than the ones described, you would use `-A "-*"' to say that
any string starting with a hyphen should be ignored when trying to
determine if a string on the line is an argument or something else.

Bye
 Sven


--
Sven Wischnowsky                         wischnow@informatik.hu-berlin.de


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2000-07-13 15:57 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-07-12 17:40 _arguments question Matt Armstrong
2000-07-13  8:57 Sven Wischnowsky
2000-07-13 15:20 ` Matt Armstrong
2000-07-13 15:56   ` Bart Schaefer

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).