回答:
dit
一致するXMLタグの間のテキストを削除します。(it
「内部タグブロック」用です。)
:h it
およびを参照してください:h tag-blocks
。
vat
(またはvit
)、その後に繰り返しat
(またはit
)を繰り返して、周囲のタグを徐々に選択します (またはv2at
など)。次にd
、削除(など)します。
cit
ci"
vimの2つの最高の生産性イネーブラコマンド。
この2つだけで時間と労力を大幅に節約できます。
cit
はこのスレッドでカバーされていますが、後世のci"
ために、次に"
見つかったものが削除されます。htmlタグ内のクラス名を変更するのに最適です。<span id="really long annoying-id">
たとえば、最初"
にカーソルを置いた状態でci"
、引用符の間に新しい文字を挿入すると、ヒットしてドロップします。
ciw
現在の単語を削除するので便利です。私はそれcit
を ci"
実際に使用します。
ci"
次の引用まで左側のテキストを削除し、次の引用まで右側のテキストを削除してから、挿入モードに入ります。ct"
実際には「次へ削除アップ」のコマンドが」見つかりましたが、カーソルが左引用の下であれば、はい、それは同じように動作している。。
カーソルが削除する最初の文字にある間にdt <を試してください。あなたの例では「H」です。
(削除する最初の文字にカーソル) v / <[Enter] d
このソリューションは、最初の文字から始まり、ビジュアルモード( "v")に入ります。次に、次の開始ブラケット( "/ <")を検索し、Enterキーを押して検索を終了します。
この時点で、あなたの視覚的な選択は削除するテキストをカバーします。削除するには、d( "d")を押します。
一連のタグに対してこれを行う必要がある場合は、コマンドを記録し、他の検索と組み合わせて繰り返し可能にします。キーシーケンスは次のようになります。
[ ファイルの先頭にカーソル ] qa /> [enter] lv / <[enter] dnq
次に押す:
20 @ a
20個のタグに対してこれを行うには
c/<[enter]
は「Vimの生活」でコマンドをよく使っていましたが、今は少し後悔しています。ご覧のとおり、他の一般的なエディター/ IDEの「Viモード」プラグインのほとんどは、この特定のタイプのコマンドをサポートしていません。彼らは、サポートcit
、ci"
、ct<
しかし、と。それで、私は再び教え直します。
フラグ間のテキストの削除の逆を行うことを目的としている場合、Vim-Surroundをインストールして実行dst
し、サラウンドタグを削除することをお勧めします
cit
すぐに書きたいときも。