Selaa lähdekoodia

ob-lisp: now reads/applies :colnames and :rownames header arguments

* lisp/ob-lisp.el (org-babel-execute:lisp): Now using
  `org-babel-reassemble-table' to apply the appropriate header
  arguments to results.
Eric Schulte 14 vuotta sitten
vanhempi
commit
ad976c66cb
1 muutettua tiedostoa jossa 14 lisäystä ja 9 poistoa
  1. 14 9
      lisp/ob-lisp.el

+ 14 - 9
lisp/ob-lisp.el

@@ -63,15 +63,20 @@
 (defun org-babel-execute:lisp (body params)
   "Execute a block of Common Lisp code with Babel."
   (require 'slime)
-  (with-temp-buffer
-    (insert (org-babel-expand-body:lisp body params))
-    ((lambda (result)
-       (if (member "output" (cdr (assoc :result-params params)))
-	   (car result)
-	 (condition-case nil (read (cadr result)) (error (cadr result)))))
-     (slime-eval `(swank:eval-and-grab-output
-		   ,(buffer-substring-no-properties (point-min) (point-max)))
-		 (cdr (assoc :package params))))))
+  (org-babel-reassemble-table
+   (with-temp-buffer
+     (insert (org-babel-expand-body:lisp body params))
+     ((lambda (result)
+	(if (member "output" (cdr (assoc :result-params params)))
+	    (car result)
+	    (condition-case nil (read (cadr result)) (error (cadr result)))))
+      (slime-eval `(swank:eval-and-grab-output
+		    ,(buffer-substring-no-properties (point-min) (point-max)))
+		  (cdr (assoc :package 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)))))
 
 (provide 'ob-lisp)