数字命令运动和命令数字运动的区别是什么?



我正在用vimtutor学习vim。我想知道command motion number和number command motion之间是否有区别。例如:在我看来,2dw的工作方式与d2w完全相同,2dd的工作方式与d2d相同。

这两个数字都称为[count],在您的示例中,实际上,它们做同样的工作。但这两种计数来自不同的概念。

[count]command

这将执行[count]命令两次,2dd执行dd命令两次;2dw执行dw两次。

第二个是来自{motion}, 2w, 2j等。

如果你想看到一些不同,这里有两个我能想到的:

  • 部分命令不支持{motion}。例如,X,您按下2X,将删除光标前的2个字符。但是,您不能执行X{motion}。其他不支持{motion}p (paste)s等的命令。你可以做2p, 2s,但你不能做p2w s3w

你从2dwd2w得到相同的结果,但是两个2有不同的含义,理解数字的作用是可以的。你可以结合计数和运动,如2d3w

数字命令运动可以在所有命令上使用,但数字运动只能在少数命令上使用。

最重要的是重复动作(.)重做前一个动作。

的例子:

2dd -> . = 2dd -> dd

d2d -> . = d2d -> d2d

通常,我建议使用第一个命令。因为它更容易重复

最新更新