如何在多行上粘贴东西?
我正在努力达到以下目的: 在现有文本中,我可以< C-v> jjjjj< S-I> HelloWorld< CR> 将HelloWorld插入5行
但我没有输入HelloWorld,而是想从寄存器中获取文本。 我想首先猛拉HelloWorld,然后将它插入5行。
答案 0 :(得分:20)
当您处于插入模式时,可以按Ctrl-R
,然后按下要粘贴的缓冲区的字母。然后像往常一样按Escape,它将正常插入块。
答案 1 :(得分:6)
假设您在vim缓冲区中有以下内容:
1| Do the dishes
2| Get milk
3| Take out the trash
并且您希望在每行的开头插入[ ]
,以便它变为:
1| [ ] Do the dishes
2| [ ] Get milk
3| [ ] Take out the trash
CTRL + V
(区块选择)j
两次(到第三行)。现在选择第一,第二和第三列的第一列I
(shift + i - capital“i”) - 这是“阻止插入模式”[ ]
esc
(转义)答案 2 :(得分:3)
您可以使用宏来执行此操作,例如qq0Pjq4@q
qq
启动一个名为q
0
转到该行的开头,P
在光标前粘贴已拉出的内容
j
向下移动一行,q
结束宏
4@q
重复q
宏4次