On 14/08/2022 16:53, Max Nikulin wrote:
On 13/08/2022 12:01, Ihor Radchenko wrote:
See the updated version of the patch attached. It works on my side.

--- a/lisp/ol.el
+++ b/lisp/ol.el
@@ -1577,10 +1577,8 @@ (defun org-store-link (arg &optional interactive?)
           t))))
     (setq link (plist-get org-store-link-plist :link))
         ;; If store function actually set `:description' property, use
-        ;; it, even if it is nil.  Otherwise, fallback to link value.
-    (setq desc (if (plist-member org-store-link-plist :description)
-                       (plist-get org-store-link-plist :description)
-             link)))
+        ;; it, even if it is nil.  Otherwise, fallback to nil (ask user).
+    (setq desc (plist-get org-store-link-plist :description)))

I can not say that I understand design of `org-store-link` and `org-insert-link' pair, but I suspect that you might try to fix the issue in a wrong place.

It seems the same :link and :description value were set for purpose, see `org-insert-link' code:

         (dolist (l org-stored-links)
           (when (equal link (cadr l))
         (setq link (car l))
         (setq auto-desc t)))

Ihor, I beg you pardon. I was wrong writing that you are trying to fix the issue in a wrong place. I figured out that the purpose of this snippet is completion by link description, not detecting of the case of identical link target and description. You have just committed the patch from the following thread where I provided more details: Max Nikulin. ido, org-insert-link, and completion based on link description. Tue, 6 Sep 2022 21:34:12 +0700. https://list.orgmode.org/tf7lp4$5ha$1...@ciao.gmane.io

Now I believe that your change is an improvement. I do not see any real reason to store the same description as the target. "~/Desktop/Org/captures.org::target" for <<target>> as default value of the description prompt might be a hint to the user for which link their should write description, but I hope, there is a better way to do the same. I have seen a mention that some export backend may create perhaps invisible links if description is omitted, but if it is still an issue, it should be fixed in affected backends.

Unfortunately, your patch does not fix the real issue. The title (not nil) should be saved for link description when the heading contains the CUSTOM_ID property. I tried to address it in the following patches:

Max Nikulin. Re: Bug: org-store-link uses CUSTOM_ID instead of target point. Sat, 6 Nov 2021 19:51:29 +0700. https://list.orgmode.org/e2c807a7-1924-6f08-9e63-4f70aee9d...@gmail.com


Reply via email to