Aynı sorunu görüyorum. Biraz araştırmada, sanırım sorunu tespit ettim. Ancak, bunun kime bildirilmesi gerektiğinden emin değilim.
Sorun org-babel-execute: clojure işlevindedir. Bu işlev aşağıdaki kod bitine sahiptir
(setq result
(nrepl-dict-get
(nrepl-sync-request:eval
expanded (cider-current-connection) (cider-current-session))
(if (or (member "output" result-params)
(member "pp" result-params))
"out"
"value")))
Sorun nrepl-sync-request: eval çağrısındadır. Bu işlev için belgeler
(nrepl-sync-request: INPUT CONNECTION ve isteğe bağlı NS'yi değerlendirin)
INPUT'u nREPL sunucusuna eşzamanlı olarak gönderin. İstek BAĞLANTI yoluyla gönderilir. NS sıfır değilse, isteği ekleyin.
Son isteğe bağlı NS bağımsız değişkenine dikkat edin. Bunun bir clojure ad alanı olması gerekiyordu. Ancak, org-babel-execute: clojure işlevi bu işlevi, geçerli oturumu temsil eden benzersiz bir kimlik döndüren cider-current-session çıkışıyla çağırır. Sonuç olarak, çağrı bir veri yapısını bir hata ile ve çıkış olmadan döndürüyor (belki de bazı hataların işlenmesi gerekir). Döndürülen sonuç
(dict status (namespace-not-found done error done state state) id 17 session 43e9fd6c-82ed-49fe-9624-0cfc6f56f8b1 changed-namespaces (dict) repl-type cljclj)
Bulunamayan ad alanını not edin
Ya argüman (elma şarabı-akım-ns) çağrısı olmalı ya da blok değerlendirmesinin bir parçası olarak ad alanını nasıl geçirebileceğinizi görmediğim için belki de dışarıda bırakılmalıdır.
EDIT: İşte sorunu çözmek için görünen basit bir yama. Org git repo'nun şu anki başkanına karşı oluşturuldu
---
lisp/ob-clojure.el | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/lisp/ob-clojure.el b/lisp/ob-clojure.el
index d407105..e542a29 100644
--- a/lisp/ob-clojure.el
+++ b/lisp/ob-clojure.el
@@ -44,6 +44,7 @@
(declare-function cider-current-connection "ext:cider-client" (&optional type))
(declare-function cider-current-session "ext:cider-client" ())
+(declare-function cider-current-ns "ext:cider-client" ())
(declare-function nrepl--merge "ext:nrepl-client" (dict1 dict2))
(declare-function nrepl-dict-get "ext:nrepl-client" (dict key))
(declare-function nrepl-dict-put "ext:nrepl-client" (dict key value))
@@ -118,7 +119,7 @@ using the :show-process parameter."
org-babel-clojure-sync-nrepl-timeout))
(nrepl-sync-request:eval expanded
(cider-current-connection)
- (cider-current-session))))
+ (cider-current-ns))))
(setq result
(concat
(nrepl-dict-get response
@@ -153,7 +154,7 @@ using the :show-process parameter."
;; Update the status of the nREPL output session.
(setq status (nrepl-dict-get response "status")))
(cider-current-connection)
- (cider-current-session))
+ (cider-current-ns))
;; Wait until the nREPL code finished to be processed.
(while (not (member "done" status))
--
2.7.4
Yamayı emacs-orgmode listesine de gönderdi
(cider-current-ns)
? Ve eğer öyleyse, bu işlevi nerede bulabilirim?