尝试使用ghc-mod时,Emacs陷入无限循环

时间:2015-08-16 00:35:54

标签: haskell emacs ghc-mod

过去几天我一直在努力学习Haskell,所以终于可以设置我的环境了。因此,我安装了Haskell平台和cabal。

我的编辑器是emacs,我的操作系统是Windows。

我从github下载了ghc-mod的master分支,并使用cabal我安装了依赖项,然后构建了项目。一切都很顺利,可执行文件似乎有效。

ghc-mod --versionghc-mod boot等命令按预期工作。

然后,我在emacs上安装了haskell-mode并修改了.emacs以使用ghc。但是当我试图打开一个Haskell文件时,emacs冻结了“正在初始化......”。

有什么问题?

GHC版本:7.10.2 cabal版本:1.22.6.0使用版本1.22.4.0的cabal库 ghc-mod版本:由GHC 7.10.2编译的5.3.0.0

编辑1:16/8/2015 11:10

以下是我添加到.emacs的行:

; haskell-mode
(add-hook 'haskell-mode-hook 'haskell-indentation-mode)

; ghc-mod for haskell
; I added to list path to ghc elisp file because I read somewhere that that's
; better than installing it from MELPA. I DID try to install it from melpa
; though. Didn't solve anything.
(add-to-list `load-path "~/cabal/x86_64-windows-ghc-7.10.2/ghc-mod-5.3.0.0/elisp")

(autoload 'ghc-init "ghc" nil t)
(autoload 'ghc-debug "ghc" nil t)
(add-hook 'haskell-mode-hook (lambda () (ghc-init)))

当我第一次尝试打开haskell文件时,Emacs会冻结。所以我猜它在ghc-init()内的无限循环中堆叠。

编辑2:16/8/2015 21:16

ghc-debug的输出为here

1 个答案:

答案 0 :(得分:0)

我在ghc-mod github repo上打开了一个问题,他们解决了这个问题。

您可以在this问题的评论中查看解决方案。