Mac の iTerm2 上で Home/End キーを使いたい

MacBook に PC 用キーボードをつないで使っていますが、Terminal での行頭/行末移動が不便。なので、Windows 同様、Home/End キーで行頭/行末移動ができるようになりたい。

というのを実現したのでその手順を。

なお、 以下手順は iTerm2 で確認しています。標準のターミナルでは使えないようです。

  1. Home/End キーの Escape Sequence を確認
    iTerm2 上で Ctrl+V の直後に特殊キーを押すと、そのキーのエスケープコードが表示されます。例えば Ctrl+V Home と押すと、^[[HCtrl+V End^[[F が出力されます。

  2. bindkey コマンドでエスケープコードと動作の関連付けを行う
    (zshの場合 )1 で確認した Escape Sequence にカーソル移動の動作を紐つけます。(.zshrc などに追記しておくといいでしょう)

bindkey "^[[H" beginning-of-line
bindkey "^[[F" end-of-line     

※試してませんが、bash なら bind -x でも同様のことができるかも知れません。

以上で、 iTerm2 上で Home/End キーによる行頭/行末移動ができるようになります。