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

Re: #compdef tag and menu-select



On May 30, 10:16am, Sven Wischnowsky wrote:
} 
} Bart Schaefer wrote:
} 
} > At other places in the completion system we automatically load complist when
} > it seems wanted.  Perhaps compdef should too?
} 
} Nowadays I'm a bit reluctant to change that because I've too often
} thought about removing menu-select -- after all, it's just
} menu-complete with enforcing selection, which can be achieved by other 
} means.

Really?  What other means?  Specifically, I have a widget that is entirely
independent of the completion system (except that it's created with zle -C
and uses compadd; but it has nothing to do with _main_complete) and *for
that widget only* I want menu-select behavior *all the time*.

It's convenient to put `#compdef -k menu-select ^X:' at the top of the
file that defines this widget and let compinstall bind it for me, even
though it's otherwise not part of the completion system.

What can I put *in the definition file* for this widget that will enable
menu selection "by other means"?  I tried everything I could think of,
poking into various values of compstate and assigning to MENUSELECT and
whatnot, and I couldn't force menu-selection to start if the widget was
e.g. bound with `#compdef -k menu-complete ^X:'.

} And there is the question if menu-select should be re-bound to
} _main_complete when compdef finds a widget using menu-select.

In the situation described above I definitely do not want that.

-- 
Bart Schaefer                                 Brass Lantern Enterprises
http://www.well.com/user/barts              http://www.brasslantern.com

Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net   



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