18 Using Sequences

For the whole scoop on MH sequences, refer to ‘mh-sequence’(5)50. As you’ve read, several of the MH-E commands can operate on a sequence, which is a shorthand for a range or group of messages. For example, you might want to forward several messages to a friend or colleague. Here’s how to manipulate sequences. These commands are also available in the ‘Sequence’ menu.

'

Toggle tick mark of range (mh-toggle-tick).

S ?

Display cheat sheet for the commands of the current prefix in minibuffer (mh-prefix-help).

S '

Limit to ticked messages (mh-narrow-to-tick).

S d

Delete range from sequence (mh-delete-msg-from-seq).

S k

Delete sequence (mh-delete-seq).

S l

List all sequences in folder (mh-list-sequences).

S n

Restrict display to messages in sequence (mh-narrow-to-seq).

S p

Add range to sequence (mh-put-msg-in-seq).

S s

Display the sequences in which the current message appears (mh-msg-is-in-seq).

S w

Remove last restriction (mh-widen).

M-x mh-update-sequences

Flush MH-E’s state out to MH.

The ‘mh-sequences’ customization group contains the options associated with sequences.

mh-refile-preserves-sequences-flag

On means that sequences are preserved when messages are refiled (default: ‘on’).

mh-tick-seq

The name of the MH sequence for ticked messages (default: ‘'tick’).

mh-update-sequences-after-mh-show-flag

On means flush MH sequences to disk after message is shown (default: ‘on’).

mh-allowlist-preserves-sequences-flag

On means that sequences are preserved when messages are allowlisted (default: ‘on’).

The following hook is available.

mh-unseen-updated-hook

Hook run after the unseen sequence has been updated (default: nil).

To place a message in a sequence, use S p (mh-put-msg-in-seq). Give S p a range and you can add all the messages in a sequence to another sequence (for example, C-u S p SourceSequence RET DestSequence RET, see Ranges).

One specific use of the S p command is ' (mh-toggle-tick) which adds messages to the ‘tick’ sequence. This sequence can be viewed later with the F ' (mh-index-ticked-messages) command (see Organizing Your Mail with Folders).

You can customize the option mh-tick-seq if you already use the ‘tick’ sequence for your own use. You can also disable all of the ticking functions by choosing the ‘Disable Ticking’ item but there isn’t much advantage to that.

Once you’ve placed some messages in a sequence, you may wish to narrow the field of view to just those messages in the sequence you’ve created. To do this, use S n (mh-narrow-to-seq). You are prompted for the name of the sequence. What this does is show only those messages that are in the selected sequence in the MH-Folder buffer. In addition, it limits further MH-E searches to just those messages. To narrow the view to the messages in the ‘tick’ sequence, use S ' (mh-narrow-to-tick). When you want to widen the view to all your messages again, use S w (mh-widen).

You can see which sequences in which a message appears with the command S s (mh-msg-is-in-seq). Use a prefix argument to display the sequences in which another message appears (as in C-u 42 S s RET). Or, you can list all sequences in a selected folder (default is current folder) with S l (mh-list-sequences). The list appears in a buffer named *MH-E Sequences* (see Miscellaneous Commands, Variables, and Buffers).

If a message is in any sequence (except ‘Previous-Sequence:51 and ‘cur’) when it is refiled, then it will still be in those sequences in the destination folder. If this behavior is not desired, then turn off the option mh-refile-preserves-sequences-flag.

If you want to remove a message (or range, see Ranges) from a sequence, use S d (mh-delete-msg-from-seq). If you want to delete an entire sequence, use S k (mh-delete-seq). In the latter case you are prompted for the sequence to delete. Note that this deletes only the sequence, not the messages in the sequence. If you want to delete the messages, use C-u d (see Reading Your Mail).

Three sequences are maintained internally by MH-E and pushed out to MH when a message is shown. They include the sequence specified by your ‘Unseen-Sequence:’ profile component, ‘cur’, and the sequence listed by the option mh-tick-seq which is ‘tick’ by default. If you do not like this behavior, turn off the option mh-update-sequences-after-mh-show-flag. You can then update the state manually with the x, q, or M-x mh-update-sequences commands.

The hook mh-unseen-updated-hook is run after the unseen sequence has been updated. The variable mh-seen-list can be used by this hook to obtain the list of messages which were removed from the unseen sequence.

With the exceptions of S n and S w, the underlying MH command dealing with sequences is mark52.


Footnotes

(50)

See the section More About Sequences in the MH book.

(51)

See ‘mh-profile’(5)).

(52)

See the section Make Message Bookmarks with mark in the MH book.