summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Schulte <eric.schulte@gmx.com>2012-11-16 15:40:46 (GMT)
committer Eric Schulte <eric.schulte@gmx.com>2012-11-17 17:08:45 (GMT)
commitd4b739fbf2eee0134d21ac59e423c641e18b987e (patch)
tree3590778523e45c4bb4eaff55e432bbf3e2722e82
parent359b10b3070588e8b751935b3fbcc2c9d8885a6a (diff)
downloadorg-mode-d4b739fbf2eee0134d21ac59e423c641e18b987e.zip
org-mode-d4b739fbf2eee0134d21ac59e423c641e18b987e.tar.gz
"none" header avoids result post-process
This patch introduces a new header argument which hide all code block results from Emacs so that they are not processed into Emacs-lisp objects; a process which may take a great deal of time for large objects. * lisp/ob.el (org-babel-common-header-args-w-values): Adding the new "none" header argument. (org-babel-execute-src-block): Don't do *any* result processing if the "none" header argument has been specified. (org-babel-sha1-hash): Remove the none header argument from header arg lists when calculating cache sums. (org-babel-insert-result): Flesh out some documentation.
-rw-r--r--lisp/ob.el15
1 files changed, 11 insertions, 4 deletions
diff --git a/lisp/ob.el b/lisp/ob.el
index 69a5c58..bf4b455 100644
--- a/lisp/ob.el
+++ b/lisp/ob.el
@@ -421,7 +421,7 @@ then run `org-babel-pop-to-session'."
(padline . ((yes no)))
(results . ((file list vector table scalar verbatim)
(raw html latex org code pp drawer)
- (replace silent append prepend)
+ (replace silent none append prepend)
(output value)))
(rownames . ((no yes)))
(sep . :any)
@@ -562,6 +562,8 @@ block."
(message "executing %s code block%s..."
(capitalize lang)
(if (nth 4 info) (format " (%s)" (nth 4 info)) ""))
+ (if (member "none" result-params)
+ (message "result silenced")
(setq result
((lambda (result)
(if (and (eq (cdr (assoc :result-type params)) 'value)
@@ -581,7 +583,8 @@ block."
(org-babel-insert-result
result result-params info new-hash indent lang)
(run-hooks 'org-babel-after-execute-hook)
- result))
+ result
+ )))
(setq call-process-region 'org-babel-call-process-region-original))))))
(defun org-babel-expand-body:generic (body params &optional var-lines)
@@ -1028,7 +1031,8 @@ the current subtree."
(sort (copy-sequence (nth 2 info))
(lambda (a b) (string< (car a) (car b)))))
(let* ((rm (lambda (lst)
- (dolist (p '("replace" "silent" "append" "prepend"))
+ (dolist (p '("replace" "silent" "none"
+ "append" "prepend"))
(setq lst (remove p lst)))
lst))
(norm (lambda (arg)
@@ -1851,7 +1855,10 @@ RESULT-PARAMS can take the following values:
replace - (default option) insert results after the source block
replacing any previously inserted results
-silent -- no results are inserted
+silent -- no results are inserted into the Org-mode buffer but
+ the results are echoed to the minibuffer and are
+ ingested by Emacs (a potentially time consuming
+ process)
file ---- the results are interpreted as a file path, and are
inserted into the buffer using the Org-mode file syntax