Re: [O] [BUG] org-agenda-open-link does not open bbdb links
Bastien b...@gnu.org writes: Hi Matt, Matt Lundin m...@imapmail.org writes: The function org-agenda-open-link does not open bbdb links. The reason is that bbdb agenda lines contain links that are not found in the entry. I'm not sure I understand. Can you provide a minimal example/recipe? Hmmm... BBDB links from the agenda are now working for me. Sorry for the false alarm. Best, Matt
Re: [O] [BUG] org-agenda-open-link does not open bbdb links
Hi Matt, Matt Lundin m...@imapmail.org writes: The function org-agenda-open-link does not open bbdb links. The reason is that bbdb agenda lines contain links that are not found in the entry. I'm not sure I understand. Can you provide a minimal example/recipe? Because the agenda line is added to the strings scanned by org-offer-links-in-entry, it is added to the list of links (lk). I.e., both buffer and lk are defined, which triggers the first cond statement. The function then proceeds to search for this link in the buffer. It does not find it, since a bbdb-anniversary entry typically looks like this: * Anniversaries :PROPERTIES: :CATEGORY: anniv :END: %%(org-bbdb-anniversaries) But as a result, the function org-offer-links-in-entry never gets to the second cond statement, which would indeed open the link found in the agenda buffer. It seems to me that feeding the agenda line as a prefix to org-offer-links-in-entry is redundant, since the second cond statement explicitly looks for links in the agenda line. The following change fixes the problem, but before I submit it as a properly formatted patch, I want to make sure that it does not interfere with some other functionality. The patch would need to update `org-offer-links-in-entry' too, as the occurrence you changed is the only one requiring a zero arg. I remember this was intentional, but the code is convoluted here. Anyway, a recipe on how to reproduce the problem will help. Thanks! -- Bastien
[O] [BUG] org-agenda-open-link does not open bbdb links
The function org-agenda-open-link does not open bbdb links. The reason is that bbdb agenda lines contain links that are not found in the entry. Because the agenda line is added to the strings scanned by org-offer-links-in-entry, it is added to the list of links (lk). I.e., both buffer and lk are defined, which triggers the first cond statement. The function then proceeds to search for this link in the buffer. It does not find it, since a bbdb-anniversary entry typically looks like this: * Anniversaries :PROPERTIES: :CATEGORY: anniv :END: %%(org-bbdb-anniversaries) But as a result, the function org-offer-links-in-entry never gets to the second cond statement, which would indeed open the link found in the agenda buffer. It seems to me that feeding the agenda line as a prefix to org-offer-links-in-entry is redundant, since the second cond statement explicitly looks for links in the agenda line. The following change fixes the problem, but before I submit it as a properly formatted patch, I want to make sure that it does not interfere with some other functionality. Best, Matt --8---cut here---start-8--- diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el index c615b58..1cc1c28 100644 --- a/lisp/org-agenda.el +++ b/lisp/org-agenda.el @@ -8449,8 +8449,7 @@ It also looks at the text of the entry itself. (let* ((marker (or (org-get-at-bol 'org-hd-marker) (org-get-at-bol 'org-marker))) (buffer (and marker (marker-buffer marker))) -(prefix (buffer-substring (point-at-bol) (point-at-eol))) -(lkall (org-offer-links-in-entry buffer marker arg prefix)) +(lkall (org-offer-links-in-entry buffer marker arg)) (lk0 (car lkall)) (lk (if (stringp lk0) (list lk0) lk0)) (lkend (cdr lkall)) --8---cut here---end---8---