GHC mod在错误的目录中查找设置文件



我在编辑器(Neovim)中使用了许多Haskell插件,其中一个是ghcmod-vim,它与syntastic一起工作,在编写Haskell代码时提供语法检查。

有一次,我为Mac OS X安装了GHC,作为我构建系统配置中许多问题的临时解决方案。这些问题已经解决,所以我从/Applications中删除了.app捆绑包,并删除了它附加到~/.zshrc的行。

出于某种原因,即使是现在,当我写一个Haskell文件并将其保存到磁盘时,Neovim的消息缓冲区中也会出现一个错误:

"myfile.hs" 10L, 163C written
syntastic: error: checker output:
/Applications/ghc-7.8.4.app/Contents/lib/ghc-7.8.4/settings: openFile: does not exist (No such file or directory)
syntastic: error: checker haskell/ghc_mod returned abnormal status 1

settings文件包含一个具有各种构建环境选项的键/值对列表,这些选项通常与ghc二进制文件一起存储,并且在使用Homebrew安装的/usr/local/bin中与ghc二进制文件一起存在。

由于某种原因,syntasticghc_mod检查器模块在错误的位置查找设置文件。尽管事实上,在我的任何Neovim或插件配置文件中,或在任何环境变量中都没有引用该路径。

如何让ghc_modsyntastic在正确的位置查找GHC设置文件?

今天早上我决定使用cabal重新安装ghc-mod,这似乎完全解决了问题!

所采取的其他步骤包括运行:PlugUpdate,并完全删除和重新安装ghcmod-vimsyntastic插件,尽管我不知道这些插件是否有助于间接修复问题——问题一直存在,直到我运行cabal updatecabal install ghc-mod(单独重新安装)。

正如在评论中指出的那样,这个问题的根本原因是ghc-mod在5.4.0版本之后引入了突破性的更改,这迫使syntastic的维护人员放弃了对它的支持。

最新更新