From 8aaf3c9748b6ef8bd5782108ae382f59efef1903 Mon Sep 17 00:00:00 2001 From: Eric Schulte Date: Sun, 6 Oct 2013 17:13:01 -0600 Subject: [PATCH] reading tables from lisp code block output * lisp/ob-lisp.el (org-babel-execute:lisp): Read tabular results written to STDOUT as tables. --- lisp/ob-lisp.el | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lisp/ob-lisp.el b/lisp/ob-lisp.el index 68dfacc04..0f37653d9 100644 --- a/lisp/ob-lisp.el +++ b/lisp/ob-lisp.el @@ -79,7 +79,13 @@ current directory string." (org-babel-result-cond (cdr (assoc :result-params params)) result (condition-case nil - (read (org-babel-lisp-vector-to-list result)) + (if (member "output" (cdr (assoc :result-params params))) + ;; read printed output using normal org table parsing + (let ((tmp-file (org-babel-temp-file "lisp-output-"))) + (with-temp-file tmp-file (insert result)) + (org-babel-import-elisp-from-file tmp-file)) + ;; read valued output as lisp + (read (org-babel-lisp-vector-to-list result))) (error result)))) (funcall (if (member "output" (cdr (assoc :result-params params))) #'car #'cadr)