在终端中调用时的Emacs错误

时间:2018-09-26 15:41:20

标签: macos emacs terminal

我刚刚在MacBook Pro上安装了emacs,但是当我在终端上投射“ emacs”时,会出现这种错误:

  

Emacs-x86_64-10_10 [5647:247335]无法初始化颜色列表取消存档:错误域= NSCocoaErrorDomain代码= 4864“ *-[NSKeyedUnarchiver _initForReadingFromData:error:throwLegacyExceptions:]:无法解码非存档存档通过NSKeyedUnarchiver“ UserInfo = {NSDebugDescription = * -[NSKeyedUnarchiver _initForReadingFromData:error:throwLegacyExceptions:]:NSKeyedUnarchiver无法解码非密钥存档}

然后emacs可以正确打开,但是由于此错误,我无法编译文件。

3 个答案:

答案 0 :(得分:10)

这是macOS Mojave上Emacs的已知错误。显然,Emacs一直在使用已弃用的API,现在将其删除。您可以在the "emacs-devel" mailing list上关注该线程。

答案 1 :(得分:8)

显然,只需删除

即可解决提到的here问题。
~/Library/Colors/Emacs.clr

下次运行Emacs时将重新创建此文件

编辑:但是,当您重新启动时,它再次出现

答案 2 :(得分:3)

谢谢,@ Fabrizio-Miano。我缺乏评论您答案的声誉,但它为我指明了正确的方向。我可以通过在init.el末尾添加一个简单的单行代码来抑制此错误。对于其他感兴趣的人,我刚刚添加了:

(delete-file "~/Library/Colors/Emacs.clr")

对于它的价值,我将其放在progn语句中,以便在加载主题之后发生。我不确定是否会有所作为,但这似乎是合乎逻辑的事情。也许不是理想的解决方案,但比等待emacs-26分支中的问题要好。