我正在对SLIME进行小修改,这样我就可以从Lisp获取所有当前加载的符号,分析它们并使字体锁定为它们.
我设法完成了所有这些步骤,但是我遇到了一个小问题 - 当字体锁中的关键字列表发生更改时,缓冲区不会更新,除非您重新启动主要的lisp-mode.每次更新关键字时我都不想重新启动lisp-mode,因为我在lisp-mode上有几个挂钩,我想在第一次加载文件时运行它.
有没有其他方法来更新font-lock所以它会读取所有新关键字并相应地为缓冲区提供信息?关闭字体锁定和使用font-lock-fontify-buffer
不起作用.
UPD:增加赏金 - 问题依然存在.我需要一种方法来重新加载font-lock关键字而无需重新加载主模式.
好的,相反如何:
(defun my-font-lock-restart () (interactive) (setq font-lock-mode-major-mode nil) (font-lock-fontify-buffer))