Vim:如何将可视块复制到寄存器中?

26

我可以通过"ayy命令将一行内容复制到寄存器a

但是我还没有找到一种方法,能够将选中的文本块复制到指定的寄存器。如果我只是按下y键来复制选中文本块,它会被存储在默认寄存器中。但是我需要将它存储在特定的寄存器中,这应该怎么做呢?

3个回答

49

这是相同的行为,但是您在可视选择后告诉寄存器。

举个例子:

在可视模式下选择一些文本并将其复制到寄存器a中:

V4j"ay

前往文件末尾:

G

然后将其粘贴:

"ap

那个有效。我尝试了很多组合,但不知怎么错过了这个。非常感谢。 - prat0318

14

我可以使用shift+vvap(读作:“visually select around paragraph”)选择一个块,然后使用"ay复制它。当我想要再次粘贴它时,我使用"ap"aP

这个对您有用吗?


它起作用了。谢谢。很遗憾我只能接受一个答案。 - prat0318
1
请注意,shift-Vvap 是按行/字符选择。Ctrl-V 进入块选择模式。 - Kent

4

下面

:help yank

你会发现
{Visual}["x]y           Yank the highlighted text [into register x] (for
                        {Visual} see |Visual-mode|).  {not in Vi}


{Visual}["x]Y           Yank the highlighted lines [into register x] (for
                        {Visual} see |Visual-mode|).  {not in Vi}

因此,首先在视觉上选择某些内容,然后使用" registername y进行注册。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接