在Vim中,为什么在yank后V会选择更多的行?

5
第一次使用2V时,Vim会选择2行作为可视块,这是我所期望的。当我清除选择并再次使用2V时,它会再次选择2行。很酷。
但是,当我使用2V,然后用y复制后,下一个2V将选择4行。如果我不断在2V和y之间切换,那么每次2V都会使选定的行数加倍。
为什么会发生这种情况?我认为这与寄存器有关,但我找不到直接的答案...为什么寄存器的内容会影响V呢?
1个回答

3
这是vim中的特殊操作行为。在帮助文档中有详细说明:
如果未激活Visual模式,并且在“v”、“V”或CTRL-V之前出现一个计数,则使用先前突出显示区域的大小作为起点。然后您可以移动突出显示区域的结尾并施加操作符。以前区域的类型(字符、行或块)将被使用。
行选择Visual模式:行数将乘以计数。

1
这在部分 :h visual-start 中,然后搜索计数。 - FDinoff
谢谢,这肯定是答案。我想如果我想对特定数量的行执行操作(例如3Y而不是3Vy),我应该避免使用可视模式。 - Daniel

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