Во-первых, вам нужно определить, отправляет ли ваш терминал различные escape-последовательности для этих комбинаций клавиш. Приложения, работающие в терминалах, получают символы ввода, а не ключи. Функциональные клавиши кодируются как управляющие символы или как escape-последовательности, начинающиеся с escape-символа (который вы можете написать как \e
в привязке ключа).
Чтобы увидеть escape-последовательность, отправленную комбинацией клавиш в терминале, нажмите Ctrl+ Vв командной строке, затем нажмите комбинацию клавиш. Например, если я нажимаю Ctrl+ V Ctrl+ Leftв приглашении оболочки, я вижу ^[O5D
. ^[
является escape-символом, поэтому мне нужно привязать \eO5D
Mutt, чтобы он реагировал на Ctrl+ Left:
bind editor \eO5D backward-word
Некоторые терминалы отправляют одну и ту же escape-последовательность для одного и того же ключа с разными модификаторами. Если это так, вам нужно выяснить, как изменить поведение терминала или переключиться на другой терминал.
\e
это управляющий ключ, а не управляющий символ ...