4

我在自定义语法文件中有这些规则。

syn match id '\w\+'
syn keyword _type void int bool string list nextgroup=id

我只想id_type.

4

1 回答 1

7

你已经很接近了。

  • 为避免id组与其他任何地方匹配,只需添加contained.
  • 对于nextgroup=...,匹配必须在当前组结束之后开始。因此,您需要在id组 match:\s\+或 add中包含前导空格skipwhite
  • 语法组的命名约定是在它们前面加上您的语法名称;我my...这里用过。
:syn match myId '\w\+' contained
:syn keyword myType void int bool string list nextgroup=myId skipwhite
于 2013-04-26T07:20:39.057 回答