この記事は zsh Advent Calendar 2013の 3日目の記事です.
"select-word-style bash"は単語移動や単語削除で /
を区切りとする
設定です. ディレクトリパスのあるディレクトリを消そうとしたら
全部消えてしまった、みたいな問題を解消してくれます.
それでだいたいいいんですが, 不満がありました. 最近までずっと
不満を抱えながら利用していたのですが, 最近解消できたので,
それについて示します.
不満
前の空白まで移動したりとか前の空白まで削除したいときにそれができない
ときです. 特に長いディレクトリパスを扱うときは何度も消したり移動したりで
面倒でした.
解消方法
それらの目的を実現するコマンドを利用するだけです.
bindkey '^[^B' vi-backward-blank-word
bindkey '^[^F' vi-forward-blank-word
bindkey '^[^U' backward-delete-word
bindkey '^[^K' delete-word
vi-backward-black-word
は前の空白まで移動, vi-forward-blank-word
は次の空白まで
移動, backward-delete-word
は元々の手前の word(/
を含む)を削除するコマンド,
delete-word
は次の word(/
を含む)を削除するコマンドです. これらと "select-word-style bash"の
コマンドを組み合わせでだいたいいい感じにできるようになりました.
ちなみに ^[^somekey
というのは C-M-somekey
のバインドを意味します.
Emacsスタイルの場合それらのキーは余りまくっているので, ぜひ活用したい
ところですよね.
##おわりに
"select-word-style bash""の不満を解消する方法について示しました.
もっといい方法がある等ありましたら、ぜひ教えてください.