emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] [Accepted] Making the output of %% functions linkable in agenda view


From: Carsten Dominik
Subject: [O] [Accepted] Making the output of %% functions linkable in agenda views
Date: Wed, 4 May 2011 09:43:11 +0200 (CEST)

Patch 781 (http://patchwork.newartisans.com/patch/781/) is now "Accepted".

Maintainer comment: none

This relates to the following submission:

http://mid.gmane.org/%3C87aaf3tv5l.fsf%40fastmail.fm%3E

Here is the original message containing the patch:

> Content-Type: text/plain; charset="utf-8"
> MIME-Version: 1.0
> Content-Transfer-Encoding: 7bit
> Subject: [O] Making the output of %% functions linkable in agenda views
> Date: Wed, 04 May 2011 00:56:54 -0000
> From: Matt Lundin <address@hidden>
> X-Patchwork-Id: 781
> Message-Id: <address@hidden>
> To: address@hidden (Sebold, Charles)
> Cc: emacs-orgmode <address@hidden>
> 
> address@hidden writes:
> 
> > On 7 Apr 2011, Charles Sebold wrote:
> >
> >> Here's a test.  Take the line below and put it in an agenda file, then
> >> view the agenda.
> >>
> >> %%(format "%s" (concat "[[elisp:(info)]" "[Link to info]]"))
> >>
> >> The results as I see them give me a link that I can mouse-click on,
> >> but I can't move point to it and hit C-c C-o.
> >>
> >> What do I need to do to make this a normal org link in every way?  Or
> >> is this a bug?
> >>
> 
> Here's what seems to be going on. 
> 
> Clicking with the mouse works because it calls org-open-at-mouse, which
> (by calling org-open-at-point) simply looks at the text surrounding the
> click point to find a link.
> 
> The function org-agenda-open-link, on the other hand, grabs part of the
> headline as a string (the prefix), then jumps to the location in the
> original buffer and calls org-offer-links-in-entry to look for links in
> both the entry and the prefix of agenda text. Obviously, it won't find
> your link in the original entry since it looks like this:
> 
> %%(format "%s" (concat "[[elisp:(info)]" "[Link to info]]"))
> 
> I think it shouldn't be a problem to pass the whole agenda line to
> org-offer-links-in-entry. This will not result in duplicate links, since
> org-offer-links-in-entry "uniquifies" the links.
> 
> I've attached a patch.
> 
> The bigger question, however, is why the expression above is even
> showing up in the agenda, since it contains no scheduling information.
> :)
> 
> Best,
> Matt
> 
> 
> >From 58c7621c0c84b9c1930098a098e4559aa516eec0 Mon Sep 17 00:00:00 2001
> From: Matt Lundin <address@hidden>
> Date: Tue, 3 May 2011 15:54:35 -0400
> Subject: [PATCH] Pass entire text of agenda line to org-offer-links-in-entry.
> 
> * lisp/org-agenda.el (org-agenda-open-link): Pass entire text of
>   agenda line to org-offer-links-in-entry.
> 
> This fixes bug noticed by Charles Sebold, in which links that are
> dynamically formatted for the agenda view are ignored.
> http://permalink.gmane.org/gmane.emacs.orgmode/40673
> ---
>  lisp/org-agenda.el |    4 +---
>  1 files changed, 1 insertions(+), 3 deletions(-)
> 
> diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
> index 65f7cea..609edd4 100644
> --- a/lisp/org-agenda.el
> +++ b/lisp/org-agenda.el
> @@ -6879,9 +6879,7 @@ at the text of the entry itself."
>                    (org-get-at-bol 'org-marker)))
>        (buffer (and marker (marker-buffer marker)))
>        (prefix (buffer-substring
> -               (point-at-bol)
> -               (or (text-property-any (point-at-bol) (point-at-eol) 
> 'org-heading t)
> -                   (point-at-bol)))))
> +               (point-at-bol) (point-at-eol))))
>      (cond
>       (buffer
>        (with-current-buffer buffer
> -- 
> 1.7.5
> 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]