VIM语言语法

时间:2018-09-05 13:50:17

标签: vim macvim

我有兴趣从VIM语法的角度来理解这一点:

操作的一般语法是(根据vimtutor):

operator [number] motion

但是,对于f之类的某些运算符,语法为:

[number] f motion

我发现这很混乱,几乎每次都弄糟。有人可以从VIM语言的角度指出逻辑吗?

谢谢。

2 个答案:

答案 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所属的部分。