Недавно я просматривал сочетания клавиш bash и пытался найти подходящий для моего ключа активации tmux.
Я нахожу интересным , что ctrl + m
и ctrl + q
не используются в ярлыках Баш, согласно https://en.wikipedia.org/wiki/Bash_(Unix_shell) .
Почему они не используются? Я чувствую себя ctrl + m
очень удобно.
Эти две комбинации предназначены для DIY (define it yourself)
использования? Или есть другая история?
ALT + m
имхо еще удобнее.Ответы:
Ctrl + M отправляет тот же символ (RET), что и клавиша Enter на терминале. Программы не имеют возможности отличить их друг от друга, поэтому эти ключи нельзя настроить отдельно.
Ctrl + Q уже используется для XON по умолчанию, поэтому он не может быть использован Bash, но вы все равно сможете использовать его в tmux, потому что tmux использует режим необработанного ввода.
Программа с графическим интерфейсом могла прочитать с клавиатуры, что клавиша m была нажата с модификатором Ctrl и использовать Ctrl + m в качестве ярлыка, но оболочка или любая терминальная программа получает комбинации Ctrl + Key так же, как символы ascii от 0 до 26
и так далее. Вы можете попробовать это, чтобы увидеть значения
Чтобы ввести значения, нажмите Ctrl + v перед Ctrl + [af], чтобы получить их как необработанное значение.
Когда вы посмотрите на таблицу ascii (7), вы увидите контрольные коды в таблице с соответствующими символами @ .. Z слева. Например
или
Следующий уровень, который интерпретирует управляющие коды перед bash, является изменением и распечаткой настроек терминала.
см. stty (1) для значений
lnext
илиstart
иstop
.Также смотрите readline (3), так как bash и другие программы GNU cli используют эту библиотеку для управления строками ввода и, конечно же, bash (1) / READLINE, раздел readline на странице руководства bash.
Примечание: XYZ (NUM) означает страницу руководства XYZ из раздела NUM, поэтому результат
man NUM XYZ
.источник
C-q
с тем же, чтоC-v
и клон функции Emacs,quoted-insert
который полезен для выяснения escape-кодов, генерируемых ключами и комбинациями клавиш. Вот соответствующая часть руководства Readline: tiswww.case.edu/php/chet/readline/readline.html#SEC9