当emacs告诉我"文件模式规范错误"时,它是什么意思?

Che*_*eso 25 emacs

这是我见过的最无用的错误信息.

我认为它转化为......"错误".

来自*Messages *缓冲区的完整错误消息是:

File mode specification error: (wrong-type-argument characterp "string value here")
Run Code Online (Sandbox Code Playgroud)

我认为该消息的后半部分意味着emacs期待一个角色并获得一个字符串.

但是,当emacs告诉我"文件模式规范错误"时,我该如何诊断它意味着什么呢?以及如何缩小此错误的起源?

这两个错误(文件模式错误,期望字符和字符串)如何相关?

phi*_*ils 35

用于M-x toggle-debug-on-error RET在发生此(或任何)错误时进入调试器 - 假设这是一个正确的错误,而不仅仅是一条消息.这为你提供了堆栈跟踪,所以你可以找出导致它的原因,并从那里继续(可能使用edebug,一旦你确定要使用哪个功能,你就可以使用常规调试器).

标准调试器命令: M-: (info "(elisp) Debugger Commands") RET

调试lisp(包括edebug)的主要手动输入: M-: (info "(elisp) Debugging") RET

仅供参考,rgrep告诉我,NTEmacs 23.2.1的*.el文件中唯一的字符串"文件模式规范错误"出现在normal-mode函数定义中:
M-x find-function RET normal-mode RET