【发布时间】:2013-10-27 21:01:04
【问题描述】:
我刚刚开始使用 emacs 模式。我制作了一个派生模式(来自text-mode),它针对不同的情况进行简单的颜色修改。例如,一行全等号 (=) 上方的文本变为洋红色,这是使用代码完成的:
(make-face 'heading-face1)
(set-face-foreground 'heading-face1 "brightmagenta")
(set-face-attribute 'heading-face1 nil :weight 'ultra-bold)
(setq font-lock-heading-face1 'heading-face1)
(font-lock-add-keywords nil '(("\\(.*\n=\\{5,\\}.*\\)"
1 font-lock-heading-face1 prepend)))
当我第一次打开包含此类文本的文件时,它会被适当地着色;但是如果我添加一个额外的=,或者创建一个============= 的新行,它们就会变成正常的文本颜色。
其他字体锁做动态工作。例如,数字立即使用不同的颜色...
什么会导致模式与第一次打开文件时的动态匹配不同?
【问题讨论】:
标签: emacs syntax fonts customization mode