7

Я не могу заставить ключи Home и End работать для zsh под Cygwin. Различные источники предполагают, что

bindkey '\e[1~' beginning-of-line
bindkey '\e[4~' end-of-line

решит проблему, но это не работает для меня. Странно, после того как я вхожу

bindkey "\e[3~" delete-char

кнопка Удалить начинает работать (до этого она просто выводит ~).

У кого-нибудь есть идея, что происходит?

Я использую Windows XP и использую последние версии доступных пакетов Cygwin.

ОБНОВЛЕНИЕ: Это похоже на проблему с mintty. Если я запускаю cygwin.bat, который запускает командную строку Windows, то все работает нормально. Может быть, это связано с этой ошибкой?

2 ответа2

11

С помощью мятного списка рассылки (https://groups.google.com/forum/?fromgroups#!topic/mintty-discuss/v4b86DBNI80) я нашел ответ. Строки, которые мне нужно добавить в .zshrc:

bindkey '\e[H' beginning-of-line
bindkey '\e[F' end-of-line 
4

Вот мой полный список дополнительных полезных привязок (исправлено удаление двоеточий из команд).

# ctrl-left/right
bindkey "\e[1;5C" forward-word
bindkey "\e[1;5D" backward-word

# ctrl-backspace/delete
bindkey "\C-_" backward-kill-word
bindkey "\e[3;5~" kill-word

# alt-backspace
bindkey "\e\d" undo

bindkey "\e[3~" delete-char
bindkey '\e[H' beginning-of-line
bindkey '\e[F' end-of-line

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .