emacs-orgmode
[Top][All Lists]
Advanced

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

[O] question about performance when having multiple todo blocks from the


From: Rainer Stengele
Subject: [O] question about performance when having multiple todo blocks from the same org files ..
Date: Mon, 13 Jan 2014 14:02:54 +0100
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

Hi.

I have a complex agenda function as can be seen below.
Beside an agenda call I do want to show todos separated in blocks, grouped by 
priority or tags.
I want to show my prio A todos as one block before showing the rest of the 
todos sorted by prio.
I was wondering if Org does run through all the org files again and again in 
order to collect the data wanted
or if there is something like a cache is being filled when running through all 
buffers, collects all todos and then groups, sorts
and is availble for printing out whats wanted.

Thank you for a reply from someone who knows the internals.

Rainer

Org-mode version 8.2.2 (release_8.2.2-193-gf10166)

...
        ("01" "agenda - prio A,B todos - sorted prio up - today"  ;;
         (

          ;; show ONGOING todos first, but only if unscheduled, skip if 
scheduled
          (tags-todo "ONGOING"
                     ((org-agenda-skip-function '(org-agenda-skip-entry-if 
'scheduled))
                      (org-agenda-overriding-header "ONGOING todos: ")))
          (agenda "todays agenda"
                  (
                   ;; (org-agenda-skip-function
                   ;; (lambda nil
                   ;;   (org-agenda-skip-entry-if 'regexp ":ONGOING:")))
                   ;; (org-agenda-skip-entry-if 'regexp ":ONGOING:")))
                   (org-agenda-span 'day)
                   (org-agenda-start-with-log-mode t)
                   (org-agenda-start-with-clockreport-mode t)

                   (org-agenda-overriding-header "Today's Agenda")))

          (alltodo "!!! TODOs Prio A - skip ONGOING todos!!!"
                   (
                    (org-agenda-skip-function (lambda nil
                                                (or (org-agenda-skip-entry-if 
(quote notregexp) "\\=.*\\[#A\\]")
                                                    (org-agenda-skip-entry-if 
'regexp ":ONGOING:")
                                                    (org-agenda-skip-entry-if 
'scheduled 'deadline ))))
                    (org-agenda-overriding-header "!!! TODOs prio A - skip 
ONGOING todos: !!!")
                    ))
          (alltodo "todos Prio B til D - skip ONGOING todos"
                   (
                    (org-agenda-skip-function (lambda nil
                                                (or (org-agenda-skip-entry-if 
(quote notregexp) "\\=.*\\[#B\\|#C\\|#D\\]")
                                                    (org-agenda-skip-entry-if 
'regexp ":ONGOING:")
                                                    (org-agenda-skip-entry-if 
'scheduled 'deadline ))))
                    (org-agenda-overriding-header "All todos prio B til D - 
skip ONGOING todos: ")
                    ))
          )
         ((org-agenda-sorting-strategy '(time-up priority-down todo-state-up))))
...




reply via email to

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