EDITED 2: 这个问题已经得到回答,但尚未完成,@vpit3833提供的解决方案正是我需要的。因此,请这样调用emacs:emacs -nw --no-site-file
。这将抑制错误消息,并且仍然会调用.emacs
。然而,我仍然无法找到错误的原因。有什么建议吗?但这次不是悬赏。
EDITED 1: 我对这个问题设置了一个悬赏,希望有人可以解决这个问题。因为当我启动Emacs时,必须手动加载文件.emacs
,这相当令人烦恼。
我使用的是Emacs原生Windows应用程序。它运行得很好。但现在它不会读取我的.emacs
,并且总是显示错误消息:
if: Wrong number of arguments: #[(type level message &rest args) "ÄÅÆ ##" [type message args level display-warning apply format] 6 ("c:/Development/Tools/emacs-23.2/lisp/emacs-lisp/warnings.elc" . 8481)], 2
一切似乎都运行正常。但在安装Emacs W32和Ergo Emacs后卸载它们之后,现在Emacs原生Windows应用程序显示了这个错误。
出了什么问题?
emacs --debug-init
和emacs --debug-init -q
?堆栈跟踪应该指向有问题的地方。 - vpit3833if: 参数数量错误:#[(type level message &rest args) "ÄÅÆ ##" [type message args level display-warning apply format] 6 ("c:/Development/Tools/emacs-23.2/lisp/emacs-lisp/warnings.elc" . 8481)], 2
- swdevemacs --debug-init
,那么很可能是因为您的~/.emacs
或~/.emacs.d/init.el
中存在一个未正确格式化的if
语句。您是否会在emacs --debug-init -q
中得到不同的错误消息? - vpit3833if
。如果在你的 ~/.emacs 中添加(setq inhibit-default-init t)
后停止出现错误信息,那么你需要找到并修复 default.el 中的有问题代码。或者,在极少数情况下,如果它(有问题的if
)在 site-start.el 中,请修复该文件(如果使用emacs --no-site-file
命令启动可以停止错误)。在这两种情况下,我不知道 Windows 系统上这些文件的路径。 - vpit3833