Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

RE: _arguments description problem

> Borsenkow Andrej wrote:
> > ...
> >
> > Which means that _wanted (and related functions) probably needs some
> > to know if it needs to setup description or not. I wonder, does it
> > sense to parse arguments (in this case "$@" -k userdirs) and if
> > completion options are already there, do not override them? Seems
> > the least intrusive solution.
> Actually, I have already added a mechanism for that, see the
> description for _all_labels in the docs (which is referred to under
> _requested, which is referred to under _wanted). If the command-args
> given to any of these functions contains a `-', the options are added
> before it, if the hyphen is the last argument, it is replaced with the
> options. And since latter options override earlier onces for compadd,
> clean functions should probably use things like:

I would not call this really clean :-) It is a workaround I admit but
not a really clean solution.

>   _wanted users expl user compadd "$@" -k userdirs -
> (note the added `-' at the end)
> But I have to admit that I always forget to do that, too. Sorry.

bor@itsrm2% grep -r _wanted | wc -l
bor@itsrm2% grep -r _wanted | grep -- ' - ' | wc -l

so over 90% of all functions do not use it.

I really believe that cleaner and better way would be to parse options.
Is it possible to do it in one place only? 


Messages sorted by: Reverse Date, Date, Thread, Author