idris-mode - Buffer * idris-repl *没有进程

时间:2015-03-13 12:28:48

标签: emacs idris

我正试图让idris模式工作。我正在使用idris-devidris-mode中的HEAD。每当我执行C-l(idris-load-file)时,我都会收到此错误

Debugger entered--Lisp error: (file-error "make client process failed" "connection refused" :name "Idris Ideslave" :buffer "*idris-connection*" :host "127.0.0.1" :service 0 :nowait nil)
  make-network-process(:name "Idris Ideslave" :buffer "*idris-connection*" :host "127.0.0.1" :service 0 :nowait nil)
  open-network-stream("Idris Ideslave" "*idris-connection*" "127.0.0.1" 0)
  (setq idris-connection (open-network-stream "Idris Ideslave" (idris-buffer-name :connection) "127.0.0.1" port))
  .............snipped

每当我尝试M-x idris-repl时,它都会声明Buffer *idris-repl* has no process

this线程的结果是从git更新项目。但是,我正在使用每个项目中最新的版本。

编辑:运行make也失败了,但这可能是一个不同的问题。如果我手动结帐0.9.16make将通过,但上述相同问题仍然存在。

编辑:我没有在本地安装这个,我是从一个cabal沙箱中运行的。在idris-settings.el我将idris-interpreter-path更改为idris的完整路径。此外,当我在emacs之外运行idris时,我得到的错误是找不到前奏或内置。如果我添加-i path / to / idris / libs / prelude,那么一切正常。但是在idris-interpreter-flags中向idris-settings.el添加“-i path / to / idris / libs / prelude”无效

1 个答案:

答案 0 :(得分:2)

有点解决了这个问题。对于idris-interpreter-flags,您必须将每个实际参数作为单独的字符串给出(这很常见,我应该知道)。所以,如果我将idris-interpreter-flags设置为'("-i" "/path/to/idris/libs/prelude"),那么一切都很好。所以我必须为每个库添加路径' idris附带的目录。

这是如何工作的?这是正常的要求吗?是不是因为我没有将它作为一个真正的cabal安装包来运行,而它没有在库中找到它?