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
...