给定文本中的单词foo
,如果我ciwbar<ESC>
在将其记录为寄存器中的宏时w
键入,然后在命令行中键入
:<C-r>w
它会带给我:ciwbar^[
但是,如果我输入:<C-r>.
它只会带给我bar
@w
但是, and两个命令dot
都能够在我的文本的其他部分执行更改内部单词栏
w
当我得到寄存器时,有什么方法可以从点中获取所有内容?我想粘贴它并努力在一些步骤中自动执行宏中的最后一个命令
给定文本中的单词foo
,如果我ciwbar<ESC>
在将其记录为寄存器中的宏时w
键入,然后在命令行中键入
:<C-r>w
它会带给我:ciwbar^[
但是,如果我输入:<C-r>.
它只会带给我bar
@w
但是, and两个命令dot
都能够在我的文本的其他部分执行更改内部单词栏
w
当我得到寄存器时,有什么方法可以从点中获取所有内容?我想粘贴它并努力在一些步骤中自动执行宏中的最后一个命令
.
寄存器和命令.
不是一回事。.
寄存器存储您插入的最后一个文本,并且该命令.
重复您执行的最后一个非移动正常模式命令。
与其试图强迫它以另一种方式工作,为什么不调用不同的注册表并在其中存储值呢?注册表将.
被最后插入的文本覆盖,但许多其他注册表只有在您主动告诉 vim 时才会更改,因此您可以自己填写所需的确切按键并稍后再次调用它们。
类型
:reg
查看每个注册表中当前内容的列表
还可以看看这个解释 vim 寄存器的奇妙资源
https://www.brianstorti.com/vim-registers/