首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >语法突出显示规则,用于突出显示Lisp函数调用中的函数引用

语法突出显示规则,用于突出显示Lisp函数调用中的函数引用
EN

Stack Overflow用户
提问于 2019-05-21 21:36:12
回答 1查看 118关注 0票数 1

我正在为Clojure或另一种Lisp编写一个语法来突出显示Vim中的规则,在这种语言中,(fn ...)主要出现在函数调用中。我只想突出显示函数调用的第一个单词,即函数引用。下面是我所处位置的演示:

如您所见,函数调用中的第一个单词((str a b c d)中的str)被突出显示。但是,文字列表中的第一个元素('(1 2 3)中的1)也会突出显示,这是无意的。需要强调的是,两个文字列表都突出显示了它们的第一个元素,这是错误的。

下面是执行此突出显示的语法规则:

syn match lispFunc "'\{0}\((\)\@<=\<.\{-1,}\>?\{0,1}"

下面是我对这条规则的理解:

  • '\{0}:字符必须与0匹配,但不能与一个单词匹配( '和captured;
  • \<.\{-1,}\>:表示word);
  • ?\{0,1}:的开始和结束如果单词末尾有?字符,则认为它是单词的一部分:例如,图片中突出显示的? in list?

我已经做了相当多的实验,但我似乎不能让前两个子规则一起工作。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56239544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档