From mboxrd@z Thu Jan 1 00:00:00 1970 From: Carsten Dominik Subject: Re: Re: [PATCH] Always return refreshed category Date: Mon, 3 Jan 2011 09:39:20 +0100 Message-ID: References: <1293026785-12467-1-git-send-email-julien@danjou.info> <74C83FF2-959A-4C7D-B161-0C333EEE36DD@gmail.com> <87d3osa42b.fsf@fastmail.fm> <87r5d7xjfv.fsf@fastmail.fm> Mime-Version: 1.0 (Apple Message framework v936) Content-Type: text/plain; charset=UTF-8; format=flowed; delsp=yes Content-Transfer-Encoding: quoted-printable Return-path: Received: from [140.186.70.92] (port=58614 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PZfwv-0003OY-3n for emacs-orgmode@gnu.org; Mon, 03 Jan 2011 03:39:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PZfwt-0000v6-NY for emacs-orgmode@gnu.org; Mon, 03 Jan 2011 03:39:28 -0500 Received: from mail-ey0-f169.google.com ([209.85.215.169]:60185) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PZfwt-0000v1-B3 for emacs-orgmode@gnu.org; Mon, 03 Jan 2011 03:39:27 -0500 Received: by eyh6 with SMTP id 6so2793852eyh.0 for ; Mon, 03 Jan 2011 00:39:26 -0800 (PST) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Julien Danjou Cc: Matt Lundin , emacs-orgmode@gnu.org Hi Julien, neither in the patch nor in the ChangeLog entry I am able to find the refresh for categories in agenda buffer preparation - even though your message states that you have changed this. Can you please take a fresh look and write a fresh patch? Matt, will you be able to test that patch when it comes in? Thanks - Carsten On Dec 27, 2010, at 3:23 PM, Julien Danjou wrote: > On Mon, Dec 27 2010, Julien Danjou wrote: > >> On Fri, Dec 24 2010, Carsten Dominik wrote: >> >>> I have reverted the patch for now. It would be great if the two of >>> you could continue to try to fix it before we make another attempt. >> >> Here's an updated patch with all the fixes above. > > I've re-added a refresh in the prepare, otherwise the categories are =20= > not > being updated in the agenda views. > =46rom f84b0aaa50854ebfcd70008646411e9809874346 Mon Sep 17 00:00:00 = 2001 > From: Julien Danjou > Date: Wed, 22 Dec 2010 15:00:27 +0100 > Subject: [PATCH] Always return refreshed category > > * org-icalendar.el (org-print-icalendar-entries): Do not manually > refresh categories. > > * org-clock.el (org-clock-insert-selection-line): Do not manually > refresh categories. > > * org.el (org-get-category): Refresh categories if no category found. > (org-entry-properties): Do not manually refresh categories. > > It seems a very bad thing to call manually for a category refresh. It > seems better to try to refresh if we do not have a category. > > Signed-off-by: Julien Danjou > --- > lisp/org-archive.el | 1 - > lisp/org-clock.el | 4 +--- > lisp/org-icalendar.el | 1 - > lisp/org.el | 13 ++++++------- > 4 files changed, 7 insertions(+), 12 deletions(-) > > diff --git a/lisp/org-archive.el b/lisp/org-archive.el > index e56b01f..c32ee23 100644 > --- a/lisp/org-archive.el > +++ b/lisp/org-archive.el > @@ -226,7 +226,6 @@ this heading." > (save-excursion > (org-back-to-heading t) > ;; Get context information that will be lost by moving the tree > - (org-refresh-category-properties) > (setq category (org-get-category) > todo (and (looking-at org-todo-line-regexp) > (match-string 2)) > diff --git a/lisp/org-clock.el b/lisp/org-clock.el > index 93b0b52..17fccae 100644 > --- a/lisp/org-clock.el > +++ b/lisp/org-clock.el > @@ -442,9 +442,7 @@ pointing to it." > (ignore-errors > (goto-char marker) > (setq file (buffer-file-name (marker-buffer marker)) > - cat (or (org-get-category) > - (progn (org-refresh-category-properties) > - (org-get-category))) > + cat (org-get-category) > heading (org-get-heading 'notags) > prefix (save-excursion > (org-back-to-heading t) > diff --git a/lisp/org-icalendar.el b/lisp/org-icalendar.el > index d4034fe..a1bc5ad 100644 > --- a/lisp/org-icalendar.el > +++ b/lisp/org-icalendar.el > @@ -302,7 +302,6 @@ When COMBINE is non nil, add the category to =20 > each line." > scheduledp deadlinep todo prefix due start > tmp pri categories location summary desc uid alarm > (sexp-buffer (get-buffer-create "*ical-tmp*"))) > - (org-refresh-category-properties) > (save-excursion > (goto-char (point-min)) > (while (re-search-forward re1 nil t) > diff --git a/lisp/org.el b/lisp/org.el > index e190b84..61180ca 100644 > --- a/lisp/org.el > +++ b/lisp/org.el > @@ -8142,7 +8142,10 @@ call CMD." > > (defun org-get-category (&optional pos) > "Get the category applying to position POS." > - (get-text-property (or pos (point)) 'org-category)) > + (let ((pos (or pos (point)))) > + (or (get-text-property pos 'org-category) > + (progn (org-refresh-category-properties) > + (get-text-property pos 'org-category))))) > > (defun org-refresh-category-properties () > "Refresh category text properties in the buffer." > @@ -8150,8 +8153,7 @@ call CMD." > ((null org-category) > (if buffer-file-name > (file-name-sans-extension > - (file-name-nondirectory buffer-file-name)) > - "???")) > + (file-name-nondirectory buffer-file-name)))) > ((symbolp org-category) (symbol-name org-category)) > (t org-category))) > beg end cat pos optionp) > @@ -13482,10 +13484,7 @@ things up because then unnecessary parsing =20= > is avoided." > 'add_times)) > props)) > (unless (assoc "CATEGORY" props) > - (setq value (or (org-get-category) > - (progn (org-refresh-category-properties) > - (org-get-category)))) > - (push (cons "CATEGORY" value) props)) > + (push (cons "CATEGORY" (org-get-category)) props)) > (append sum-props (nreverse props))))))) > > (defun org-entry-get (pom property &optional inherit literal-nil) > --=20 > 1.7.2.3 > > > --=20 > Julien Danjou > =E2=9D=B1 http://julien.danjou.info - Carsten