todo-mode: Filtering Items

 
 10.1 Filtering Items
 ====================
 
 Todo mode provides three ways to filter items: a general filter for
 items matching a user-entered regular expression, as with the search
 command; and two specific filters, one for diary-displayable items
 (i.e., those lacking ‘todo-nondiary-marker’) and one for top priority
 items (more on the latter below).  The commands for each filter come in
 pairs, one for filtering just the current todo file and one for
 filtering a user-specified list of todo files.  Thus, there are six item
 filtering commands:(1)
 
    • ‘F x x’ (‘todo-filter-regexp-items’)
    • ‘F x m’ (‘todo-filter-regexp-items-multifile’)
    • ‘F y y’ (‘todo-filter-diary-items’)
    • ‘F y m’ (‘todo-filter-diary-items-multifile’)
    • ‘F t t’ (‘todo-filter-top-priorities’)
    • ‘F t m’ (‘todo-filter-top-priorities-multifile’)
 
    There are two ways to specify which files the multifile filtering
 commands apply to.  If there are files you want to filter every time you
 use these commands, customize the option ‘todo-filter-files’.  If you
 leave this option empty (the default), invoking a multifile filtering
 command pops up a buffer similar to the Customization buffer for
 ‘todo-filter-files’, in which you can select files to filter just for
 this invocation.
 
    Diary and top priority items are by definition non-done todo items,
 but when filtering by regular expression, you can extend the scope of
 the command to done items by enabling the option
 ‘todo-filter-done-items’.  Then ‘F x x’ and ‘F x m’ will gather both
 matching todo and matching done items (including done items from any
 archive files corresponding to the selected todo files) into the virtual
 category of filtered items.
 
    There are several ways to specify how many items in each category
 count as top priorities and hence get filtered by ‘F t t’ and ‘F t m’:
 
    • The option ‘todo-top-priorities’ specifies a single default number
      for all categories and all todo files; its default value is 1,
      which means just the highest priority item in every category is
      filtered, unless otherwise specified.
    • The option ‘todo-top-priorities-overrides’ lists file-wide
      overrides of ‘todo-top-priorities’ as well as category-specific
      overrides.  It is empty by default.  However, using the Custom
      facility to set this option would be tedious and error-prone, so
      instead you should use the commands ‘F t s’ and ‘C t s’.  The
      former sets (i.e., overrides) the default number of top priorities
      for all categories in the current todo file, and the latter sets
      the number of top priorities for the current category.  To exclude
      a category or file from filtering by ‘F t t’ and ‘F t m’, set the
      number to ‘0’.
    • You can invoke ‘F t t’ and ‘F t m’ with a numeric prefix argument,
      which specifies the number of top priorities in each category just
      for this invocation, overriding both
      ‘todo-top-priorities-overrides’ and ‘todo-top-priorities’.
 
    ---------- Footnotes ----------
 
    (1) The use of ‘F’ in the key sequences of these commands naturally
 recalls “filter”, but is also consistent with the Todo mode mnemonic key
 binding convention, since the commands involve one or more whole files.