JSHint + Flymake — проверка ошибок бесконечного цикла

Я пытался сам разобраться в проблеме и, вероятно, продолжу, но из-за плохих отчетов об ошибках это занимает слишком много времени. Так что, возможно, если кто уже сталкивался с этой проблемой, поделитесь пожалуйста.

Что происходит: после того, как flymake-jshint обнаруживает ошибку, независимо от того, что это за ошибка, это может быть, например, отсутствующая точка с запятой. Он застрянет в бесконечном цикле. Я могу выполнить цикл C-g, но это очень раздражает и будет повторяться несколько раз в одной и той же строке, что сделает запись абсолютно невозможной.

Когда я затем смотрю в буфер *Messages*, он показывает что-то вроде:

missing ; after statement [NNNN times]

т. е. Flymake много раз просили выполнить проверку. Интервал таймера установлен на 2 секунды, но он явно переусердствует, потому что сделает сотни проверок за две секунды. Попытка увеличить flymake-log-level не дает никакой дополнительной информации.

Я настроил эти переменные:

(flymake-no-changes-timeout 2)
(flymake-start-syntax-check-on-newline nil)

но больше никаких дополнительных настроек.

ИЗМЕНИТЬ:

Кажется, это связано с режимом автозаполнения. Отключение этого второстепенного режима «решило» проблему, но теперь я получаю сотни сообщений «Недопустимая ссылка на лицо: ноль [NNNN раз]». вздыхает


person Community    schedule 22.09.2012    source источник


Ответы (1)


Кажется, я наконец нашел проблему. Это был highlight-current-line минорный лад. Всякий раз, когда Flymake обнаруживал ошибку и ему нужно было нарисовать место ошибки, он пытался прочитать наложение, но сбивался с толку из-за наложения, созданного подсветкой. Я еще не пытался это исправить, но простое отключение подсветки сделало, по крайней мере, возможным работать.

person Community    schedule 25.09.2012