summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Schulte <schulte.eric@gmail.com>2010-07-20 11:40:57 -0700
committerEric Schulte <schulte.eric@gmail.com>2010-07-20 11:40:57 -0700
commit73d8016e8b1ceda75079f14847fd47d793e02c78 (patch)
treefdeecb65e05b04ff7755847e1fa04551fa838759
parent2d01cb7db1330677843c68a43dae014b19bd6df6 (diff)
downloadorg-mode-73d8016e8b1ceda75079f14847fd47d793e02c78.tar.gz
babel: matching indexes in lob one-liners
* lisp/ob-lob.el (org-babel-lob-execute): changing indentation to improve line length (org-babel-lob-get-info): now catching indexes passed through lob calls (org-babel-lob-one-liner-regexp): now matches optional indexes into variable results
-rw-r--r--lisp/ob-lob.el21
1 files changed, 13 insertions, 8 deletions
diff --git a/lisp/ob-lob.el b/lisp/ob-lob.el
index 36a9085..a6cf048 100644
--- a/lisp/ob-lob.el
+++ b/lisp/ob-lob.el
@@ -61,9 +61,10 @@ If you change the value of this variable then your files may
become unusable by other org-babel users, and vice versa.")
(defconst org-babel-lob-one-liner-regexp
- (concat "^\\([ \t]*\\)#\\+\\(?:"
- (mapconcat #'regexp-quote org-babel-lob-call-aliases "\\|")
- "\\):[ \t]+\\([^\(\)\n]+\\)\(\\([^\n]*\\)\)[ \t]*\\([^\n]*\\)")
+ (concat
+ "^\\([ \t]*\\)#\\+\\(?:"
+ (mapconcat #'regexp-quote org-babel-lob-call-aliases "\\|")
+ "\\):[ \t]+\\([^\(\)\n]+\\)\(\\([^\n]*\\)\)\\(\\[.+\\]\\)[ \t]*\\([^\n]*\\)")
"Regexp to match calls to predefined source block functions.")
;; functions for executing lob one-liners
@@ -92,10 +93,13 @@ the word 'call'."
(save-excursion
(beginning-of-line 1)
(if (looking-at org-babel-lob-one-liner-regexp)
- (append (mapcar #'org-babel-clean-text-properties
- (list (format "%s(%s)" (match-string 2) (match-string 3))
- (match-string 4)))
- (list (length (match-string 1))))))))
+ (append
+ (mapcar #'org-babel-clean-text-properties
+ (list
+ (format "%s(%s)%s"
+ (match-string 2) (match-string 3) (match-string 4))
+ (match-string 5)))
+ (list (length (match-string 1))))))))
(defun org-babel-lob-execute (info)
"Execute the lob call specified by INFO."
@@ -105,7 +109,8 @@ the word 'call'."
(org-babel-params-from-properties)
(org-babel-parse-header-arguments
(org-babel-clean-text-properties
- (concat ":var results=" (mapconcat #'identity (butlast info) " ")))))))
+ (concat ":var results="
+ (mapconcat #'identity (butlast info) " ")))))))
(org-babel-execute-src-block
nil (list "emacs-lisp" "results" params nil nil (nth 2 info)))))