更新Cabal后自动完成功能无法正常工作

时间:2015-01-07 23:20:56

标签: haskell emacs autocomplete haskell-mode

我最近在安装ghc-mod之前将Cabal更新到版本1.22,因此我可以在项目中获得一些非常需要的错误检查。

更新并非没有复杂性,ghc-mod甚至在我将最新版本的Cabal的路径添加到$PATH之前都不会运行。在这样做的时候,haskell-mode开始表现,因为加载翻译不再用熟悉的短语“你的命令是我的IO”来迎接我,而是看起来似乎是标准的GHCI。不仅如此,它还没有问我是否想要像改变之前通常那样开始一个名为haskell的新项目;然后,所有光荣的自动完成都消失了。

经过一番摆弄后,我了解到Emacs无法加载haskell-interactive-mode,被告知它与haskell-mode本身有关,我重新安装了它,并添加了

(require 'haskell-mode)
(add-hook 'haskell-mode-hook 'interactive-haskell-mode)
(eval-after-load "auto-complete"
  '(add-to-list 'ac-modes 'haskell-interactive-mode))

到我的.emacs文件,突然错误消失了,但问题仍然存在,现在每当我尝试加载解释器时,Emacs会要求我提供Cabal的路径,然后是当前的工作目录1;之后,我会受到用于启用自动完成功能的repl的欢迎。

除了......它仍然没有自动完成。或者更确切地说,它会自动填充文档中的任何内容,但它不会显示我输入的函数,它不会像以前那样显示子模块,它根本不会执行任何操作,除了自动生成类型签名当我按C-u C-c C-t时。

我真的不知道如何从这里过去,并且非常感谢一些帮助。

0 个答案:

没有答案