我只知道使用寄存器的一个实例是通过CtrlR*,从中我从剪贴板粘贴文本。

寄存器的其他用途是什么?如何使用它们?

你所知道的关于VI寄存器的一切(让我们关注VI 7.2)——分享给我们。


当前回答

Q5记录编辑到寄存器5(下一个q停止记录) :reg显示所有寄存器和其中的任何内容 @5执行注册5宏(已录制的编辑)

其他回答

一个被忽视的寄存器是'。'点寄存器,它包含最后插入的文本,无论它是如何插入的,例如ct](更改直到])。然后你意识到你需要将它插入到其他地方,但不能使用点重复方法。

 :reg .
 :%s/fred/<C-R>./

我使用默认寄存器在我的vim窗口中为文本grep,而不必伸手去拿鼠标。

把文本 :!grep " < CTRL-R > 0 " < CR >

Vim中的寄存器允许您对存储在其中的文本运行操作或命令。要访问寄存器,在命令前键入“a”,其中a是寄存器的名称。如果你想把当前的行复制到寄存器k中,你可以输入

"kyy

或者你也可以使用大写字母来添加到寄存器中

"Kyy

然后,您可以使用

"kp

从Linux上的系统剪贴板粘贴

"+p

从Windows上的系统剪贴板粘贴(或从Linux上的“鼠标突出显示”剪贴板粘贴)

"*p

访问当前定义的所有寄存器类型

:reg

我最喜欢的特性是能够使用大写字母追加到寄存器中。例如,假设您想要将导入的一个子集从缓冲区X移动到缓冲区Y。

到缓冲区X中的x1行。 输入“ayy”以将寄存器a替换为行x1的内容。 到第x5行。 输入“Ayy(大写A)以在寄存器A的末尾追加行x5。 转到缓冲区Y,输入“ap”进行粘贴

<content of line x1>
<content of line x5>

Q5记录编辑到寄存器5(下一个q停止记录) :reg显示所有寄存器和其中的任何内容 @5执行注册5宏(已录制的编辑)