diff options
author | Eric Schulte <schulte.eric@gmail.com> | 2010-07-20 11:40:57 -0700 |
---|---|---|
committer | Eric Schulte <schulte.eric@gmail.com> | 2010-07-20 11:40:57 -0700 |
commit | 73d8016e8b1ceda75079f14847fd47d793e02c78 (patch) | |
tree | fdeecb65e05b04ff7755847e1fa04551fa838759 | |
parent | 2d01cb7db1330677843c68a43dae014b19bd6df6 (diff) | |
download | org-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.el | 21 |
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))))) |