nXhtml没有突出显示PHP代码,在加载时出错

时间:2011-11-18 11:04:05

标签: emacs nxhtml

我正在使用从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

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

2 个答案:

答案 0 :(得分:1)

最近,Emacs(24)的开发版本似乎存在大量此类错误类型参数错误。这可能代表了一个Emacs错误。或者它可能代表一个nXhtml错误。

我建议首先通知nnhtml作者Lennart,试图从emacs -Q开始给他一个明确的食谱。

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

要尝试自己调试一下,请确保只加载源文件(例如,对于nXhtml),即*.el,而不是*.elc,最好从emacs -Q开始(不初始文件)。请M-x set-variable debug-on-error t查看错误发生的位置。然后可能使用M-x debug-on-entry FUNCTION,其中FUNCTION是似乎已经引发错误的函数。然后逐步执行Emacs调试器,点击d进入步骤c跳过一步。

但是,我建议从Lennart开始。

答案 1 :(得分: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