aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-13 13:04:50 -0500
committerCraig Jennings <c@cjennings.net>2026-05-13 13:04:50 -0500
commit5dbe032d3a9746a32fe40785eadda78f3e0476ac (patch)
tree92a97eb376f32e4db2ab1d0e3476e201d1dbf9ba /modules
parent2db16de600c0edc7bbe723f97041f1a46bd4a611 (diff)
downloaddotemacs-5dbe032d3a9746a32fe40785eadda78f3e0476ac.tar.gz
dotemacs-5dbe032d3a9746a32fe40785eadda78f3e0476ac.zip
fix(org-agenda): skip CANCELLED entries from main agenda SCHEDULE
The "d" command's (agenda ...) block had no org-agenda-skip-function. The global org-agenda-skip-scheduled-if-done is nil. CANCELLED tasks with a SCHEDULED date rendered in the forward-looking schedule unfiltered. The fix adds an org-agenda-skip-function to the SCHEDULE block: (org-agenda-skip-entry-if 'todo '("CANCELLED")). The scope is deliberate. Only CANCELLED is filtered, not DONE or FAILED. A scheduled DONE task is a record of when something happened and stays visible. Tests cover the configuration: the form must appear on the agenda block and must not appear on the overdue, hi-pri, or priority-B blocks.
Diffstat (limited to 'modules')
-rw-r--r--modules/org-agenda-config.el4
1 files changed, 4 insertions, 0 deletions
diff --git a/modules/org-agenda-config.el b/modules/org-agenda-config.el
index 3b1e94566..70c7fb6d7 100644
--- a/modules/org-agenda-config.el
+++ b/modules/org-agenda-config.el
@@ -296,6 +296,10 @@ KEYWORDS must be a list of strings."
((org-agenda-start-day "0d")
(org-agenda-span 8)
(org-agenda-start-on-weekday nil)
+ ;; CANCELLED entries with a SCHEDULED date shouldn't appear
+ ;; in the forward-looking schedule -- they're dead weight.
+ (org-agenda-skip-function
+ '(org-agenda-skip-entry-if 'todo '("CANCELLED")))
(org-agenda-overriding-header cj/main-agenda-schedule-title)
(org-agenda-prefix-format " %i %-15:c%?-15t% s")))
(alltodo ""