mh-e: Threading

 
 16 Viewing Message Threads
 **************************
 
 MH-E groups messages by “threads” which are messages that are part of
 the same discussion and usually all have the same ‘Subject:’ header
 field.  Other ways to organize messages in a folder include limiting
DONTPRINTYET  (SeeLimits) or using full-text indexed searches (*noteDONTPRINTYET  (SeeLimits) or using full-text indexed searches (See
 Searching).
 
    A thread begins with a single message called a “root”.  All replies
 to the same message are “siblings” of each other.  Any message that has
 replies to it is an “ancestor” of those replies.
 
    There are several commands that you can use to navigate and operate
 on threads.
 
 ‘T ?’
      Display cheat sheet for the commands of the current prefix in
      minibuffer (‘mh-prefix-help’).
 ‘T o’
      Refile (output) thread into folder (‘mh-thread-refile’).
 ‘T d’
      Delete thread (‘mh-thread-delete’).
 ‘T t’
      Toggle threaded view of folder (‘mh-toggle-threads’).
 ‘T n’
      Display next sibling (‘mh-thread-next-sibling’).
 ‘T p’
      Display previous sibling (‘mh-thread-previous-sibling’).
 ‘T u’
      Display ancestor of current message (‘mh-thread-ancestor’).
 
    The ‘mh-thread’ customization group contains one option.
 
 ‘mh-show-threads-flag’
      On means new folders start in threaded mode (default: ‘off’).
 
    Threading large number of messages can be time consuming so the
 option ‘mh-show-threads-flag’ is turned off by default.  If you turn on
 this option, then threading will be done only if the number of messages
 being threaded is less than ‘mh-large-folder’.  In any event, threading
 can be turned on (and off) with the command ‘T t’ (‘mh-toggle-threads’).
 
    There are a few commands to help you navigate threads.  If you do not
 care for the way a particular thread has turned, you can move up the
 chain of messages with the command ‘T u’ (‘mh-thread-ancestor’.  At any
 point you can use ‘T n’ (‘mh-thread-next-sibling’ or ‘T p’
 (‘mh-thread-previous-sibling’) to jump to the next or previous sibling,
 skipping the sub-threads.  The command ‘T u’ can also take a prefix
 argument to jump to the message that started everything.
 
    There are threaded equivalents for the commands that delete and
 refile messages.  For example, ‘T o’ (‘mh-thread-refile’) refiles the
 current message and all its children.  Similarly, the command ‘T d’
 (‘mh-thread-delete’) deletes the current message and all its children.
 These commands do not refile or delete sibling messages.  See
 Navigating, for a description of the similar command ‘k’
 (‘mh-delete-subject-or-thread’).
 
    If you find that threading is too slow, it may be that you have
 ‘mh-large-folder’ set too high.  Also, threading is one of the few
 features of MH-E that really benefits from compiling.  If you haven’t
 compiled MH-E, I encourage you to do so(1).
 
    ---------- Footnotes ----------
 
    (1) If you’re not sure if MH-E has been byte-compiled, you could try
 running ‘locate mh-thread.elc’ or otherwise find MH-E on your system and
 ensure that ‘mh-thread.elc’ exists.  If you have multiple versions and
 you find that one is compiled but the other is not, then go into your
 ‘*scratch*’ buffer in Emacs, enter ‘load-path C-j’, and ensure that the
 byte-compiled version appears first in the ‘load-path’.  If you find
 that MH-E is not compiled and you installed MH-E yourself, please refer
 to the installation directions in the file ‘README’ in the distribution.