我正在为 Emacs 开发一种模式,每次切换到它的缓冲区时,viper 都会打开。我已经修改了 viper-mode 以跟踪调用 viper-mode 的位置,并且令人惊讶的是set-viper-state-in-major-mode是通过运行viper-post-command-hooks调用的,设置为 nil。知道发生了什么吗?
谢谢!
编辑:为了众生的利益,这是我发现的:按照 Trey 的指示,我使用 -Q 启动了 emacs 并手动加载了 viper 和我的包。由于我可以重现该错误,因此问题出在其中一个软件包上。在逐行过滤之后,我发现看似无害的(kill-all-local-variables)导致了问题。