Я понимаю, что формат для привязки клавиш в inputrc
файле:
keyname: function-name or macro
Для ключевого имени я видел такие вещи, как:
"\e[B"
"\e[1~"
"\e[5D"
"\M-l"
"\C-[OD"
"\e\e[D"
Каково значение этих имен ключей и каков общий формат имени ключа? Пожалуйста, поделитесь ссылкой на документы.
readline(3)
страницу или руководство пользователя readline .Ответы:
Связывание клавиш можно выполнить с помощью одной из следующих форм:
В первой форме вы можете прописать имя для одного ключа. Например, CONTROL-U будет написано как control-u. Это полезно для привязки команд к отдельным ключам.
Во второй форме вы указываете строку, которая описывает последовательность ключей, которые будут привязаны к команде. В качестве примера вы привели escape-последовательности обратной косой черты в emacs для представления специальных ключей.
Вы можете указать обратную косую черту, используя другую обратную косую черту -
\\
. Точно так же'
и"
можно избежать -\'
и\"
Обновить
Эти символы интерпретируются вашим терминалом при нажатии специальных клавиш. Вы не хотите связывать обычные алфавиты и цифры в привязке клавиш, так как вы можете использовать их на регулярной основе, что может вызвать проблемы, когда вы случайно нажмете комбинацию, которая была отображена в вашем файле
~/.inputrc
или/etc/inputrc
файле.Чтобы узнать больше, просто введите
read
в своем терминале запрос и нажмите все типы специальных клавиш, такие как функциональные клавиши, HOME, END, клавиши со стрелками и т. Д., И посмотрите, что отображается.Вот небольшая ссылка, которую я нашел, которая может предложить некоторое базовое понимание. Удачи! :)
источник
\e[1~
,\M-l
и\C-[OD
значит?\e
,\M
И\C
части очевидны. Как насчет отдыха? Например:[1~
- Должен ли я нажатьShift
+{
+1
+Shift
+`
?