(add-hook 'python-mode-hook
(lambda ()
(font-lock-add-keywords nil
'(
("Custom\\|CustomDataChanged" . 'the-keywords-face)
("CycleOffset\\|Cycle" . 'the-keywords-face)
)
)
)
)
在这个简单的设置中,如果关键字列表内,靠后的关键字包含靠前的关键字,比如
("Custom\\|CustomDataChanged" . 'the-keywords-face)
中,CustomDataChanged 靠后,包含靠前的 Custom,在高亮时就会出现不完整高亮的现象
反之,如果关键字列表内,靠前的关键字包含靠后的关键字,比如
("CycleOffset\\|Cycle" . 'the-keywords-face)
CycleOffset 靠前,包含靠后的 Cycle,在高亮时就会显示正常的预期效果
所以很想知道, font-lock-add-keywords 是否可以设置扫描关键字的顺序,逆向扫描!
因为我在制作这些关键字的时候,量比较大,所以使用批处理脚本,已经设置好了排序。用于适配 vim、sublime 等不同的文本编辑器在不同场景使用。到了 emacs 这,遇到这个似乎是关键字顺序的问题!
另外,font-lock-add-keywords 的关键字位置,只能是带引号的字符串常量吗?可不可以是一个从外部文件加载的变量序列?如果可以,关键字的位置,应该如何写?