【发布时间】:2014-07-08 02:14:30
【问题描述】:
自从我安装了 emacs24 后,我的配置文件中的一些微小的无关紧要的部分就停止了工作。因为我并不真正关心这个错误并且它不会影响我我只想让 Emacs 关闭初始化警告并打开暂存缓冲区(因为它打开了带有一些错误内容的第二个缓冲区)。
有没有办法做到这一点,而不必花几个小时来调试我不懂的 lisp 代码?
我真的不能发布配置文件,因为它真的很大而且很乱,但这是我得到的警告:
警告(初始化):加载`/home/sofia/.emacs'时出错:
Symbol的函数定义为void:plist-to-alist
为确保正常运行,您应该调查并删除 初始化文件中的错误原因。启动 Emacs `--debug-init' 选项来查看完整的错误回溯。
简而言之,我不想保证正常运行,我只想要打开emacs时的一个缓冲区
【问题讨论】:
-
这不会直接回答你的问题,但我认为this other answer 解释了如何修复错误而不是忽略它。
-
+1 修复或删除错误,而不是忽略或屏蔽它。一个好的程序员应该为他们的工具感到自豪。回溯的最高级别应该将您指向
.emacs中的违规行 - 然后,如果您不想投资修复,您可以删除包含的 sexp。 -
谢谢,解决了这个特殊问题,但总的来说,是的,这不是答案。我想摆脱那些警告,它经常发生,我真的不想每次发生时都坐下来修复 elisp 代码。
-
您永远无法保证您现有的配置将与 Emacs 的新版本 100% 兼容,因此如果您无法解决配置问题,那么升级 Emacs 就会有风险。我强烈建议您恢复到您的配置工作的 Emacs 版本,而不是使用损坏的配置运行。推迟升级,直到您有时间解决问题。
-
没有人提到明显的——即,在源文件中搜索术语
plist-to-alist,你会确切地看到问题出在哪里——包含该函数定义的库尚未加载,或者该功能不再存在。 Carl Groner 上面的链接也提供了一个自己创建缺失函数的解决方案。