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

Re: Why does _main_complete not try the next completer when $_comp_mesg is non-zero?



On 3/28/21, Marlon Richert <marlon.richert@xxxxxxxxx> wrote:
> The following line in _main_complete
>
> [[ -n "$_comp_mesg" ]] && break
>
> has the effect that, whenever _message has been called (with only few
> exceptions), the next completer won't be tried, _even when
> $compstate[nmatches] is zero._
>
> Why? What is the reason for this?
>
> And is there a convenient way to work around this behavior? I want
> _history to be tried when _complete fails, but this behavior often
> prevents it. For example, if I try `grep \t`, then I get only the
> message `pattern`, whereas I would like to get history words.
>
> And if there is not an easy workaround, would you accept a patch from
> me that changes this?

I haven't tested this, but I suspect that if this check were not
there, then loops due to approximate matching would print the message
multiple times.

-- 
Mikael Magnusson




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