我正在用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
你从2dw
和d2w
得到相同的结果,但是两个2
有不同的含义,理解数字的作用是可以的。你可以结合计数和运动,如2d3w
。
数字命令运动可以在所有命令上使用,但数字运动只能在少数命令上使用。
最重要的是重复动作(.)重做前一个动作。
的例子:
2dd
-> .
= 2dd
-> dd
d2d
-> .
= d2d
-> d2d