Vim使っててこれ知らない人は人生損してますよ><。
テキストオブジェクトとは
文字・単語・行・段落・括弧で括られた範囲など、コマンド操作を適用する範囲のこと。
削除・コピー(ヤンク)などのコマンドとテキストオブジェクトでの範囲指定を組み合わせるととても便利に使える。
オブジェクトの例
w ・・・ 単語(スペース区切り)
p ・・・ 段落(空行切り)
" ・・・ ""で括られた範囲
※その他''[]()など括る系の記号も同様
使用例
di[ の使用例
[...]で囲まれた範囲の中身を削除
di[ 入力
da[ の使用例
[...]で囲まれた範囲全体を削除([]含む)
da[ 入力
di[ などは文字単位のテキストオブジェクトなので複数行でも可能
di[ を入力
補足
同じように、
- yi" ・・・ "..."で囲まれた範囲の中身をヤンク(コピー)
- yip ・・・ 次の空行までヤンク(コピー)
- ci" ・・・ "..."で囲まれた範囲の中身を削除&インサート(入力)モードへ
とかできます。超便利ですね!