>From aea3adc952de33aa9acad94fbd9baa717b7b1a1e Mon Sep 17 00:00:00 2001 From: Tom Regner <t...@goochesa.de> Rcpt To: emacs-orgmode@gnu.org Date: Mon, 23 Jan 2012 12:39:52 +0100 Subject: [PATCH] ob.el Adhere to current :padline header during noweb dereferencing.
At the moment using the :noweb-ref: property approach on subtrees results in the tangled code beeing broken because the newlines before the #+end_src line are excluded from the output. This patch uses :padline to check if a newline should be added. The default being yes, tangling with subtree mangling now produces correct results; code depending on the (errorneous?) behaviour would be broken though. --- lisp/ob.el | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lisp/ob.el b/lisp/ob.el index 47be708..398a997 100644 --- a/lisp/ob.el +++ b/lisp/ob.el @@ -2211,13 +2211,16 @@ block but are passed literally to the \"example-block\"." (nth 4 i)) source-name) (let* ((body (org-babel-expand-noweb-references i)) - (full (if comment + (padded (if (not (string= "no" (cdr (assoc :padline (nth 2 i))))) + (concat body "\n") + body )) + (full (if comment ((lambda (cs) (concat (c-wrap (car cs)) "\n" - body "\n" + padded "\n" (c-wrap (cadr cs)))) (org-babel-tangle-comment-links i)) - body))) + padded))) (setq expansion (concat expansion full)))))))) expansion) ;; possibly raise an error if named block doesn't exist -- 1.7.5.4