nXhtml не выделяет код PHP, выдает ошибки при загрузке

Я использую последнюю версию 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.d запустив emacs с этой командой:

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

Даже если у вас нет исправления, как я могу отладить эту проблему?

2 ответа

Решение

Похоже, что в последнее время в версии для разработчиков Emacs (24) существует довольно много таких ошибок неправильного аргумента типа. Это может представлять ошибку Emacs. Или это может быть ошибка nXhtml.

Я предлагаю начать с уведомления Леннарта, автора nXhtml, пытаясь дать ему четкий рецепт, начиная с 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 пропустить шаг.

Но опять же, я предлагаю начать с Леннарта.

Попробуйте новейшую версию Emacs.

У меня была такая же проблема (на Windows 7):

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

в строке 1471 файла nxhtml-loaddefs.el.

Nxhtml выглядит нормально на Emacs 24.1.50.1 (23 апреля 2012 г.).

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

Другие вопросы по тегам