
Когда я нажимаю функциональные клавиши, например F12, я получаю символ тильды на позиции курсора (знак ~). Как мне это отключить? Эта проблема касается обеих оболочек, Bash и Zsh.
Какие точечные файлы мне следует вставить?
решение1
В bash, начиная с версии 4.1, вы можете предотвратить это, добавив следующее в ~/.inputrc:
"\e[": skip-csi-sequence
Это заставит его игнорировать любой код клавиши, который не привязан ни к чему другому.
решение2
Вы можете назначить что-то каждому из этих ключей. Вы также можете назначить пустую строку.
Чтобы узнать последовательность, выдаваемую каждой клавишей, нажмите Ctrl-, vа затем функциональную клавишу. В моей системе для F12я вижу ^[[24~
. "^[" представляет Escape, который будет представлен \e
в строках ниже.
В Bash в вашем ~/.inputrc
файле добавьте такие строки:
"\e[24~": ""
или, если вы хотите, чтобы он что-то вывел:
"\e[24~": "Super User"
что заставит соответствующую клавишу ничего не делать.
В оболочке Z вы можете добавлять bindkey
команды в свой ~/.zshrc
файл следующим образом:
bindkey -s "\e[24~" ""
или, если вы хотите, чтобы он что-то вывел:
bindkey -s "\e[24~" "Super User"