forked from mirrors/org-mode
ob-org: expanding variables in Org-mode text
* lisp/ob-org.el (org-babel-expand-body:org): Implemented this function, only action is to expand variables. (org-babel-execute:org): Uses the new body-expansion function.
This commit is contained in:
parent
d6fb52e157
commit
311b09d926
|
@ -40,11 +40,19 @@
|
||||||
"#+TITLE: default empty header\n"
|
"#+TITLE: default empty header\n"
|
||||||
"Default header inserted during export of org blocks.")
|
"Default header inserted during export of org blocks.")
|
||||||
|
|
||||||
|
(defun org-babel-expand-body:org (body params)
|
||||||
|
(dolist (var (mapcar #'cdr (org-babel-get-header params :var)))
|
||||||
|
(setq body (replace-regexp-in-string
|
||||||
|
(regexp-quote (format "$%s" (car var))) (cdr var) body
|
||||||
|
nil 'literal)))
|
||||||
|
body)
|
||||||
|
|
||||||
(defun org-babel-execute:org (body params)
|
(defun org-babel-execute:org (body params)
|
||||||
"Execute a block of Org code with.
|
"Execute a block of Org code with.
|
||||||
This function is called by `org-babel-execute-src-block'."
|
This function is called by `org-babel-execute-src-block'."
|
||||||
(let ((result-params (split-string (or (cdr (assoc :results params)) "")))
|
(let ((result-params (split-string (or (cdr (assoc :results params)) "")))
|
||||||
(body (replace-regexp-in-string "^," "" body)))
|
(body (org-babel-expand-body:org
|
||||||
|
(replace-regexp-in-string "^," "" body) params)))
|
||||||
(cond
|
(cond
|
||||||
((member "latex" result-params) (org-export-string
|
((member "latex" result-params) (org-export-string
|
||||||
(concat "#+Title: \n" body) "latex"))
|
(concat "#+Title: \n" body) "latex"))
|
||||||
|
|
Loading…
Reference in a new issue