0
突出显示函数调用但不是第一个引用列表在emacs lisp模式下,我想要突出显示所有函数调用一种颜色,并且所有引用符号都是另一种颜色。例如,在(foo 1 2 'bar)
中,foo应该突出显示颜色1,'bar应该突出显示颜色2.emacs
我能够用下面的代码执行此操作,但是,它也突出显示列表中的第一个符号列表被引用。例如,在'(nil a b c)
中,零应该而不是被突出显示为一个函数调用,并且该列表中的所有项目应该高亮显示为带引号的符号(颜色2)。
(defface font-lock-func-face
'((nil (:foreground "#6fc2ef"))
(t (:bold t :italic t)))
"Font Lock mode face used for function calls."
:group 'font-lock-highlighting-faces)
(defface font-lock-quoted-face
'((nil (:foreground "#e1a3ee"))
(t (:bold t :italic t)))
"Font Lock mode face used for function calls."
:group 'font-lock-highlighting-faces)
(font-lock-add-keywords
'emacs-lisp-mode
'(("(\\s-*\\(\\_<\\(?:\\sw\\|\\s_\\)+\\)\\_>"
1 'font-lock-func-face)))
(font-lock-add-keywords
'emacs-lisp-mode
'(("'[-a-zA-Z_][-a-zA-Z0-9_]*\\>" 0 'font-lock-quoted-face)))
还有什么,我期待在这里的形象:答案http://imgur.com/Iluku05
谢谢,这正是我需要:) –