我尝试用
dog
复制 yiw
并使用 cat
和 di"
替换为 P
。
问题是,当我使用
di"
时,它会覆盖 dog
缓冲区。
起点:
dog
debugPrint("cat");
debugPrint("cat");
debugPrint("cat");
debugPrint("cat");
预期结果:
dog
debugPrint("dog");
debugPrint("dog");
debugPrint("dog");
debugPrint("dog");
我设法使用此方法获得预期结果(但我发现它太复杂而无法重复):
复制
dog
注册 a
: "ayiw
然后使用 cat
替换 di"
并粘贴为 "aP
。
我建议使用
:%s
将猫替换为狗,因为 di"
然后 P
需要太多时间。
:%s/cat/dog/
其实你可以使用黑洞寄存器(
"_
)。
- 黑洞寄存器“_
当写入该寄存器时,没有任何反应。这可以用来删除 文本而不影响正常寄存器。当读取该寄存器时, 什么都没有返回。
你需要做什么:
yiw
- 猛拉内心的词。"_di"P
"_
表示黑色寄存器。di"
表示“d”elete、“i”nside、引号P
表示将寄存器值放在光标前如果第二步中有超过 3 行,这里有一个更快的方法:
qa"_di"Pjq
,然后3@a
:
qa
用于将宏录制到寄存器 a 中。"_di"P"
与第二步相同。q
用于停止录制。3@a
用于执行寄存器内容three
(无论你想要什么)次。