在emacs上使用intero和Hlint

10

我无法在使用intero的emacs中看到hlint建议。

  • 我安装了新的emacs 24.5版本。
  • 我将这里的intero相关内容添加到新的~/.emacs文件中。
  • 我还没有对emacs进行其他任何操作。

据我了解,解决方案是:

(flycheck-add-next-checker 'intero
                           '(warning . haskell-hlint))

但是我不知道该怎么处理这个问题。如果我将它添加到我的~/.emacs文件中,那么Emacs启动时会失败。

(其余部分似乎都没问题 - 当我打开一个Haskell文件时,intero就开始工作了 - 错误会随着我键入而立即标记出来。)

我该如何显示Hlint建议?


你安装了 hlint 吗? - Sibi
hlint已经安装在我的stack项目中,也就是说我可以运行stack exec hlint命令,但它并没有全局安装。 - BillyBadBoy
你能做以下检查吗: 1)查看您的hlint可执行文件是否在flycheck识别的正确路径中。如果不在该路径中,请显式添加变量exec-path。我通常通过stack全局安装hlint,并在我的emacs会话中使用它。 2)如果第一种方法不是问题,则尝试运行此emacs命令:intero-info,然后查看flycheck是否为您显示hlint警告。 - Sibi
还有一个最明显的问题要问 - 你的文件是否实际上有任何警告? :-) 您可以手动在文件上运行 hlint 来检查。 - Sibi
1个回答

2

通过将以下内容添加到我的~ / .emacs文件中进行修复:

;; do linting on-the-fly 
(with-eval-after-load 'intero
  (flycheck-add-next-checker 'intero '(warning . haskell-hlint))
)

(完整的~/.emacs文件可以在这里查看)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接