我有兴趣从VIM语法的角度来理解这一点:
操作的一般语法是(根据vimtutor):
operator [number] motion
但是,对于f
之类的某些运算符,语法为:
[number] f motion
我发现这很混乱,几乎每次都弄糟。有人可以从VIM语言的角度指出逻辑吗?
谢谢。
答案 0 :(得分:3)
在我眼中, f
不是操作员,而是动作:fx
将光标移动到{{1}的下一个外观}。
有关说明,请参见以下示例:
x
“删除查找x”会删除直到(包括下一个x)的所有内容dfx
删除到第5 x(包括)两个示例都遵循语法d5fx
:
operator [number] motion
运算符d
号5
动作以这种方式查看fx
命令可能会消除您的困惑。
动作通常用于移动光标。它们可以由运算符添加(另一个示例:f
移动到下面的行,j
将delete-operator 应用于下面的行,{{ 1}}进行了5次。
答案 1 :(得分:2)
f
不是运算符,因此没有理由假设它应该像运算符一样工作。
f
是一种运动……而且,正如预期的那样,它几乎像运动一样。
有关可用运算符的完整列表,请参见:help operator
,并查看:help f
所属的部分。