|
From: | Max Nikulin |
Subject: | Re: [PATCH] ob-tangle.el: fix ‘:comments noweb’ double linking |
Date: | Sat, 13 Aug 2022 15:06:14 +0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 |
On 13/08/2022 13:42, Ihor Radchenko wrote:
Max Nikulin writes:+ (bare (and (string-match org-link-bracket-re l) + (match-string 1 l)))) + (when bare + (if (and org-babel-tangle-use-relative-file-links + (string-match org-link-types-re bare) + (string= (match-string 1 bare) "file"))It looks like (string-prefix-p "file:" bare) but without the complex regexp. I see, such code was used before. By the way, why it is "bare", not e.g. "target"?match-end is used later in the code. Thus, string-match is justified.
The matched string is always "file:", so there is no actual point in `string-match'. It does not really matter however.
(let ((params '((:tangle . "/home/user/file.el"))) (type "file:") (target "file:///dev/null")) (if (and target org-babel-tangle-use-relative-file-links (string-prefix-p type target)) (concat type (file-relative-name (substring target (length type)) (file-name-directory (alist-get :tangle params)))) target))In the code existed before and moved by the committed patch I do not like that "then" branch of the `if' form uses side effect of evaluation of the condition.
[Prev in Thread] | Current Thread | [Next in Thread] |