is there a straightforward way to exclude an item starting with
from the agenda?
it seems like there is probably an easy way to do this in the docs by setting a variable in init.el but I haven't found it.
Emacs Stack Exchange is a question and answer site for those using, extending or developing Emacs. It only takes a minute to sign up.Sign up to join this community
Make CANCELLED one of your TODO states and make sure that it is one of the DONE states. The agenda does not show DONE states by default. For example, add something like the following to the top of the file:
#+TODO: TODO DELEGATED WAITING | CANCELLED DONE
C-c C-c on the above line to make sure Org knows about it (or close the file and reopen it). A heading in a TODO state (those to the left of the vertical bar) is potentially shown in the agenda; if it is in a DONE state (those to the right of the vertical bar), it will not be.
This also gives you the ability to change the TODO state using standard methods (
C-c C-t in the file,
t in the agenda).
To do the equivalent setup using
org-todo-keywords, add something like this to your init file:
(setq org-todo-keywords '("TODO" "DELEGATED" "WAITING" "|" "CANCELLED" "DONE"))
adding a stringified vertical bar at the appropriate place - see TODO keywords as workflow states in the Org mode manual.
There are two variables whose settings might affect the above:
org-agenda-skip-deadline-if-done affect some aspects of whether an item is shown in the agenda: if these variables are non-nil, then a scheduled (resp. deadline) item will not be shown in the agenda if it is in a DONE state, but if they are nil, it will be shown but only on the relevant date. I recommend that you set them to non-nil for now and revisit them later if necessary.
You should definitely read the TODO chapter of the Org mode manual.