Emacs 字体锁定模式:提供自定义颜色而不是面

Posted

技术标签:

【中文标题】Emacs 字体锁定模式:提供自定义颜色而不是面【英文标题】:Emacs font lock mode: provide a custom color instead of a face 【发布时间】:2011-09-09 15:35:28 【问题描述】:

在this page discussing font lock mode 上,提供了一个突出显示自定义模式的示例:

 (add-hook 'c-mode-hook
           (lambda ()
            (font-lock-add-keywords nil
             '(("\\<\\(FIXME\\):" 1 font-lock-warning-face t)))))

有没有办法提供自定义颜色来代替font-lock-warning-face而不定义新的自定义面。我希望能够写出类似的东西:

(font-lock-add-keywords nil '(("\\<\\(FIXME\\):" 1 "Blue" t)))

或 RGB 颜色定义:

(font-lock-add-keywords nil '(("\\<\\(FIXME\\):" 1 "#F0F0F0" t)))

使用双引号不起作用。你知道什么让它发挥作用吗?

【问题讨论】:

【参考方案1】:
(font-lock-add-keywords nil '(("\\<\\(FIXME\\):" 1 '(:foreground "blue") t)))
(font-lock-add-keywords nil '(("\\<\\(FIXME\\):" 1 '(:foreground "#F0F0F0") t)))

完整的属性列表在manual 中。

【讨论】:

感谢您简洁明了的回答,我应该知道的。 nschum,如何为脸部添加更多属性,例如使其变粗?我尝试了类似的方法: (font-lock-add-keywords nil '(("\\ 您的方法是正确的,但 :bold 不是有效的文本属性。试试 :weight 并查看链接了解更多详情。

以上是关于Emacs 字体锁定模式:提供自定义颜色而不是面的主要内容,如果未能解决你的问题,请参考以下文章

Emacs:字体锁定解释

如何更改 Python 文档字符串的 Emacs 字体?

在 Flutter 包中使用自定义图标字体显示问号而不是自定义图标

设置 Emacs 默认字体 par-buffer/mode

在 Emacs 中获取光标下的字体

我可以自定义 Android 默认提供的 TimePicker 或 DatePicker 吗?