summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Schulte <schulte.eric@gmail.com>2011-06-19 16:06:55 -0700
committerEric Schulte <schulte.eric@gmail.com>2011-06-19 16:06:55 -0700
commitadf16ffdd7f7b74ab7470020022da228aad2bf31 (patch)
tree5129061aa21df345097f7418fc26fe96bd042473
parent4f3a31dd974f93cb6d7c3f8cbb0c0e2df19adb61 (diff)
downloadorg-mode-adf16ffdd7f7b74ab7470020022da228aad2bf31.tar.gz
ob-emacs-lisp: respect the ":results scalar" header argument combination
* lisp/ob-emacs-lisp.el (org-babel-execute:emacs-lisp): Respect the ":results scalar" header argument combination.
-rw-r--r--lisp/ob-emacs-lisp.el18
1 files changed, 12 insertions, 6 deletions
diff --git a/lisp/ob-emacs-lisp.el b/lisp/ob-emacs-lisp.el
index 9e7dc72..e2c7f17 100644
--- a/lisp/ob-emacs-lisp.el
+++ b/lisp/ob-emacs-lisp.el
@@ -56,16 +56,22 @@
(defun org-babel-execute:emacs-lisp (body params)
"Execute a block of emacs-lisp code with Babel."
(save-window-excursion
- (org-babel-reassemble-table
+ ((lambda (result)
+ (if (member "scalar" (cdr (assoc :result-params params)))
+ (let ((print-level nil)
+ (print-length nil))
+ (format "%S" result))
+ (org-babel-reassemble-table
+ result
+ (org-babel-pick-name (cdr (assoc :colname-names params))
+ (cdr (assoc :colnames params)))
+ (org-babel-pick-name (cdr (assoc :rowname-names params))
+ (cdr (assoc :rownames params))))))
(eval (read (format (if (member "output"
(cdr (assoc :result-params params)))
"(with-output-to-string %s)"
"(progn %s)")
- (org-babel-expand-body:emacs-lisp body params))))
- (org-babel-pick-name (cdr (assoc :colname-names params))
- (cdr (assoc :colnames params)))
- (org-babel-pick-name (cdr (assoc :rowname-names params))
- (cdr (assoc :rownames params))))))
+ (org-babel-expand-body:emacs-lisp body params)))))))
(provide 'ob-emacs-lisp)