我想为 python-mode
制定派生模式以添加自定义关键字和颜色。因此,我重述了定义关键字面孔的代码的一部分,并添加了我自己的关键字。
如果我使用已经存在的面孔,则可以正常工作。但是我想使用自定义面孔,以便在其他面孔的同时不会改变颜色。我搜索如何定义面部并以此为最终:
(defface printr-face
'((t :foreground "red" :weight bold))
"Face for printr function"
:group 'python-print-color-faces)
我尝试应用它的代码部分(在变量" python-font-lock-keywords"中(看起来像这样:
(,(rx symbol-start (or "printr") symbol-end) . printr-face)
当我使用时,printr-face
确实出现在列表中 M-x list-faces-display
。
但是没有脸部。M-x describe-face
将其视为默认。
我在做什么错?我如何使用新定义的脸?
在新关键字中添加新面孔时,您也需要添加关键字:
(font-lock-add-keywords
'my-mode
'(("regex1" 1 'my-face1)
("regex2" 1 'my-face2))
1)
Choroba在右边。我也错过了defface中的括号:
(defface printr-face `((t (:foreground "red" :weight bold))) "Face for printr function"
:group 'python-print-color)
(我忘记封装了:地面:重量(
然后
(font-lock-add-keywords
'python-print-color-mode
'(("printr" . 'printr)
("printg" . 'printg)))
请注意,我必须使用"。而不是" 1"使其起作用。不知道" 1"应该做什么,但对我不起作用。