Исправление настроек ключа (Home/End/Insert/Delete) в.zshrc при запуске Zsh в эмуляторе терминала Terminator
Я использую Ubuntu 11.04. Я установил Terminator Terminal Emulator 0.95 и Zsh версии 4.3.15.
У меня есть (общеизвестные) проблемы с моими ключами внутри Zsh. По крайней мере, это:
- Home / End, ничего не происходит
- Вставить / Удалить /PageUp/PageDown: набрано "~"
Я уже пробовал некоторые конфигурации для.zshrc, которые должны решить эту проблему, но пока ни один подход не сработал. Может быть, это связано с комбинацией Терминатора и Zsh. Я взял 2 конфига на этой странице: https://bbs.archlinux.org/viewtopic.php?pid=428669.
Есть ли у кого-то похожая конфигурация (особенно Terminator и Zsh) и выяснил, что нужно вставить в.zshrc для исправления настроек ключа?
2 ответа
Чтобы узнать код ключа, выполните cat
нажмите клавишу, введите и Ctrl+C.
Для меня, Home
посылает ^[[H
а также End
^[[F
так что я могу поставить свой .zshrc
в моем доме реж
bindkey "^[[H" beginning-of-line
bindkey "^[[F" end-of-line
Эти коды могут меняться в зависимости от используемого вами эмулятора терминала.
autoload zkbd ; zkbd
создаст файл с массивом кодов клавиш для использования, как bindkey "${key[Home]}" beginning-of-line
, и вы можете получить другой файл в зависимости от терминала.
Спасибо @lolesque, но решение не работает со мной. После использования zkbd
чтобы проверить связывание ключей, я выбрал следующее решение. Кстати, мой $TERM
является xterm
,
bindkey "^[[1~" beginning-of-line
bindkey "^[[4~" end-of-line
Надеюсь, поможет.
Для меня на WSL2 (Windows 10) это было
bindkey "^[OH" beginning-of-line
bindkey "^[OF" end-of-line
В cat
трюк у меня не сработал, так как он напечатал ^[[H
как в принятом ответе, но я смог узнать ^[OH
последовательность, набрав Ctrl+v Home
в новом оконном терминале работает zsh.