Я пытаюсь сделать правильную вещь и поместить свои привязки клавиш в ~/.inputrc
.
Тем не менее, оказывается, что я должен изменить
bind '"\e\C-j":"\e[1~quiet \e[4~\n"'
в
"\e\C-j": "\eOHquiet \eOF\n"
Теперь \eOH
(привязка nav-block-pos1 к beginning-of-line
) и \eOF
( привязка nav-block-end к end-of-line
) сами являются привязками в моей конфигурации, на которые я, возможно, не всегда могу положиться.
Поэтому основной вопрос заключается в том, почему привязка к num-block-pos1 ( \e[1~
) и num-block-end ( \e[4~
) работает, bind
но не в моем ~/.inputrc
?
Редактировать:
Все становится еще сложнее, теперь, когда я понял, что это \e\C-j
работает только для Gnome Terminial (или, возможно, xterm, кто знает ...).
Для моего TTY это должно быть
"\e\C-m": "\e[1~_quiet \e[4~\n"
Так что разные VT имеют разные реализации интерпретации ключей или как?
keymap
Опция используются для набора какого рода ключ представления используется в ключевых определениях переплетов. Соответствующая информация: superuser.com/questions/286781/… cnswww.cns.cwru.edu/php/chet/readline/rluserman.html#SEC9 wiki.archlinux.org/index.php/Readlinebind
и использованиемinputrc
для фактической привязки. Разве они не должны использовать те же настройки?Ответы:
Ваш эмулятор терминала может работать в одном из двух режимов: режим приложения и режим курсора (см. Http://homes.mpimf-heidelberg.mpg.de/%7Erohm/computing/mpimf/notes/terminal.html ). Это зависит от того, в каком режиме работает ваше конкретное приложение, которое определяет, какую escape-последовательность вам нужно отправить.
источник