vimから外部のプログラムを呼び出す

vimでは:を入力することで、exモードと呼ばれるvimのコマンドを入力するモードに入ります。
これはコマンドラインモードと呼ばれ、vimではファイルの書き込みや終了などもここで行います。
幾つか便利なコマンドがありますので、以下に一部紹介します。

!で外部プログラムが実行できる

1
2
3
:!ls
:!date
:!git commit -am % 'commit msg'

:rで外部プログラムの実行結果を読み取る

1
2
:r! date
:r! pwd

外部プログラムをフィルタとして使う

範囲指定後に!で外部プログラムを実行すると、選択範囲のテキストを入力として外部プログラムを実行でき、その出力で範囲のテキストを置き換えます。

:findでファイルを開く

1
2
3
:find text.txt
:find ../dir/text.txt
:find ~/Documents/test.txt

まとめ

vimのコマンドは覚えていくと、シェルと連携する便利なものが多いです。
このようなシェルと親和性の高さがvimの魅力の一つですので、ぜひ使ってみてください。

参考リンク