EMACS,函数调用高亮显示

Mar*_*zzo 1 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)))
Run Code Online (Sandbox Code Playgroud)

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

在此输入图像描述

Dmi*_*try 10

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

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

结果:

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