zshで"C-M-somekey"にコマンドを割り当てる

zshで "C-M-f"とか "C-M-b"にキーを割り当てる方法がわからなかったので
調べたことを, ここに残しておきます.

zshのバージョン

動作検証をしたのは zsh 5.0.2です.
Ubuntu 13.10で aptからインストールしました.

C-M-の指定

'^[^'が 'C-M-'に当たるのでそれと好きなキーを組み合わせます.
例えば 'C-M-b'だと '^[^B'となります(大文字小文字は関係なさそう).


古い記述だと '^[['となっていましたが, zsh 5.0.2ではうまく
いきませんでした.

コード例

bindkey '^[^B' vi-backward-blank-word
bindkey '^[^F' vi-forward-blank-word
bindkey '^[^U' backward-delete-word

おわりに

Emacsモードだと, コマンド少なすぎって思って viモードへの移行を
検討しましたが, 'C-M-'を活用することでそうする必要がなくなりました.


しかし今回シェルの viモードを少し勉強して, viモードはかなりありかなと
思ってしまいました. 今のところその必要はなくなりましたが,
一度ちゃんと勉強してみたいですね.