2

我正在使用从 repo 中签出的最新 nXhtml,并使用 GNU Emacs 版本 24.0.91.1。当我打开一个 PHP 文件时,它显示为未突出显示语法的文本,并且出现编译错误:

Error: Wrong type argument: number-or-marker-p, nil

和日志中的一条消息:

File mode specification error: (cl-assertion-failed (functionp byte-compiled-fun))

我通过使用以下命令运行 emacs 来避免我的.emacs.emacs.d

emacs -Q --eval '(load "/path/to/nxhtml/autostart")' /path/to/nxhtml/tests/in/heredoc.php

即使您没有修复程序,我该如何调试此问题?

4

2 回答 2

1

最近在 Emacs 的开发版本中似乎出现了相当多的此类错误类型参数错误 (24)。这可能代表一个 Emacs 错误。或者它可能代表一个 nXhtml 错误。

我建议先通知 nXhtml 的作者 Lennart,尝试给他一个清晰的配方,从emacs -Q.

如果这没有帮助,请考虑提交 Emacs 错误:M-x report-emacs-bug.

要尝试自己调试一下,请确保只加载源文件(例如,对于 nXhtml),即 , *.elnot *.elc,最好以emacs -Q(no init file) 开头。执行M-x set-variable debug-on-error t以查看引发错误的位置。然后也许使用M-x debug-on-entry FUNCTION,哪里FUNCTION是似乎引发错误的函数。然后单步执行 Emacs 调试器,点击单d步并c跳过一个步骤。

但同样,我建议从 Lennart 开始。

于 2011-11-18T15:28:08.813 回答
0

尝试最新版本的 Emacs。

我有同样的问题(在 Windows 7 上):

Error: Wrong type argument: number-or-marker-p, nil

在 nxhtml-loaddefs.el 的第 1471 行。

Nxhtml 在 Emacs 24.1.50.1(2012 年 4 月 23 日)上似乎很好。

http://alpha.gnu.org/gnu/emacs/windows/?C=M;O=D

于 2012-04-29T03:44:43.337 回答