我正在使用emacs版本24.4.2。出于某种原因,我根本不能使用流浪汉。任何尝试这样做的尝试,即尝试键入/sudo::
都会导致应用程序暂停,然后在消息缓冲区中出现以下错误:
expand-file-name: Lisp nesting exceeds `max-lisp-eval-depth'
我该怎么做才能解决该错误或正确诊断错误?
更新:调试显示问题的来源是ido
。目前它设置如下:
(setq ido-everywhere t)
(ido-mode t)
(setq ido-enable-flex-matching t)
答案 0 :(得分:0)
将debug-on-error
设为非 - nil
。查看名为expand-file-name
的函数,产生错误。然后尝试M-x debug-on-entry F
,其中F
是该函数,并使用d
逐步调试调试器,看看会发生什么。在使用调试器时,查看在另一个窗口中定义该函数的代码。
您还可以首先尝试在没有init文件的情况下启动Emacs时是否会遇到相同的损坏行为:emacs -Q
。如果没有,则递归地将您的init文件一分为二,以找出它引入问题的部分。
我的水晶球在低声告诉我你已经建议一个功能,直接或间接地调用自己。