customizable noweb reference separator
authorEric Schulte <eric.schulte@gmx.com>
Tue, 24 Jan 2012 02:40:21 +0000 (19:40 -0700)
committerEric Schulte <eric.schulte@gmx.com>
Tue, 24 Jan 2012 02:42:06 +0000 (19:42 -0700)
* 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.

doc/org.texi
lisp/ob.el

index 569fc39..deb8d0d 100644 (file)
@@ -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}
 
index f75412e..c13d13c 100644 (file)
@@ -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