首页 > 解决方案 > Vim 复制一个块并粘贴到多行

问题描述

我知道我可以yy在第 1 行,然后视觉选择第 4 行和第 5 行2pVim 复制一行并将其粘贴到多行)。

1 COPY THIS
2
3
4 HERE
5 HERE

所以我得到:

1 COPY THIS
2
3
4 COPY THIS
5 COPY THIS

但是,假设我只想复制。如果我视觉块选择 COPY 然后2p在第 4 行和第 5 行上选择视觉对象

1 COPY THIS
2
3
4 COPYCOPY
5 

如何在每行粘贴 1x?喜欢:

1 COPY THIS
2
3
4 COPY
5 COPY

标签: linuxmacosvimmacvim

解决方案


您可以修改寄存器"(未命名)以包含换行符,但此时创建新行很可能更容易,将您的内容粘贴到其中并dd再次粘贴。

v
l (or other moving chars to mark the area you want)
y
:let @" = @" . "\n"
2p

有关进一步的想法,请参见此线程


推荐阅读