at posts/single.html

zsh のキーバインド

coLinux 上の Gentoo で zsh を使っているけど、DELETEキー、HOMEキー、ENDキーが上手く動かない状態だった。 bash だと期待した動作(Windowsと同じ)をするんだけど。

zsh でのこれらの設定は bindkey を使うらしい(bash の場合は bind)。 海外のページを参考にしつつ .zshrc に以下を追記した。

bindkey -e
bindkey "^?"    backward-delete-char
bindkey "^H"    backward-delete-char
bindkey "^[[3~" delete-char
bindkey "^[[1~" beginning-of-line
bindkey "^[[4~" end-of-line
  • -e は Emacs 風のキーバインドにする命令(CTRL+A, CTRL+Eで行頭・行末に移動)。
  • ^? と ^H はバックスペース。端末によって設定が違う?
  • それ以降の行は、DEL、HOME、ENDキーへの割り当て。

xtermで使う場合はまた設定が異なるようだけど、使わないので深追いしないことにした。 で、これらの設定を忘れないようにGentoo Linuxメモに残す。

余談

こんな使い方がフローとストックなのかな? blog のまとめとしての Wikiで書いたように、面倒でなかなか両方は更新しないんだけど、こういう設定ファイルを残すのには便利かな。

関連する日記