Vim:如何选择一个矩形区域并粘贴一个字符串

Lio*_*nry 2 vim

我想用一个猛拉的单个字符串替换一个矩形区域(而不是另一个矩形区域).

例如,拉动字符串"foobar",选择下表的数字字符并将字符串粘贴到矩形区域上.

poum 123 pam
poum 456 pam
poum 789 pam
Run Code Online (Sandbox Code Playgroud)

哪个会产生这个输出:

poum foobar pam
poum foobar pam
poum foobar pam
Run Code Online (Sandbox Code Playgroud)

BBedit有这个功能,我发现它非常方便.我发现用Vi执行此操作的唯一方法是将字符串拉入给定的寄存器(比如寄存器"a"),选择区域,删除它,使用重新选择它gv,最后使用 I ctrl - 粘贴字符串r a esc .

我正在寻找一种更简单的方法来做到这一点.例如,选择区域,粘贴字符串.它应该像将矩形区域粘贴到另一个矩形区域一样简单(此处描述的操作:Vim:如何选择矩形区域并进行复制/粘贴).

Kev*_*vin 5

拉出要粘贴的字符串.选择要替换的区域(使用Ctrl+ v).按c切除区域并进入插入模式,然后按Ctrl+ r然后0(零)粘贴寄存器0的内容(因为您剪切的文本进入"),最后Esc退出插入模式.或者明确地"ay从一个特定的寄存器中拉出()并从那个(Ctrl+ r a)粘贴.