emacs如何定制语法高亮?

Emacs高亮的token看起来远远少于vscode. 比如在Python代码里函数调用、函数参数、模块名和类的引用都没有高亮。请问怎么样能够打开这些高亮?我在用doom emacs. 谢谢!

可以试试 https://github.com/emacs-tree-sitter/elisp-tree-sitter (会稍微慢点)

参考 有没有支持 lsp-mode 语义高亮的主题?

doom Emacs 的话只要打开 lsp semantic token mode 就行了,问题在于可能主题对这个的支持不好,需要自己配高亮或者换主题。

效果对比(图中的宏是灰色是因为没有 define 这个东西,如果 define 了的话会有高亮的):

谢谢,搜索了一圈,看来有个PR已经在加了:https://github.com/doomemacs/doomemacs/pull/5401 目前用这个帖子:Use elisp-tree-sitter for Highlighting in Doom Emacs – Hung-Yi’s Journal 启动速度慢了

为什么会慢一点呢?原理上不是应该比基于正则表达式的渲染快吗?

1 个赞

我实际体验是这样的(移动光标很明显),是不是因为两个叠加我不清楚(没研究过)