summaryrefslogtreecommitdiff
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
commit8e579508a1e23e66513d2e8f97844d0eab2156d7 (patch)
treef430c3481e5423e863c6ade4c5410cc3a38333dd /modules
parent3f44db4f7be24c6daacad0956f019610aeb5f868 (diff)
downloaddotemacs-8e579508a1e23e66513d2e8f97844d0eab2156d7.tar.gz
dotemacs-8e579508a1e23e66513d2e8f97844d0eab2156d7.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 ""