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
commit77862853ad01b10c02beebab79cc8a48892313f6 (patch)
treed85766205b0138deb4e536349bfe48347fb8ba7f /modules
parenteaef768f97945577200252fa9dec3e2b8a7e7dc6 (diff)
downloaddotemacs-77862853ad01b10c02beebab79cc8a48892313f6.tar.gz
dotemacs-77862853ad01b10c02beebab79cc8a48892313f6.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 3b1e9456..70c7fb6d 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 ""