Cygwin + zsh: Home キーと End キーが機能しない

Cygwin + zsh: Home キーと End キーが機能しない

CygwinでzshのHomeキーとEndキーが機能しません。さまざまな情報源によると、

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

問題は解決するだろうが、私の場合はうまくいかない。奇妙なことに、

bindkey "\e[3~" delete-char

削除ボタンが機能し始めます (それ以前は単に ~ を出力します)。

何が起こっているのか分かる人はいますか?

私は Windows XP を使用しており、利用可能な Cygwin パッケージの最新バージョンを使用しています。

アップデート: これはminttyの問題のようです。Windowsコマンドプロンプトを起動するcygwin.batを実行すると、すべて正常に動作します。おそらく、このバグ?

答え1

minttyメーリングリストの助けを借りて(https://groups.google.com/forum/?fromgroups#!topic/mintty-discuss/v4b86DBNI80) 答えが見つかりました。.zshrcに追加する必要がある行は次のとおりです。

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

答え2

以下に、追加の便利なバインディングの完全なリストを示します (コマンドからコロンを削除するように修正されています)。

# 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

関連情報