Vim のコマンドラインモードの一括置換を使うと幸せになれます。
普通の挿入方法
以前、「WordPressでの画像の貼り方いろいろ | Naokix.net」でも紹介したように、投稿画面でテキストエディタを使って記事を編集する人は、「メディアを追加」ボタンで画像を挿入し、
ビジュアルエディタに切り替えた後、画像を選択し、「リンクの挿入/編集」ボタンを押して、
「リンクを新ウィンドウまたはタブで開く」にチェックを入れることで a タグに「target=”_blank”」を挿入することが多いと思います。
画像が1枚や2枚ならいいのですが、当ブログのように画像を何十枚も記事に貼り付けるとなると、これがなかなか面倒であります。
Vim の一括置換
このようなテキストがあったとします。
「:」キーを押してコマンドラインモードに移行した後、次のように入力してください。
1 | %s/><img/ target="_blank"><img/g |
エンターキーを押せば、
このようになります。
毎回入力するの?
いえいえ、そんな面倒なことはいたしません。Vim の「コマンド履歴」を使えばラクチンなのです。ノーマルモードで「q:」と入力します。すると、
このように過去に入力したコマンドの一覧が表示されるので、十字キーで先ほどのコマンドを選択し、エンターキーを押せば、
先ほどと同様の結果になります。最後にコマンドラインモードに移行し、「:w」でテキストを上書き保存してください。
注意
このやり方ですと、
1 | <p><img src="sample.gif" alt="サンプル"></p> |
などがあった場合、
1 | <p target="_blank"><img src="sample.gif" alt="サンプル"></p> |
というとんでもない結果になるので注意してください。
Vim スクリプトで正規表現を使ってきちんとタグの識別を行えば、このような事態を避けられそうなので、ただ今研究中であります。うまくいき次第、エントリーにしたいと思います。
Comment