🦍

Vimの:wと:rの便利Tips

2020/10/05に公開

始めに

Vimには:w:rコマンドがあります。コマンド自体は知っている方が多いかと思います。
ぼく的にちょっと便利な使い方ができるので、それお紹介していこうと思います。

:r

:r banana.txtでファイルの中身を読み取って、現在のカーソルの次の行に挿入してくれます。
挿入できる行も指定できます。その場合は:{lnum}r banana.txtというふうに先頭に行番号を入力します。

ここからがイチオシですが、実は:r !{cmd}でコマンドの出力も挿入できます。
たとえば、APIのレスポンスをVimでちょっと編集したい場合や、コマンド実行結果を記事に挿入したい場合などに便利です。

:w

:wについてVimmerのみなさんなら誰もが知っているコマンドなので説明は省きますが、
実は:w !{cmd}でバッファの内容を外部コマンドの標準入力として渡してくれます。

つまり、標準入力からコードを受け取って実行できるインタプリタがあれば、
ファイルをいちいち保存しなくてもサクッとコード片を実行できるのです。

たとえば、:w !nodeならJavaScriptのコードを実行できるし、:w !bashならシェルスクリプトを実行できます。

実際に、サンプルコード[1]を実行すると結果が出力されます。

:r:wの組み合わせ

この2つコマンドを組み合わせると、Vimでdockerのコンテナをまとめて停止できたりします。

この2つのコマンドの詳細は:h :r:h :wを参照ください。
解説した内容全部書いてあります。

さいごに

:r:wは便利。

脚注
  1. こちらの記事から拝借。 ↩︎

Discussion