我希望在Emacs中为全局变量添加语法着色,定义函数中的局部变量。
例如,局部变量为绿色,全局变量为橙色,定义为蓝色,如下图所示:
答案 0 :(得分:5)
简短的回答是 - 你做不到。
Emacs突出显示正则表达式,而不是语法分析。
例如,foo_t
被突出显示为一种类型,因为_t
后缀(在{regexp中明确提到int
等)。
要做得更好emacs
必须解析C语法(过于昂贵)或与C编译器(clang
对话,因为gcc
不会显示其解析树。)
参见,例如,
这些谈论完成,但他们使用您需要的相同工具,您可以相对容易地扩展它们以满足您的需要。