JSHint + Flymake - 无限循环错误检查

时间:2012-09-22 09:44:33

标签: emacs 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)

但不再需要额外的自定义。

修改

这似乎与自动完成模式有关。禁用此次要模式“解决”了问题,但现在我得到了数百个“无效的面部参考:nil [NNNN次]”种类的消息。 叹息

1 个答案:

答案 0 :(得分:0)

我想,我终于找到了问题。这是highlight-current-line次要模式。每当Flymake检测到错误并需要绘制错误位置时,它会尝试读取叠加层,但会被突出显示的叠加层弄糊涂。我还没有尝试修复它,但简单地禁用突出显示使它至少可以工作。