-.TH SORTM %manext1% "%nmhdate%" MH.6.8 [%nmhversion%]
-.\"
+.TH SORTM %manext1% 2014-03-23 "%nmhversion%"
+.
.\" %nmhwarning%
-.\"
+.
.SH NAME
-sortm \- sort messages
+sortm \- sort nmh messages
.SH SYNOPSIS
.HP 5
.na
.B sortm
+.RB [ \-help ]
+.RB [ \-version ]
.RI [ +folder ]
.RI [ msgs ]
-.RB [ \-all | \-noall ]
+.RB [ \-all " | " \-noall ]
.RB [ \-datefield
.IR field ]
.RB [ \-textfield
.RB [ \-limit
.IR days ]
.RB [ \-nolimit ]
+.RB [ \-check " | " \-nocheck ]
.RB [ \-verbose " | " \-noverbose ]
-.RB [ \-version ]
-.RB [ \-help ]
.ad
.SH DESCRIPTION
-.B Sortm
+.B sortm
sorts the specified messages in the named folder according
to the chronological order of the \*(lqDate:\*(rq field of each message.
.PP
.B sortm
reports that as an error and exits with non-zero status.
.B \-noall
-is most useful in the user's profile, to avoid inadvertant sorting of
+is most useful in the user's profile, to avoid inadvertent sorting of
an entire folder. The
.B \-all
switch can then be used on the command line to disable it. Of course,
.B sortm
to sort messages by the specified text field. All characters except
letters and numbers are stripped and the resulting strings are sorted
-datefield\-major, textfield\-minor, using a case insensitive
+datefield-major, textfield-minor, using a case insensitive
comparison. If this field is \*(lqsubject\*(rq, any leading "re:" is
stripped off.
.PP
With
.B \-limit
.IR 0 ,
-the sort is instead simply textfield\-major.
+the sort is instead simply textfield-major.
.PP
For example, to order a folder by date-major, grouping messages with
the same subject on the same date together, use:
.RS 5
sortm -textfield subject +folder
.RE
+.PP
+.B sortm
+always issues a warning for each message that is missing a
+\*(lqDate:\*(rq field, has a \*(lqDate:\*(rq field that cannot be
+parsed, or has a format error in any header field. With the
+.B \-check
+switch,
+.B sortm
+inhibits all modifications to the folder if there are any such
+messages, and exits with non-zero status. With the default of
+.BR \-nocheck ,
+.B sortm
+sorts messages with a missing or invalid
+\*(lqDate:\*(rq field using their file modification times.
+.PP
+When ordering messages based on their dates, if they have the same
+dates, their original message order is preserved.
.SH FILES
.fc ^ ~
.nf
-.ta \w'%etcdir%/ExtraBigFileName 'u
-^$HOME/\&.mh\(ruprofile~^The user profile
+.ta \w'%nmhetcdir%/ExtraBigFileName 'u
+^$HOME/.mh_profile~^The user profile
.fi
.SH "PROFILE COMPONENTS"
.fc ^ ~
^Current\-Folder:~^To find the default current folder
.fi
.SH "SEE ALSO"
-folder(1)
+.IR folder (1)
.SH DEFAULTS
.nf
.RB ` +folder "' defaults to the current folder"
.RB ` \-notextfield '
.RB ` \-noverbose '
.RB ` \-nolimit '
+.RB ` \-nocheck '
.fi
.SH CONTEXT
If a folder is given, it will become the current folder. If the current
Messages which were in the folder, but not specified by `msgs', used to
be moved to the end of the folder; now such messages are left untouched.
.PP
-.B Sortm
+.B sortm
sometimes did not preserve the message numbering in a folder
(e.g., messages 1, 3, and 5, might have been renumbered to 1, 2, 3 after
sorting). This was a bug, and has been fixed. To compress the message
.RB \*(lq "folder\ \-pack" \*(rq
as always.
.SH BUGS
-If
-.B sortm
-encounters a message without a date\-field, or if the
-message has a date\-field that
-.B sortm
-cannot parse, then
-.B sortm
-attempts to keep the message in the same relative position. This does
-not always work. For instance, if the first message encountered lacks
-a date which can be parsed, then it will usually be placed at the end
-of the messages being sorted.
-.PP
When
.B sortm
complains about a message which it can't temporally
order, it complains about the message number
-.B prior
+.I prior
to sorting.
It should indicate what the message number will be
.B after