繁体   English   中英

Emacs,Clojure,lein和nrepl:* nrepl * buffer显示空白

[英]Emacs, Clojure, lein and nrepl: *nrepl* buffer shows up blank

我用lein创建了一个新项目。 我在emacs中打开core.clj 我确保运行Mx clojure-modeMx nrepl-enable-on-existing-clojure-buffers

然后我运行Mx nrepl-jack-in并在我得到的迷你缓冲区中

启动nREPL服务器...

然后是一条消息,例如:

连接的。 如果你优化一切,你一定会感到不快。 - 唐纳德克努特

我看到缓冲区名称是*nrepl* ,但缓冲区不包含Clojure Repl,而是完全空白。

如果我输入任何东西(意思是任何东西),我得到:

错误的类型参数:integer-or-marker-p,nil

如果我切换回我的core.clj缓冲区,并点击Cc Cl ,我得到迷你缓冲区中缓冲区中最后一个函数的命名空间名称。 如果我将光标放在函数定义的末尾并点击Cx Ce ,我得到:

CompilerException java.lang.RuntimeException:无法在此上下文中解析符号:x,编译:(NO_SOURCE_PATH:1:1)

我尝试使用lein new project-name制作一个没有依赖关系的新lein目录,并尝试了与上面相同的步骤并获得了相同的结果。

我还能检查什么和/或我做错了什么?

编辑:附加信息

当我在空的*nrepl*缓冲区中键入内容并尝试在我键入的内容上按Cx Ce时,在迷你缓冲区中我收到消息:

没有Lisp子进程; 看变量`inferior-lisp-buffer'

另外,我正在运行:

GNU Emacs 24.3.1

Leiningen 2.1.2 on Java 1.6.0_27 OpenJDK 64位服务器VM

我刚刚在自己的设置上解决了这个问题。 将.emacs.d移动到备份位置,并制作.emacs的备份副本。 使只有如下的新的.emacs:

(require 'package)

(add-to-list 'package-archives 
    '("marmalade" .
      "http://marmalade-repo.org/packages/"))

(package-initialize)

(require 'clojure-mode)

(require 'nrepl)

通过运行Mx package-list-packages并安装各自的条目来安装nrepl和clojure-mode后,您就可以使用nrepl了。

将您的自定义.emacs一次添加回一个逻辑单元,您应该能够找出冲突的位置并将其消除。 怀疑与粘液/ swank有关的任何事情。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM