如果我使用现有的面孔定义字体锁定关键字,则可以突出显示字符串'foo'。
(defconst my-mode-font-lock-keywords
(list
(cons "foo" 'font-lock-type-face)))
(define-derived-mode my-mode fundamental-mode "My mode"
"A demo mode."
(set (make-local-variable 'font-lock-defaults) '(my-mode-font-lock-keywords)))
这正确地突出显示:
但是,如果我定义自己的脸:
(defface my-mode-foo-face
'((t :inherit font-lock-preprocessor-face))
"Face for highlighting 'foo'.")
(defconst my-mode-font-lock-keywords
(list
(cons "foo" 'my-mode-foo-face)))
(define-derived-mode my-mode fundamental-mode "My mode"
"A demo mode."
(set (make-local-variable 'font-lock-defaults) '(my-mode-font-lock-keywords)))
没有应用突出显示:
如何font-lock-defaults
定义自己的面孔?
(cons "foo" ''my-mode-foo-face))
也可以,但是我不确定哪个是惯用的。