这里有一份中文的入门文档,但是太长了,不想读,所以有本文

 

  1. 最快的办法,就是找一个语法相近的语法高亮文件,稍微改一下
  2. 自己从头写的话,首先搞定关键字:

          

syntax case match "是否区分大小写
syntax keyword 你的关键字类别名字x   关键字1 关键字2
syntax keyword 同样填x的话,不会覆盖,只追加   关键字3 关键字4

关键字搞不定的,一般用正则匹配:

syntax match 类别名  /正则表达式/

正则有个麻烦是不能部分匹配,比如我要匹配花括号前的,/[a-zA-Z_]+\s{/, Vim的语法高亮没有匹配组的概念,没法只高亮前面的字串,导致花括号也染色了。

这种情况下,需要用到嵌套识别,一般是region里嵌套keyword和match,也可以match里嵌套match。例如:

syntax keyword spTodo       contained TODO FIXME XXX
syntax cluster spCommentGrp contains=spTodo
syntax region  spComment start="//" skip="\\$" end="$" keepend contains=@spCommentGrp

通过contains关键字,指定这个区域包含了哪些语法单位。

相关文章:

  • 2021-09-20
  • 2021-12-24
  • 2021-12-24
  • 2022-12-23
  • 2021-11-20
  • 2021-10-03
  • 2022-12-23
  • 2022-02-28
猜你喜欢
  • 2021-07-11
  • 2021-09-04
  • 2021-07-28
  • 2022-03-04
  • 2022-12-23
  • 2022-12-23
  • 2021-12-11
相关资源
相似解决方案