无法在 Emacs24 中加载 viper-mode

无法在 Emacs24 中加载 viper-mode

每次我尝试使用 Emacs24 加载 viper-mode 时M-x viper-mode,都会出现错误

Wrong type argument: symbolp, (quote 3)

我观察到,当我尝试在打开 Emacs 后加载 viper-mode 时,或者在我发出M-x viper-go-away

因此,一旦我收到此错误并再次运行相同的命令,viper-mode 就会成功加载。

当我使用 toggle-viper-mode 关闭它时,viper-mode 成功消失。但是当我尝试toggle-viper-mode再次使用它将其重新打开时,我得到了上述错误。我必须使用viper-go-away然后M-x viper-mode两次才能让它恢复工作。

我怎样才能消除这个错误?

答案1

在...的帮助下弗兰评论,我能够解决这个问题。

我将其放入(setq debug-on-error t)暂存文件中并对其进行了评估。然后我加载了 viper-mode。我得到了 14 行输出。相关部分是

调试器进入--Lisp 错误:(错误类型参数符号 p(引用 3))
(setq viper-expert-level(引用 3)(引用 3)(引用 3)(引用 3)(引用 3)(引用 3)(引用 5)(引用 3)(引用 3)(引用 3)(引用 3)(引用 5)(引用 3)(引用 3)(引用 3))
eval-buffer(# nil "/Users/andy/.viper" nil t) ; 在缓冲区位置 60 读取
load-with-code-conversion("/Users/andy/.viper" "/Users/andy/.viper" nil nil) load("~/.viper")

我不知道主目录中有一个 .viper 文件。不知什么原因,它的第一行是

(setq viper-expert-level '3 '3 '3 '3 '3 '5 '3 '3 '3 '5 '3)
(setq viper-inhibit-startup-message 't)

我编辑了第一行,问题就解决了:

(setq viper-expert-level'3)

相关内容