* lisp/ob-tangle.el (org-babel-tangle-single-block): Do not spend extra time creating link to source block when :comments is set to "no". --- lisp/ob-tangle.el | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/lisp/ob-tangle.el b/lisp/ob-tangle.el index 7ae319d4f..85356d537 100644 --- a/lisp/ob-tangle.el +++ b/lisp/ob-tangle.el @@ -472,16 +472,20 @@ (defun org-babel-tangle-single-block (block-counter &optional only-this-block) (extra (nth 3 info)) (coderef (nth 6 info)) (cref-regexp (org-src-coderef-regexp coderef)) - (link (let* ( - ;; The created link is transient. Using ID is - ;; not necessary, but could have side-effects if - ;; used. An ID property may be added to - ;; existing entries thus creatin unexpected file - ;; modifications. - (org-id-link-to-org-use-id nil) - (l (org-no-properties (org-store-link nil)))) - (and (string-match org-link-bracket-re l) - (match-string 1 l)))) + (link (if (string= "no" (cdr (assq :comments params))) "" + (let* ( + ;; The created link is transient. Using ID is + ;; not necessary, but could have side-effects if + ;; used. An ID property may be added to + ;; existing entries thus creating unexpected + ;; file modifications. + (org-id-link-to-org-use-id nil) + (l (org-no-properties + (cl-letf (((symbol-function 'org-store-link-functions) + (lambda () nil))) + (org-store-link nil))))) + (and (string-match org-link-bracket-re l) + (match-string 1 l))))) (source-name (or (nth 4 info) (format "%s:%d" -- 2.34.1