Cygwin + zsh: Teclas Home e End não funcionam

8

Não consigo que as teclas Home e End funcionem para o zsh no Cygwin. Várias fontes parecem sugerir que

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

vai resolver o problema, mas isso não funciona para mim. Estranhamente, depois de eu entrar

bindkey "\e[3~" delete-char

o botão Delete começa a funcionar (antes disso, apenas produz ~).

Alguém tem uma ideia do que está acontecendo?

Estou no Windows XP e estou usando as versões mais recentes dos pacotes disponíveis do Cygwin.

UPDATE : Este parece ser um problema com o mintty, se eu executar cygwin.bat que inicia o prompt de comando do Windows, então tudo funciona bem. Talvez esteja relacionado a esse bug ?

mavroprovato
fonte
Se você ligar read, o que sai quando você pressiona Homee, Endrespectivamente?
Slhck
Se eu executar ler do terminal e, em seguida, pressione Home, o cursor salta na parte superior da tela. É isso que você queria dizer?
mavroprovato
Então você tem que configurar seu terminal para realmente passar esses comandos para o shell. Não tenho ideia de como isso funciona no Windows.
Slhck

Respostas:

5

Aqui está minha lista completa de ligações adicionais úteis (corrigidas para remover os dois pontos dos comandos).

# 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
jan
fonte