emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] faster agenda with properties support disabled (no org-refresh-p


From: Carsten Dominik
Subject: Re: [O] faster agenda with properties support disabled (no org-refresh-properties)
Date: Sat, 31 Aug 2013 07:58:00 +0200

Hi Daniel,

I have implemented a different version of the patch.  Please take a look at the 
new variable
org-agenda-ignore-drawer-properties.

Regards, and thanks!

- Carsten

On 23.8.2013, at 11:24, Daniel Clemente <address@hidden> wrote:

>>> So I would like to ask: is there a clean way to disable calls to
>>> org-refresh-properties?
>> 
>> No, that would require a patch and a config variable.
>> 
>> - Carsten
>> 
> 
>  I send a patch to do this. Setting this new variable to t reduced 10
> seconds my agenda export time (down from 1 minute 6 seconds) as well
> as the update.
>  You may add a comment about what to expect if your agenda depends on
> property data.
> 
> 
> diff --git a/lisp/org.el b/lisp/org.el
> index 572b797..167e7a8 100644
> --- a/lisp/org.el
> +++ b/lisp/org.el
> @@ -17656,6 +17656,14 @@ is not set, the tables are not re-aligned, etc."
>   :version "24.3"
>   :group 'org-agenda)
> 
> +(defcustom org-agenda-ignore-properties nil
> +  "Avoid updating text properties when building the agenda.
> +Properties are used for effort estimation, appointments, categories.
> +If you don't use these in the agenda, set it to t and it will be faster."
> +  :type 'boolean
> +  :version "24.3"
> +  :group 'org-agenda)
> +
> (defun org-duration-string-to-minutes (s &optional output-to-string)
>   "Convert a duration string S to minutes.
> 
> @@ -18017,9 +18025,11 @@ When a buffer is unmodified, it is just
> killed.  When modified, it is saved
>               ;; this is only run for setting agenda tags from setup
>               ;; file
>               (org-set-regexps-and-options)))
> -         (org-refresh-category-properties)
> -         (org-refresh-properties org-effort-property 'org-effort)
> -         (org-refresh-properties "APPT_WARNTIME" 'org-appt-warntime)
> +         (unless org-agenda-ignore-properties
> +           (org-refresh-category-properties)
> +           (org-refresh-properties org-effort-property 'org-effort)
> +           (org-refresh-properties "APPT_WARNTIME" 'org-appt-warntime)
> +         )
>           (setq org-todo-keywords-for-agenda
>                 (append org-todo-keywords-for-agenda org-todo-keywords-1))
>           (setq org-done-keywords-for-agenda
> 




reply via email to

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