Vim 从当前拉到第 n 行,包括第 n 行

Vim yank from current to nth line including nth line

In vim nyy 将抽取 n 行。这意味着它将拉出所有行,包括当前行和第 (n-1) 行。是否有一个命令可以用来抽取所有行,包括当前行和第 n 行 -> 抽取 n+1 行?

如果可以,是否可以将 nyy 命令覆盖到 vimrc 中的此命令?

背景:我的编辑器设置为显示相对于我所在行的行号。这对于导航很方便,例如2j 将光标设置为带 2 的行。当我使用 2yy 时,它会拉出所有行,但带 2 的行除外,这每次都会让我失望。

请注意,您的屏幕截图不是 Vim 屏幕截图,这意味着您可能获得的关于 Vim 的任何建议在您使用的 Vim 模拟器中可能有效,也可能无效。

无论如何,2j2yy 中的 2 是一个 count,它会根据不同的类型产生不同的效果使用它的命令。

2j中,字面意思是“做j两次”,告诉Vim将光标向下移动两行。 2j是动议。

2yy中,它的字面意思是“在这一行和下一行上做yy”,它告诉Vim要抽取多少行,包括当前行。这意味着“每次都会绊倒你”的行为是完全正常的、一致的和意料之中的。

这不是你想要的。

Vim yank from current to nth line including nth line

您真正想要的是使用您已有的向下运动,2j,使用 y 运算符:y2j.

:help operator