我正在尝试改进Emacs突出显示Common Lisp,并且我坚持使用regexp方法突出显示font-lock使用的内容。正则表达式是不够的,因为我希望能够识别这种形式的结构如defun - 函数的参数列表的突出显示应该与bodys的突出显示不同,而不仅仅是全局搜索和突出显示。
那么,在Emacs本身或Internet的某个地方有没有替代字体锁?如果是这样,它们是否依据符号表达式运作?
答案 0 :(得分:7)
Emacs的字体锁匹配不限于regular-expression;你可以使用任何函数作为匹配器,只要它满足某些协议。有关详细信息,请查看变量font-lock-keywords
。
C-h v font-lock-keywords
答案 1 :(得分:2)
我认为,可以在Semantic(CEDET package的一部分)的基础上完成这样的事情 - 您可以从解析的缓冲区获取语法信息,并为不同类型的对象应用不同的颜色。虽然我现在不知道任何现有的实现