vimでHTMLタグの間にあるテキストを削除しますか?


164

知っている

di<

HTMLタグ自体で削除されます。

2つのタグの間のテキストを削除する簡単な方法はありますか?

<span>How can I delete this text?</span>

ありがとう!

回答:


321

dit一致するXMLタグの間のテキストを削除します。(it「内部タグブロック」用です。)

:h itおよびを参照してください:h tag-blocks


30
そしてもちろん、citすぐに書きたいときも。
Debilski、2010年

6
また、Surroundプラグイン(vim.org/scripts/script.php?script_id=1697)は、たとえば、周囲のタグ(cst)を<p>から<div>に変更する場合に最適です。
Kris Jenkins、

4
実際のタグを含むdat(Delete A Tagブロック)もあります。ditのようなcitですが、後に挿入モードに入ります。datのような猫ですが、後に挿入モードに入ります。また、ディ」と、それぞれ削除、内側の二重引用符や削除、内側の括弧のためのジ(。
aiham

@KrisJenkinsは、それを達成する方法の完全な例を示すことができますか?私は引用符/括弧でしかそれを行うことができません。
FelikZ 2015年

1
またvat(またはvit)、その後に繰り返しat(またはit)を繰り返して、周囲のタグを徐々に選択します (またはv2atなど)。次にd、削除(など)します。
ジョーフリーマン

27
cit
ci"

vimの2つの最高の生産性イネーブラコマンド。

この2つだけで時間と労力を大幅に節約できます。


3
citはこのスレッドでカバーされていますが、後世のci"ために、次に"見つかったものが削除されます。htmlタグ内のクラス名を変更するのに最適です。<span id="really long annoying-id">たとえば、最初"にカーソルを置いた状態でci"、引用符の間に新しい文字を挿入すると、ヒットしてドロップします。
Alex Moore-Niemi 2015

ciw現在の単語を削除するので便利です。私はそれcitci"実際に使用します。
John Sparwasser

2
@ AlexMoore-Niemi:ci"次の引用まで左側のテキストを削除し、次の引用まで右側のテキストを削除してから、挿入モードに入ります。ct"実際には「次へ削除アップ」のコマンドが」見つかりましたが、カーソルが左引用の下であれば、はい、それは同じように動作している。。
schlimmchen

9

カーソルが削除する最初の文字にある間にdt <を試してください。あなたの例では「H」です。


他の状況にも非常に役立ちます。ありがとうございます。(私はそれが "dt <"であるべきだと思った)
CMB

1
これは技術的には真実ですが、行のどこかにジャンプするのではなく、削除する最初の文字に移動する必要があります。しかし、真実は真実です。:-)
lyonsinbeta '19 / 07/19

4

削除する最初の文字にカーソルv / <[Enter] d

このソリューションは、最初の文字から始まり、ビジュアルモード( "v")に入ります。次に、次の開始ブラケット( "/ <")を検索し、Enterキーを押して検索を終了します。

この時点で、あなたの視覚的な選択は削除するテキストをカバーします。削除するには、d( "d")を押します。

一連のタグに対してこれを行う必要がある場合は、コマンドを記録し、他の検索と組み合わせて繰り返し可能にします。キーシーケンスは次のようになります。

[ ファイルの先頭にカーソル ] qa /> [enter] lv / <[enter] dnq

次に押す:

20 @ a

20個のタグに対してこれを行うには


以前c/<[enter]は「Vimの生活」でコマンドをよく使っていましたが、今は少し後悔しています。ご覧のとおり、他の一般的なエディター/ IDEの「Viモード」プラグインのほとんどは、この特定のタイプのコマンドをサポートしていません。彼らは、サポートcitci"ct<しかし、と。それで、私は再び教え直します。
ピラット

-1

フラグ間のテキストの削除の逆を行うことを目的としている場合、Vim-Surroundをインストールして実行dstし、サラウンドタグを削除することをお勧めします

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.