【问题标题】:Using Hlint with intero on emacs在 emacs 上使用 Hlint 和 intero
【发布时间】:2016-11-03 11:39:13
【问题描述】:

我无法在使用 intero 的 emacs 中获得 hlint 建议。

  • 我有一个新安装的 emacs 24.5
  • 我将 here 的 intero 内容添加到新的 ~/.emacs 文件中
  • 我没有对 emacs 做任何其他事情。

我已经读到解决方案是:

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

但我不知道我应该用这个做什么。如果我将它添加到我的~/.emacs 文件中,那么 emacs 会在启动时失败。

(其余的似乎还可以 - 当我打开 Haskell 文件时会启动 intero - 在我键入时会立即标记错误。)

如何让 Hlint 建议出现?

【问题讨论】:

  • 你安装hlint了吗?
  • hlint 已安装在我的堆栈项目中,即我可以运行 stack exec hlint 但它没有全局安装。
  • 您能否进行以下检查: 1) 查看您的 hlint 可执行文件是否在您的 flycheck 识别的正确路径中。明确添加变量exec-path,如果它不在该路径中。我通常通过堆栈全局安装 hlint 并将其用于我的 emacs 会话。 2)如果第一种方法不是问题,那么尝试运行这个emacs命令:intero-info然后看看flycheck是否为你显示了hlint警告。
  • 只是问一个最明显的想法-您的文件实际上是否有任何警告? :-) 您可以通过在文件上手动运行 hlint 来检查。

标签: haskell emacs hlint intero


【解决方案1】:

通过将其添加到我的 ~/.emacs 文件来修复:

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

(完整的~/.emacs文件可以查看here)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多