Vimのテキストオブジェクト — iw, aw, i", a(, it など

Vimのテキストオブジェクトを理解する:単語、文、段落、引用符、括弧、タグに対するinner (i) と around (a) の選択。高速な構造的編集の鍵。

Editing

詳細な説明

テキストオブジェクトとは?

テキストオブジェクトは、カーソル位置ではなく構造に基づいてテキストの領域を定義します。オペレーターやVisualモードで使用します:

{operator}{a|i}{object}
  • i = inner(内容のみ、デリミタを除く)
  • a = around / an(デリミタを含む内容)

単語と文のオブジェクト

オブジェクト Inner (i) Around (a)
単語 iw — その単語 aw — 単語 + 周囲のスペース
WORD iW — そのWORD aW — WORD + 周囲のスペース
is — その文 as — 文 + スペース
段落 ip — その段落 ap — 段落 + 空行

デリミタオブジェクト

オブジェクト Inner (i) Around (a)
ダブルクオート i"".." の内側 a" — クオートを含む
シングルクオート i''..' の内側 a' — クオートを含む
バッククオート i` — バッククオートの内側 a` — バッククオートを含む
丸括弧 i( または ib a( または ab
角括弧 i[ a[
中括弧 i{ または iB a{ または aB
山括弧 i< a<
HTML/XMLタグ it — タグの内側 at — タグを含む

実用的な例

  • diw — カーソル下の単語を削除
  • ci" — ダブルクオート内のテキストを変更
  • da( — 丸括弧を含めてすべて削除
  • yis — 現在の文をヤンク
  • vip — 現在の段落をVisual選択
  • cit — HTMLタグ内のコンテンツを変更

テキストオブジェクトは、Vimを単純なテキストエディタから構造的な編集の強力なツールへと昇華させるものです。

ユースケース

コード、マークアップ、散文などの構造化されたテキストを編集しており、単語、引用符、括弧、タグなどの構造的な境界に基づいてコンテンツを素早く選択、削除、変更する必要がある場合。

試してみる — Vim Cheat Sheet

フルツールを開く