39

我有一行被拉出的文本yy。现在我想用这个文本来替换其他几个地方的行。麻烦的是,当我选择V要替换的行并粘贴p时,被选中的文本会被自动拉出!那是我不想要的。

更改寄存器不起作用,因为粘贴和拉动都是使用新选择的寄存器完成的。

粘贴选定文本时保留寄存器内容的命令是什么?

4

2 回答 2

40

您的原始选择应保留在寄存器中0。因此,您可以使用以下命令浏览文件并将您的拉线粘贴到其他行上:V"0p

于 2012-05-23T16:06:09.513 回答
33

每次您p超过某些内容时,它都会进入默认寄存器。

要解决此功能,您必须先使用"_“黑洞寄存器” p。这是我的自定义映射~/.vimrc

vnoremap <leader>p "_dP

它删除选定的内容并将其放入黑洞寄存器中(这意味着选定的文本将永远消失)并将默认寄存器的内容放置在先前选定的文本的位置,同时保持默认寄存器不变。

当我需要用另一个 looooooong url 替换几个地方的 loooooooong url 并且制作 as//太麻烦时,我经常使用它。

于 2012-05-23T16:08:04.907 回答