feat(org): factor Org TODO groups into multiple agenda views

This commit is contained in:
Kiana Sheibani 2024-08-14 05:17:30 -04:00
parent 3e4287a405
commit eeb35292ab
Signed by: toki
GPG key ID: 6CB106C25E86A9F7

View file

@ -3644,38 +3644,44 @@ By customizing ~org-super-agenda-groups~ via a let-binding in my custom agenda v
(-interpose ", ") (-interpose ", ")
(apply #'concat prefix)))) (apply #'concat prefix))))
(defvar ~/org-todo-groups nil
"`org-super-agenda' groups for TODO entries of agenda.")
(after! org (after! org
(setq org-agenda-custom-commands (setq ~/org-todo-groups
'((:name "Next/In Progress"
:todo ("NEXT" "STRT" "WAIT" "HOLD"))
(:name "Important"
:priority "A"
:order 1)
(:name "Goals"
:tag "goal"
:order 9)
(:name "Notes to Intake"
:tag "notes"
:order 10)
(:name "Assignments"
:tag "assign"
:order 2)
(:auto-map (lambda (item)
(~/org-agenda-section-by-link
"Goal: " "goal" item))
:order 3)
(:auto-map (lambda (item)
(~/org-agenda-section-by-link
"Area: " "area" item))
:order 4))
org-agenda-custom-commands
'(("o" "Overview" '(("o" "Overview"
((agenda "") ((agenda "")
(alltodo "" (alltodo "" ((org-super-agenda-groups
((org-super-agenda-groups (-insert-at 1 '(:discard
'((:name "Next/In Progress" (:date t
:todo ("NEXT" "STRT" "WAIT" "HOLD")) :deadline t
(:discard :scheduled t))
(:date t ~/org-todo-groups))))))
:deadline t ("g" "Grouped list of TODO entries"
:scheduled t)) alltodo "" ((org-super-agenda-groups ~/org-todo-groups))))))
(:name "Important"
:priority "A"
:order 1)
(:name "Goals"
:tag "goal"
:order 9)
(:name "Notes to Intake"
:tag "notes"
:order 10)
(:name "Assignments"
:tag "assign"
:order 2)
(:order-multi
(3
(:auto-map (lambda (item)
(~/org-agenda-section-by-link
"Goal: " "goal" item)))
(:auto-map (lambda (item)
(~/org-agenda-section-by-link
"Area: " "area" item))))))))))))))
#+end_src #+end_src
This "overview" agenda command is very nice. It's so nice, in fact, that it's almost always the only agenda view I want to use! Having to go through the dispatcher every time I want to access it is annoying and unnecessary. This "overview" agenda command is very nice. It's so nice, in fact, that it's almost always the only agenda view I want to use! Having to go through the dispatcher every time I want to access it is annoying and unnecessary.