2017-04-07 38 views
1

我跟着指示here并写了下面的组织模式文件:Org-Babel Clojure苹果酒NRepl破?

#+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口齿不清块的工作的评价,并产生 预期输出。顺便提一下,它还会报告我正在使用的版本。然而,Clojure的源块,评价时,叶

Code block returned no value. 

我试图在代码块许多不同的Clojure表达式,如println s,更。 NREPL窗口中没有显示任何内容,并且组织模式下的结果始终相同:上面的消息在小缓冲区中。

在emacs minibuffer中。下面是我的具体步骤:

  1. $ lein new clojure-example
  2. $ cd clojure-example
  3. $ emacs clojure.example.org
  4. keyboarded文件中上述
  5. 运行emacs的命令cider-jack-in

产生一个REPL窗口以下版本信息:

;; 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) 
    

    根据引用的说明。

    我会很感激任何帮助。

    回答