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
commit86efd33c0e00b5c86acb4f00591f081e7f87558d (patch)
treef430c3481e5423e863c6ade4c5410cc3a38333dd /modules
parentd0098d9beefe2602491b226587ed9d80331966c4 (diff)
downloaddotemacs-86efd33c0e00b5c86acb4f00591f081e7f87558d.tar.gz
dotemacs-86efd33c0e00b5c86acb4f00591f081e7f87558d.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 ""