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

Re: ssh completion problem

 --- Sven Wischnowsky <wischnow@xxxxxxxxx> wrote: > 

> > One idea I have for solving the main part of the problem is only
> doing
> > a _next_labels loop around final compadd commands. This loop would
> need
> > to loop over all labels for every tag for which an _requested is in
> our
> > funcstack. It would lose some flexibility such as a tag-order like:
> >   'hosts:-domain users' 'hosts:-ipaddr ports'
> > no longer being possible ...

> >  ... limitations so I'll be doing some further thinking. 

> But interesting ideas already...

The only other solution I've thought of would be to defer all tag/label
loops until the very end after all matches are added. It'd need to
track the path of added matches building up a list of associated tags.
It would allow the mixed label/tag tag-orders like the example above
but be less efficient because unwanted matches would be generated.

I think I prefer my first idea which also has the advantage of being
closer to the current system. I don't think separate tag and label
ordering would matter much. I've still got some lines of thought I want
to follow though.

If the tags dependence on funcstack to track nested tags loops goes, we
may need to act on a tag loop exiting. Currently, we break out of the
loops with `(( ret )) || break'. Can't that be done with a
compstate[nmatches] test in _tags - I'd prefer if we didn't have to set
and test $ret there anyway.

> > I'd have expected an _requested if around the _next_label prefixes
> loop
> That's only needed when there are two or more possible tags. If the
> only tag offered isn't wanted by the user the _tags in the while loop
> never returns non-zero (and hence we don't really need a loop there).

Ah, that explains.

> > and an _next_labels loop inside the _requested urls if. I thought
> > _requested only used _all_labels if it got description arguments.
> That's left to the _wanted, _newsgroups and that _tags-loop, it
> seems.

Okay, but those _wanted calls use a different tag. Labels setup for the
urls tag might not then be handled.



Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts

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