EMACS,函数调用高亮显示

时间:2013-02-05 19:18:09

标签: emacs font-lock emacs-faces

(EMACS 24.2)我需要高亮度调用函数。我在网上找到了这个

(add-hook 'c-mode-hook (lambda ()
   (font-lock-add-keywords nil '(
      ("\\<\\(\\sw+\\) ?(" . 'font-lock-function-name-face))t)))

它有效,但它也突出了以下左括号。 我对正则表达式没有信心,请问,如何修改匹配字符串以避免括号突出显示?

enter image description here

1 个答案:

答案 0 :(得分:10)

正则表达式很好,你只需要突出显示匹配中的第一个组,而不是整个组。将. 'font-lock-function-name-face替换为1 'font-lock-function-name-face

要改变的另一件事,只是建议,font-lock-add-keywords接受模式名称作为第一个参数。所以你不需要使用钩子。

结果:

(font-lock-add-keywords
 'c-mode
 '(("\\<\\(\\sw+\\) ?(" 1 'font-lock-function-name-face)))