【发布时间】:2011-04-06 04:13:56
【问题描述】:
我需要一些 Emacs 语法高亮问题的帮助。我想设置所有 C/C++ 运算符的颜色。我遇到了麻烦,因为“/”用于除法(我想着色)但也用于启动 cmets(我不想自己着色,默认代码颜色很好。)我似乎不能弄清楚如何告诉 Emacs 在没有被任何其他正斜杠包围时只为单个正斜杠着色。
这就是我现在拥有的:
(add-hook 'c-mode-common-hook (lambda ()
(font-lock-add-keywords nil
'(("[<>:&*=+^%!~,.?;/-]" 0 font-lock-warning-face t)))
))
但它不会正确突出显示如下内容:
i = 1 / 2
// Test
i=1/2//test
当然,如果已经有一种方法可以为标点符号/运算符分配颜色/面,而我刚刚错过了,请告诉我!
【问题讨论】:
-
我认为运算符之间需要用 | 分隔。象征。如果你在
font-lock-add-keywords上执行describe-function,你会在示例中看到。 -
@vpit:正则表达式语法是可以的,
[和]列出了一组要匹配的字符,在这种情况下|符号没有特殊含义。
标签: regex emacs syntax-highlighting