这是困扰我很长时间的事情,但是我从来没有四处询问。说您缓冲区中的文本如下所示:

Hello
World


如果将光标放在第2行的某个位置,然后执行yk,则光标将在第1行结束。似乎暗示操作员加一个动作也会移动光标。但是,如果我从第1行开始并执行yj,则光标将停留在同一位置。许多键也会发生相同的不一致。这是预期的并且有据可查吗?有这个名字吗?可以覆盖吗?

一般而言,似乎“向后移动,不向前移动”,但是有没有办法确定操作员+动作是否会移动光标?

评论

y是运算符,而不是命令。

#1 楼

:h operator开始


应用运算符后,光标通常留在要操作的文本
的开头。例如,“ yfe”不会移动光标,但是“ yFe”
会将光标向左移动到开始拉动的“ e”。


光标正在移动到文本对象的开头。启用可视模式将使其更加明显。您可以认为它是在操作文本之前被选中的。使用vby来了解我的意思。