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

RE: _arguments description problem

Borsenkow Andrej wrote:

> ...
> 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
>     300 
> bor@itsrm2% grep -r _wanted | grep -- ' - ' | wc -l
>      26
> 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? 

That wouldn't be much cleaner, actually, because there would have to
be an option to select or de-select this behaviour because we don't
always want it -- at least I know that I wrote some functions where I
intentionally didn't use `-', in cases where the lower level functions
just knew better what to produce as descriptions.

So that is one case where just counting lines gives wrong results. Two
other cases are: functions that are not intended to be used as helper
functions (and those are responsible for many of the uses of _wanted)
and cases where the `-' might be on a second line. I don't know how
many cases fall into the second category, but a bit of grep and wc
shows 131 cases where the line with _wanted ends in a backslash.

But of course, anyone is free to hack on the completion code -- always
was. The best place would probably be _all_labels, the place where we
now do the search for `-'. And make sure to check the uses of _wanted
so that we don't use stuff we want to have.


Sven Wischnowsky                          wischnow@xxxxxxxxx

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