Відповіді:
Мені вдалося URxVt
з
bindkey '^[[2^' zle-widget
і в xterm
с
bindkey '^[[2;5~' zle-widget
Як бачимо, рядок, який потрібно пов'язати, скоріше залежить від емулятора терміналу (та прив'язки клавіатур yor X), а не від оболонки.
Звичайний трюк для отримання ключових рядків - це запустити cat
та натиснути потрібну комбінацію клавіш:
$ cat
^[[2;5~
Крім того, наступні послідовності евакуації розпізнаються (з man zshzle
)bindkey
\a bell character
\b backspace
\e, \E escape
\f form feed
\n linefeed (newline)
\r carriage return
\t horizontal tab
\v vertical tab
\NNN character code in octal
\xNN character code in hexadecimal
\M[-]X character with meta bit set
\C[-]X control character
^X control character
gnome-terminal
, схоже, що Ctrl + Ins взагалі не передається до запущеного процесу. Я намагався видалити всі ключові прив’язки в самому терміналі, але, на жаль, це нічого не змінює.
^I
це вкладка (і це один рідкісний випадок, коли cat
хитрість не працює), але ви також можете використовувати \t
. Однак я не зміг також зв’язати Ctrl + Tab з xterm або urxvt.
zsh
проблема (чи ти можеш зв'язати цю комбінацію в bash?). Таким чином, у вас є більше шансів, що експерт-гном буде виглядати - я прийшов сюди за тегом zsh і навіть
^[[2;5~
не працював для мене. Як дізнатись, яку рядок він використовує?