Artem Chuprina wrote:
s> когда я нажимаю на таб: s> если есть что дописать --- то дописать и показать возможные варианты. s> если дописать нечего --- показать возможные варианты. s> если дописать нечего и список уже показан --- включить menu-select.
Ну, общий-то принцип понятен - надо не перевешивать биндинги, а вешать биндинг на функцию, аккуратно запоминающую состояние. И не забывающую его своевременно сбросить, главное. Подозреваю, что она должна смотреть на $LASTWIDGET.
не спорю. (: но я пока плохо понимаю как это сделать одной функцией. о! придумал (: zle -N my-tab bindkey '\t' my-tab my-tab(){ if [[ $LASTWIDGET == $WIDGET ]]; then zle menu-select else zle expand-or-complete-prefix fi } это то, что хочется. только всё равно сегфолтится в определённые моменты. ls <TAB> -- всё ok. ещё раз таб --- тоже всё ok ls /tm<TAB> -- всё ok. ещё раз таб --- сегфолт. -- sergio. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]