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

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



随后显示一条消息,例如:



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

如果我键入任何内容(完全没有任何意义,),我将得到:



如果我切换回core.clj缓冲区,然后按C-c C-l,则会得到迷你缓冲区中缓冲区中最后一个函数的命名空间名称。如果我将光标放在函数定义的末尾并点击C-x C-e,我将得到:



我尝试使用lein new project-name创建一个没有依赖性的新lein目录,并尝试与上述相同的步骤并获得相同的结果。

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

编辑:附加信息

当我在空的*nrepl*缓冲区中键入某些内容并尝试按输入的内容按C-x C-e时,在迷你缓冲区中,我收到以下消息:



另外,我正在运行:

GNU Emacs 24.3.1

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

最佳答案

我只是在自己的设置上解决了这个确切的问题。将您的.emacs.d移到备份位置,并制作.emacs的备份副本。使用仅使用新建以下行:

(require 'package)

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

(package-initialize)

(require 'clojure-mode)

(require 'nrepl)

通过运行M-x package-list-packages并安装它们各自的条目安装nrepl和clojure-mode之后,您将可以使用nrepl。

一次将您的自定义.emacs重新添加到一个逻辑单元中,您应该能够找出冲突的根源并消除冲突。怀疑与粘液/污垢有关的任何东西。

关于emacs - Emacs,Clojure,lein和nrepl : *nrepl* buffer shows up blank,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18208947/

10-12 02:08