File: sortm.man

package info (click to toggle)
nmh 1.8-4
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 7,860 kB
  • sloc: ansic: 50,445; sh: 22,697; makefile: 1,138; lex: 740; perl: 509; yacc: 265
file content (172 lines) | stat: -rw-r--r-- 4,359 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
.TH SORTM %manext1% 2014-03-23 "%nmhversion%"
.
.\" %nmhwarning%
.
.SH NAME
sortm \- sort nmh messages
.SH SYNOPSIS
.HP 5
.na
.B sortm
.RB [ \-help ]
.RB [ \-version ]
.RI [ +folder ]
.RI [ msgs ]
.RB [ \-all " | " \-noall ]
.RB [ \-datefield
.IR field ]
.RB [ \-textfield
.IR field ]
.RB [ \-notextfield ]
.RB [ \-limit
.IR days ]
.RB [ \-nolimit ]
.RB [ \-check " | " \-nocheck ]
.RB [ \-verbose " | " \-noverbose ]
.ad
.SH DESCRIPTION
.B sortm
sorts the specified messages in the named folder according
to the chronological order of the \*(lqDate:\*(rq field of each message.
.PP
If no messages are specified, the default is all messages in the folder.
However, if no messages are specified and the
.B \-noall
switch is enabled, then
.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 inadvertent sorting of
an entire folder.  The
.B \-all
switch can then be used on the command line to disable it.  Of course,
a message specification of
.I all
can be used in any case.
.PP
The
.B \-verbose
switch directs
.B sortm
to tell the user the general
actions that it is taking to place the folder in sorted order.
.PP
The
.B \-datefield
.I field
switch tells
.B sortm
the name of the field to
use when making the date comparison.  If the user has a special field in
each message, such as \*(lqBB\-Posted:\*(rq or \*(lqDelivery\-Date:\*(rq,
then the
.B \-datefield
switch can be used to direct
.B sortm
which field to examine.
.PP
The
.B \-textfield
.I field
switch causes
.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
comparison.  If this field is \*(lqsubject\*(rq, any leading "re:" is
stripped off.
.PP
With
.B \-textfield
.IR field ,
if
.B \-limit
.I days
is specified, messages
with the same textfields that are dated within `days' of each other
appear together.  Specifying
.B \-nolimit
makes the limit infinity.
With
.B \-limit
.IR 0 ,
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:
.PP
.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'%nmhetcdir%/ExtraBigFileName  'u
^$HOME/.mh_profile~^The user profile
.fi
.SH "PROFILE COMPONENTS"
.fc ^ ~
.nf
.ta 2.4i
.ta \w'ExtraBigProfileName  'u
^Path:~^To determine the user's nmh directory
^Current\-Folder:~^To find the default current folder
.fi
.SH "SEE ALSO"
.IR folder (1)
.SH DEFAULTS
.nf
.RB ` +folder "' defaults to the current folder"
.RB ` msgs "' defaults to all without \-noall, has no default with \-noall"
.RB ` \-all '
.RB ` \-datefield "' defaults to date"
.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
message is moved,
.B sortm
will preserve its status as current.
.SH HISTORY
Timezones used to be ignored when comparing dates: they aren't any more.
.PP
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
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
numbering in a folder, use
.RB \*(lq "folder\ \-pack" \*(rq
as always.
.SH BUGS
When
.B sortm
complains about a message which it can't temporally
order, it complains about the message number
.I prior
to sorting.
It should indicate what the message number will be
.B after
sorting.