ОК, я переключился на zsh несколько часов назад, и я нахожусь в огромной конфигурации, дурачащейся вокруг веселья, но это, вероятно, слишком большой укус для меня:
Я хотел бы сделатьautopairnig разделителя, например, type (и он вставляет (). Первый сбой:
bindkey -s "(" "()"
Второй сбой:
function autopair () {
zle -U "()"
zle backward-char
}
zle -N autopair autopair
bindkey "(" autopair
Я думаю, что оба сбоя, потому что Zsh пытаетсяrecurse на вставке "(" (-U
, кажется, говорит об этом явно). Есть ли способ избежать этого? Подстановка echo -ne "()"
в 1-й строке функции, конечно, избегает этого, но не редактируется ... Любые идеи, какпринудительно вставить?
Бонусные баллы (образно говоря :)): я бы хотел установить курсор в скобках после вставки. zle backward-char
в моей функции, однако, ничего не делает ...
Только представьте, как это может быть здорово! Спасибо!