我正在尝试覆盖org-mode
和org-agenda-mode
缓冲区中的默认语法突出显示。
为了澄清我的意图:我目前这样做的原因是根据标签突出显示标题(或标题的一部分)。内置变量org-tag-faces
只允许自定义标签本身,而不是包含标签的标题。
参考以下相关问题:
在线程 2 中,接受的答案是为此目的使用 font-lock。
在线程 3 中,我试图实现与海报完全相反的效果。Jordon Biondo的最后一条评论说:
从关键字中取出 t , t 指定的是 font-lock 应该覆盖已经着色的东西。
因为我想覆盖已经着色的东西,所以我在 t 中添加了,但据我所知,org-mode
突出显示仍然覆盖了我的自定义面孔。在org-mode
缓冲区中,这表现为标题文本的主体被更改,但任何其他项目(例如待办事项状态、日期、标签等)都保留了现有的面孔。在org-agenda-mode
缓冲区中,它完全无法修改匹配行的任何方面。
通过一个简单的例子,这里有一些代码我试图用来将包含 :TT: 的任何行设置为org-mode
缓冲区中的红色:
(add-hook 'org-mode-hook
(lambda ()
(font-lock-add-keywords
'org-mode
'(
("^.*:TT:.*$" 0 '(:foreground "#FF0000") t)
))))