出现错误时自动显示 flycheck 缓冲区

display flycheck buffer automatically when there are errors

我希望当我当前正在编辑的缓冲区中存在(检测到 flycheck)错误时自动显示 flycheck 缓冲区。我的假设是,这最好通过检查 (flycheck-current-errors) returns true.

来完成

有谁知道可以启用此功能的任何现有设置或 elisp 代码?

如果没有任何现成的东西,我想我会尝试写一些东西,可能会遵循类似于这个问题中的代码的方法 Display Flycheck buffer (with errors) when saving 但我需要找出一个好的钩子指向 运行 检查频率足够有用但不会增加太多后台开销。

根据上面@gdkrmr 的建议(谢谢!),我编写了以下代码来完成我想要的:

(add-hook 'flycheck-after-syntax-check-hook
          (lambda  ()
            (if flycheck-current-errors
                (flycheck-list-errors)
              (when (get-buffer "*Flycheck errors*")
                (switch-to-buffer "*Flycheck errors*")
                (kill-buffer (current-buffer))
                (delete-window)))))