在vimrc中使用iab时出错

Dee*_*pak 0 vim

我需要转换

for(int 为了 (int

自动在我的vim编辑器中.

所以我在我的vimrc中写了以下语句

iab for(int    for (int
Run Code Online (Sandbox Code Playgroud)

但它给出了以下错误

line  158:
E474: Invalid argument
Run Code Online (Sandbox Code Playgroud)

这个错误的原因是什么?

另外,我如何编写将转换的一般语句

 for(int to for (int
 for(;; to for (;;  etc...
Run Code Online (Sandbox Code Playgroud)

Chr*_*ndt 5

缩写有3种类型:

  • full-id缩写仅包含'iskeyword'字符.
  • end-id缩写以'iskeyword'字符结尾,但所有其他字符不是关键字字符
  • non-id缩写以非关键字字符结尾,其他字符可以是任何类型(不包括空格).

(从帮助中:h abbreviations,帮助中的每种类型都有示例).

这些类型都不是for(int.所以这不能用作缩写.理论上你可以调整iskeyword设置以使其有效,但这很可能会产生其他非预期后果,这些后果会带来更多弊大于利.

请参阅帮助:h 'iskeyword'以获取关键字设置的说明.