選択範囲に一括ペーストできる fitpaste-vim 書いた

Vimでは[ctrl-v]のブロック選択からI、またはAを入力することによって、選択列の先頭もしくは末尾にテキストを一括入力することができます。

[ctrl-v]でブロック選択して、 Iでテキスト入力。 [esc]で抜けると、一括挿入!

f:id:ryochack:20130130214329g:plain

これがとても便利で、よく活用しています。
では、これと同じことをペーストでやってみましょう。

貼り付けるテキストをヤンク。
[ctrl-v]でブロック選択して、 Pでペースト!

f:id:ryochack:20130130214437g:plain

あれ?なんだかおもったのとちがう…。

もっとね、こんな風になるのを期待しちゃうわけですよ。

f:id:ryochack:20130130214522g:plain


ブロック選択していようがいなかろうが、Vimのデフォルトのペースト動作ではレジスタの中身をそのまま出力します。 ペーストする内容を選択範囲に合わせてくれるなんてことはしてくれません。
でも、一括挿入と同じような感覚でペーストしたいなぁ…。

ということで、Vimプラグインを書いてみました。


一括ペーストプラグイン fitpaste

https://github.com/ryochack/fitpaste-vim

このプラグインを使うことで一括ペーストが可能になります。


貼り付けるテキストをヤンク。
[ctrl-v]でブロック選択して、 iで挿入ペースト!

f:id:ryochack:20130130214542g:plain

できた!

ちなみに、aで追加ペースト、pで置換が行えます。
(キーマッピングは変更可能)

地味だけど、ずっと前から作りたかったプラグインなのでこれから重宝しそうです。