我正在尝试更改预处理程序指令#define
和#include
的默认字体,而不使用font-lock-preprocessor-face
。
相反,我想使用font-lock-add-keywords
方法和正则表达式。
我也希望这只适用于汇编和C模式。
答案 0 :(得分:1)
如果你想要的话,你不应该采取这些措施
为font-lock-preprocessor-face
重新定义c-mode
。
原因是font-lock已经使用正则表达式了
已经慢了现在你要解析完全相同的来源
第二次使用完全相同的正则表达式。
我曾经使用一些自定义正则表达式来为C ++做出贡献,但是将其关闭了 一年之后,因为它让我放慢了速度。
您可以通过打开50k来源来检查它的速度有多慢
并且多次使用 C-v 。
现在再试一次find-file-literally
- 这很好。
请改为:
(make-face 'c-preprocessor-face)
(set-face-background 'c-preprocessor-face "blue")
(set-face-foreground 'c-preprocessor-face "yellow")
(add-hook 'asm-mode-hook
(lambda ()
(set (make-local-variable
'font-lock-comment-face)
'c-preprocessor-face)))
(add-hook 'c-mode-hook
(lambda()
(set (make-local-variable
'c-preprocessor-face-name)
'c-preprocessor-face)))
答案 1 :(得分:0)
您是否看过我之前的问题comment
和answer
,这与当前主题基本相同?