Org-Babel Clojure Cider NRepl 坏了?
Org-Babel Clojure Cider NRepl broken?
我按照说明 here 编写了以下 org-mode 文件:
#+BEGIN_SRC emacs-lisp
(princ (concat (format "Emacs version:\n%s\n" (emacs-version))
(format "\norg version: %s\n" (org-version))))
#+END_SRC
#+RESULTS:
: Emacs version:
: GNU Emacs 25.1.1 (x86_64-apple-darwin13.4.0, NS appkit-1265.21 Version 10.9.5 (Build 13F1911))
: of 2016-09-17
:
: org version: 9.0.5
#+BEGIN_SRC clojure :results value
(* 6 7)
#+END_SRC
#+RESULTS:
* COMMENT org babel settings
Local variables:
org-confirm-babel-evaluate: nil
End:
如您所见,emacs-lisp 块的计算有效并产生
预期的输出。顺便说一下,它还会报告我正在使用的东西的版本。但是,clojure 源代码块在评估时会留下
Code block returned no value.
我在代码块中尝试了许多不同的 Clojure 表达式,例如 println
s 等等。 NREPL window 中没有显示任何内容,org 模式中的结果始终相同:迷你缓冲区中的上述消息。
在 emacs 迷你缓冲区中。以下是我采取的具体步骤:
$ lein new clojure-example
$ cd clojure-example
$ emacs clojure.example.org
- 在上面的文件中输入
- 运行 emacs 命令
cider-jack-in
生成具有以下版本信息的 repl window:
;; Connected to nREPL server - nrepl://localhost:52695
;; CIDER 0.15.0snapshot (package: 20170403.402), nREPL 0.2.12
;; Clojure 1.8.0, Java 1.8.0_121
等等
- 将 emacs 光标放在每个块中并键入
C-c C-c
,这将绑定到
org-babel-execute-src-block
在此之前,我在我的 emacs 初始化文件中插入了以下代码:
(require 'org)
(require 'ob-clojure)
(org-babel-do-load-languages
'org-babel-load-languages
'( (clojure . t)
(emacs-lisp . t)
))
(setq org-babel-clojure-backend 'cider)
(require 'cider)
根据引用的说明。
如有任何帮助,我将不胜感激。
是的,在当前的稳定版本 (9.0.5) 中,org-mode clojure 后端已损坏且无法正常工作。我提交了一个已经应用的补丁,我希望在下一个版本中。
我按照说明 here 编写了以下 org-mode 文件:
#+BEGIN_SRC emacs-lisp
(princ (concat (format "Emacs version:\n%s\n" (emacs-version))
(format "\norg version: %s\n" (org-version))))
#+END_SRC
#+RESULTS:
: Emacs version:
: GNU Emacs 25.1.1 (x86_64-apple-darwin13.4.0, NS appkit-1265.21 Version 10.9.5 (Build 13F1911))
: of 2016-09-17
:
: org version: 9.0.5
#+BEGIN_SRC clojure :results value
(* 6 7)
#+END_SRC
#+RESULTS:
* COMMENT org babel settings
Local variables:
org-confirm-babel-evaluate: nil
End:
如您所见,emacs-lisp 块的计算有效并产生 预期的输出。顺便说一下,它还会报告我正在使用的东西的版本。但是,clojure 源代码块在评估时会留下
Code block returned no value.
我在代码块中尝试了许多不同的 Clojure 表达式,例如 println
s 等等。 NREPL window 中没有显示任何内容,org 模式中的结果始终相同:迷你缓冲区中的上述消息。
在 emacs 迷你缓冲区中。以下是我采取的具体步骤:
$ lein new clojure-example
$ cd clojure-example
$ emacs clojure.example.org
- 在上面的文件中输入
- 运行 emacs 命令
cider-jack-in
生成具有以下版本信息的 repl window:
;; Connected to nREPL server - nrepl://localhost:52695 ;; CIDER 0.15.0snapshot (package: 20170403.402), nREPL 0.2.12 ;; Clojure 1.8.0, Java 1.8.0_121
等等
- 将 emacs 光标放在每个块中并键入
C-c C-c
,这将绑定到org-babel-execute-src-block
在此之前,我在我的 emacs 初始化文件中插入了以下代码:
(require 'org)
(require 'ob-clojure)
(org-babel-do-load-languages
'org-babel-load-languages
'( (clojure . t)
(emacs-lisp . t)
))
(setq org-babel-clojure-backend 'cider)
(require 'cider)
根据引用的说明。
如有任何帮助,我将不胜感激。
是的,在当前的稳定版本 (9.0.5) 中,org-mode clojure 后端已损坏且无法正常工作。我提交了一个已经应用的补丁,我希望在下一个版本中。