summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Schulte <eric.schulte@gmx.com>2012-01-23 19:40:21 -0700
committerEric Schulte <eric.schulte@gmx.com>2012-01-23 19:42:06 -0700
commit269a509615095e2e2d271a9e33d799d41744047a (patch)
treeb641e85886fcffdc321a9dfbf1a415118e2fcdd3
parent978fd46069573f46f6d3c1fe54539b3bef6b09bb (diff)
downloadorg-mode-269a509615095e2e2d271a9e33d799d41744047a.tar.gz
customizable noweb reference separator
* lisp/ob.el (org-babel-noweb-separator): Custom variable for accumulated noweb references. (org-babel-expand-noweb-references): Allow separator for noweb references. * doc/org.texi (noweb-ref): Documentation of this new custom variable.
-rw-r--r--doc/org.texi4
-rw-r--r--lisp/ob.el12
2 files changed, 13 insertions, 3 deletions
diff --git a/doc/org.texi b/doc/org.texi
index 569fc39..deb8d0d 100644
--- a/doc/org.texi
+++ b/doc/org.texi
@@ -13667,6 +13667,10 @@ inheritance}).}.
#+END_SRC
@end example
+The @code{org-babel-noweb-separator} variable holds the string used to
+separate accumulate noweb references like those above. By default this
+variable holds a newline.
+
@node cache, sep, noweb-ref, Specific header arguments
@subsubsection @code{:cache}
diff --git a/lisp/ob.el b/lisp/ob.el
index f75412e..c13d13c 100644
--- a/lisp/ob.el
+++ b/lisp/ob.el
@@ -120,6 +120,11 @@ be used."
:group 'org-babel
:type 'string)
+(defcustom org-babel-noweb-separator "\n"
+ "String used to separate accumulated noweb references."
+ :group 'org-babel
+ :type 'string)
+
(defvar org-babel-src-name-regexp
"^[ \t]*#\\+name:[ \t]*"
"Regular expression used to match a source name line.")
@@ -2194,7 +2199,7 @@ block but are passed literally to the \"example-block\"."
(c-wrap (cadr cs))))
(org-babel-tangle-comment-links i))
body)))
- (setq expansion (concat expansion full))))
+ (setq expansion (cons full expansion))))
(org-babel-map-src-blocks nil
(let ((i (org-babel-get-src-block-info 'light)))
(when (equal (or (cdr (assoc :noweb-ref (nth 2 i)))
@@ -2208,8 +2213,9 @@ block but are passed literally to the \"example-block\"."
(c-wrap (cadr cs))))
(org-babel-tangle-comment-links i))
body)))
- (setq expansion (concat expansion full))))))))
- expansion)
+ (setq expansion (cons full expansion))))))))
+ (mapconcat #'identity (nreverse expansion)
+ org-babel-noweb-separator))
;; possibly raise an error if named block doesn't exist
(if (member lang org-babel-noweb-error-langs)
(error "%s" (concat