Humanity

Edit the world by your favorite way

operator-html-escape.vimというHTML要素をエスケープするプラグインを作った

tyru/operator-html-escape.vim · GitHub
operator-html-escape - operator-html-escape provides operator to escape HTML entities. : vim online

これはけっこう便利だと思います。
指定された範囲のHTML要素をエスケープするプラグインです。
範囲はtext-objectで指定可能なので、textobj-userなどを使えば自分で範囲を拡張することもできます。
詳しくは:help text-objectを見てください。

また先人達があらゆるtext-objectを作ってくれています。

  • textobj-function
  • textobj-entire

これらとoperator-html-escapeを使用するとこのようなことができます。
((operator-html-escape)を;hに割り当てた場合)

  • (textobj-entireをインストール済みなら) ;haeで現在のバッファ中のHTML要素を全てエスケープ
  • ;hipで現在のパラグラフをエスケープ
  • vで範囲を選択して;hでエスケープ

などなどいろいろ組み合わせることができます。
もちろんCTRL-Vの矩形選択も使えます。
Vの行選択も使えます。
Vimのoperatorとtext-objectすばらしいですね。

スクリーンショット

以下はtextobj-entireをいれた状態で;haeとする前とその後。