Next: , Previous: , Up: TODO extensions   [Contents][Index]

5.2.3 Multiple keyword sets in one file

Sometimes you may want to use different sets of TODO keywords in parallel. For example, you may want to have the basic TODO/DONE, but also a workflow for bug fixing, and a separate state indicating that an item has been canceled (so it is not DONE, but also does not require action). Your setup would then look like this:

(setq org-todo-keywords
      '((sequence "TODO" "|" "DONE")
        (sequence "REPORT" "BUG" "KNOWNCAUSE" "|" "FIXED")
        (sequence "|" "CANCELED")))

The keywords should all be different, this helps Org mode to keep track of which subsequence should be used for a given entry. In this setup, C-c C-t only operates within a subsequence, so it switches from DONE to (nothing) to TODO, and from FIXED to (nothing) to REPORT. Therefore you need a mechanism to initially select the correct sequence. Besides the obvious ways like typing a keyword or using completion, you may also apply the following commands:

C-u C-u C-c C-t
C-S-right
C-S-left

These keys jump from one TODO subset to the next. In the above example, C-u C-u C-c C-t or C-S-right would jump from TODO or DONE to REPORT, and any of the words in the second row to CANCELED. Note that the C-S- key binding conflict with shift-selection-mode (see Conflicts).

S-right
S-left

S-<left> and S-<right> and walk through all keywords from all sets, so for example S-<right> would switch from DONE to REPORT in the example above. See also Conflicts, for a discussion of the interaction with shift-selection-mode.

Next: , Previous: , Up: TODO extensions   [Contents][Index]