vimのreadコマンドベンリ

readコマンドを使うと,標準出力の内容をvimに取り込むことができる.
readコマンドは標準出力の内容を現在行の下に取り込むコマンドだ.

例えば,以下のようなディレクトリ構成があるとする.

blog/
 ├ hoge.md
 ├ hoge1.md
 ├ hoge2.md
 ├ hoge3.md
 ├ hogehoge.md
 ├ foo.md
 └ bar.md

hoge.mdを書いていてこのディレクトリの内容を記述する必要がある.
ただ,いちいち書いていくのはあまりにもめんどうだ.
その時は以下のコマンドを打てばいい.

:read !ls

場合によっては

:read !ls %:h

とする必要があるかもしれない.

するとreadコマンドによって現在行の下に

hoge.md
hoge1.md
hoge2.md
hoge3.md
hogehoge.md
foo.md
bar.md

と出力される.

ベンリだ.

また,ちょっとしたワンライナーを実行してその結果をそのまま取り込むことができる.

:read !ruby -e 'puts "hello ビムゥ"'

現在行の下にビムゥが出現.
ベンリ.