@kasumiiです。こんにちは。
Vimのテキストオブジェクトをもっと使いこなしたいなーと思いつつ、wildfire.vimという便利なプラグインに手を出してしまいました。
上記ページのGIFアニメがとてもわかりやすいです。
wildfire.vim をインストール
わたしはNeoBundleを使っているので、.vimrc に1行追加してインストール。
NeoBundle 'gcmt/wildfire.vim'
ノーマルモードでEnterを押すと直近のテキストオブジェクトを選択
使い方はすごく簡単。基本的にバシバシEnterキーを押していくだけでそのへんにあるテキストオブジェクトを次々と選択してくれます。ありがたい。
・ノーマルモードでEnter
を押すと一番近くのテキストオブジェクトを選択
・もう一度Enter
を押すとさらにその外側のテキストオブジェクトを選択
・2 + Enter
で2番めのテキストオブジェクトを選択
勢い余ってEnterキーを押しすぎちゃっても安心。
・行きすぎちゃったらBackspace
(MacならDelete
)でひとつ前のテキストオブジェクトに戻る
キーマッピングを変えたいときは以下。
let g:wildfire_fuel_map = "<ENTER>" let g:wildfire_water_map = "<BS>"
デフォルトで選択されるテキストオブジェクトは次の7つになっているので、好きなものを追加したり削除したり。テキストオブジェクトについては:help text-objects
を参照。
let g:wildfire_objects = ["i'", 'i"', "i)", "i]", "i}", "ip", "it"]
ファイルタイプごとにどのテキストオブジェクトを選択するかも決められます。
let g:wildfire_objects = { \ "*" : ["i'", 'i"', "i)", "i]", "i}", "ip"], \ "html,xml" : ["at"], \ }
カスタマイズの仕方とか、以下のブログ記事が参考になりました。ありがとうございます。
【参考】wildfire.vimでVim力を下げる – Weblog – Hail2u.net
確かにこのプラグイン、便利すぎてVim力が下がりますね\(^o^)/