1NMH(7) Miscellaneous Information Manual NMH(7)
2
3
4
6 nmh - new MH message system
7
9 nmh is the name of a powerful message handling system. Rather than
10 being a single comprehensive program, nmh consists of a collection of
11 fairly simple single-purpose programs to send, retrieve, save, and
12 manipulate messages.
13
14 Unlike most mail clients in Unix, nmh is not a closed system which must
15 be explicitly run, then exited when you wish to return to the shell.
16 You may freely intersperse nmh commands with other shell commands,
17 allowing you to read and answer your mail while you have (for example)
18 a compilation running, or search for a file or run programs as needed
19 to find the answer to someone's question before answering their mail.
20
21 The rest of this manual entry is a quick tutorial which will teach you
22 the basics of nmh. You should read the manual entries for the individ‐
23 ual programs for complete documentation (see the section on COMMANDS
24 below).
25
26 To get started using nmh, put the directory “/usr/bin” in your $PATH.
27 Run the install-mh command. If you've never used nmh before, it will
28 create the necessary default files and directories after asking you if
29 you wish it to do so.
30
31 inc moves mail from your system mail drop into your nmh “+inbox”
32 folder, breaking it up into separate files and converting it to nmh
33 format. It prints one line for each message it processes, containing
34 the from field, the subject field and as much of the first line of the
35 message as will fit. It leaves the first message it processes as your
36 current message. You'll need to run inc each time you wish to incorpo‐
37 rate new mail into your nmh file.
38
39 scan prints a list of the messages in your current folder.
40
41 The commands show, next, and prev are used to read specific messages
42 from the current folder. show displays the current message, or a spe‐
43 cific message specified by its number which is passed as an argument.
44 next and prev display, respectively, the message numerically after or
45 before the current message. In all cases, the message displayed
46 becomes the current message. If there is no current message, show may
47 be called with an argument, or next may be used to advance to the first
48 message.
49
50 rmm (remove message) deletes the current message. It may be called,
51 with message numbers passed as arguments, to delete specific messages.
52
53 repl is used to respond to the current message (by default). It places
54 you in the editor with a prototype response form. While you're in the
55 editor, you may peruse the item you're responding to by reading the
56 file @. After completing your response, type “l” to list (review) it,
57 or “s” to send it.
58
59 comp allows you to compose a message by putting you in the editor on a
60 prototype message form, and then lets you send it via the whatnow com‐
61 mand. whatnow also supports easy-to-use management of MIME attachments
62 via its attach and related responses, as described in its man page.
63
64 nmh command arguments are usually called switches. Some switches have
65 a corresponding “-no” switch, which negates all previous occurrences of
66 that switch on the command line. This allows a user to conveniently
67 override, on the command line, a switch in their profile. Switches may
68 be abbreviated as long as there is no ambiguity with another switch of
69 the same command. To avoid ambiguity with any switches that may be
70 added in the future, it is recommended that full switch names be used
71 in durable code such as shell scripts, functions, and aliases.
72
73 Each nmh command may be run with the single switch -help, which causes
74 it to print its available switches, along with any profile components
75 that apply, and then exit.
76
77 All the nmh commands may be run with the single switch -version, which
78 causes them to print the version number of the nmh distribution, and
79 then exit.
80
81 Commands which take a message number as an argument (scan, show, repl,
82 ...) also take one of the words “first”, “prev”, “cur”, “next”, or
83 “last” to indicate (respectively) the first, previous, current, next,
84 or last message in the current folder (assuming they are defined). As
85 a shorthand, “.” is equivalent to “cur”.
86
87 Commands which take a range of message numbers (rmm, scan, show, ...)
88 also take any of the abbreviations:
89
90 <num1>-<num2> Indicates all messages in the range <num1> to <num2>,
91 inclusive. The range must be nonempty.
92
93 all Indicates all messages, i.e., first-last.
94
95 <num>:+N
96 <num>:-N Up to N, where N must be a positive number, messages
97 beginning with (or ending with) message num. Num may
98 be any of the pre-defined symbols first, prev, cur,
99 next or last. The + can be omitted.
100
101 first:N
102 prev:N
103 next:N
104 last:N As many of the first, previous, next, or last N mes‐
105 sages that exist. As above, N can be preceded with -
106 to end the listing at the specified message, or with an
107 optional +.
108
109 Commands that take a folder name (inc, refile, scan, ...) accept the
110 folder name in two formats: “+folder” or “@folder”. In both cases,
111 “folder” can be a “/”-separated path, e.g. “foo/bar”. “+folder” speci‐
112 fies a directory path to a folder. If “folder” starts with “/” then
113 it's an absolute path from the root directory. If it is “.” or “..”,
114 or starts with “./” or “../”, then it's relative to the current working
115 directory. Otherwise it's relative to mh-profile(5)'s “Path”, i.e. as
116 given by `mhpath +`. “@folder” is a shorthand for “+curfolder/folder”;
117 it's a relative path from the current folder. “curfolder” is given by
118 `mhpath`. For example, assuming a Path profile component of Mail,
119
120 scan +inbox scans $HOME/Mail/inbox
121 scan +work/todo scans $HOME/Mail/work/todo
122 scan @todo scans $HOME/Mail/work/todo, if current folder is +work
123 refile @../done refiles to $HOME/Mail/work/done, if the current folder
124 is +work/todo
125 scan +/tmp scans /tmp
126 scan +. scans the current directory
127 refile @. refiles current message to end of current folder.
128
129 There are many other possibilities such as creating multiple folders
130 for different topics, and automatically refiling messages according to
131 subject, source, destination, or content. These are beyond the scope
132 of this manual entry.
133
135 Following is a list of all the nmh commands, grouped loosely according
136 to their role.
137
138 Sending
139 comp(1) compose a message
140 forw(1) forward messages
141 repl(1) reply to a message
142 whatnow(1) prompting front-end for send
143
144 Note that although whatnow provides much of the primary nmh user inter‐
145 face for sending mail, it is almost never invoked manually, but rather
146 is invoked indirectly by one of the above commands, after you've com‐
147 posed a message in your editor, and before you've decided to send it.
148 Here you can add attachments, check the recipient list, decide to quit
149 and send it later, etc.
150
151 Related utilities:
152
153 ali(1) list mail aliases
154 anno(1) annotate messages
155 whom(1) report to whom a message would go
156 dist(1) redistribute a message to additional addresses
157
158 Advanced commands, only sometimes invoked directly:
159
160 mhbuild(1) translate MIME composition draft
161 send(1) send a message
162 sendfiles(1) send multiple files in a MIME message
163
164 Incorporating
165 inc(1) incorporate new mail
166
167 Related utilities:
168
169 burst(1) explode digests into messages
170 msgchk(1) check for messages
171 rcvdist(1) asynchronously redistribute new mail
172 rcvpack(1) append message to file
173 rcvstore(1) asynchronously incorporate new mail
174 slocal(1) asynchronously filter and deliver new mail
175
176 Viewing
177 next(1) show the next message
178 prev(1) show the previous message
179 show(1) show (display) messages
180 scan(1) produce a one line per message scan listing
181 fnext(1) select the next folder with new messages
182 fprev(1) select the previous folder with new messages
183
184 Related utilities, only sometimes invoked directly:
185
186 mhl(1) produce formatted listings of nmh messages
187 mhlist(1) list information about content of MIME messages
188 mhn(1) display/list/store/cache MIME messages
189 mhshow(1) display MIME messages
190 mhstore(1) store contents of MIME messages into files
191
192 Searching
193 Within a folder:
194
195 pick(1) select messages by content
196
197 Across folders:
198
199 new(1) list folders with new messages
200 unseen(1) list new messages in a given set of folders
201 flist(1) list folders with messages in given sequence(s)
202 flists(1) list all folders with messages in given sequence(s)
203 folder(1) set/list current folder/message
204 folders(1) list all folders
205
206 Organizing
207 mark(1) mark messages
208 refile(1) file messages in other folders
209 rmf(1) remove folder
210 rmm(1) remove messages
211 sortm(1) sort messages
212
213 Convenience Wrappers
214 mhmail(1) send or read mail
215
216 Utilities
217 mhfixmsg(1) rewrite MIME messages with various transformations
218 mhparam(1) print nmh profile components
219 mhpath(1) print full pathnames of nmh messages and folders
220 packf(1) compress a folder into a single file
221 prompter(1) prompting editor front end
222 rcvtty(1) report new mail
223
224 Indirectly Invoked Commands
225 ap(8) parse addresses RFC 822-style
226 dp(8) parse dates RFC 822-style
227 fmtdump(8) decode mh-format(5) files
228 install-mh(8) initialize the nmh environment
229 post(8) deliver a message
230
231 Files Used by nmh Commands
232 mh-alias(5) alias file for nmh message system
233 mh-format(5) format file for nmh message system
234 mh-profile(5) user customization for nmh message system
235 mh-tailor(5) mail transport customization for nmh message system
236
237 Formats
238 mh-draft(5) draft folder facility
239 mh-folders(5) nmh message storage format specification
240 mh-mail(5) message format for nmh message system
241 mh-sequence(5) sequence specification for nmh message system
242
244 /usr/bin
245 contains nmh commands
246
247 /etc/nmh
248 contains nmh format files
249
250 /usr/libexec/nmh
251 contains nmh library commands
252
253 $HOME/.mh_profile
254 The user's nmh profile
255
257 install-mh(1), mh-profile(5), mh-chart(7), mh-mime(7)
258
260 Send bug reports, questions, suggestions, and patches to nmh-work‐
261 ers@nongnu.org. That mailing list is relatively quiet, so user ques‐
262 tions are encouraged. Users are also encouraged to subscribe, and view
263 the archives, at https://lists.gnu.org/mailman/listinfo/nmh-workers .
264
265 If problems are encountered with an nmh program, they should be
266 reported to the local maintainers of nmh, if any, or to the mailing
267 list noted above. When doing this, the name of the program should be
268 reported, along with the version information for the program.
269
270 To find out what version of an nmh program is being run, invoke the
271 program with the -version switch. This prints the version of nmh, the
272 host it was compiled on, and the date the program was linked.
273
274 New releases, and other information of potential interest, are
275 announced at http://www.nongnu.org/nmh/
276
277
278
279nmh-1.7.1 2016-09-26 NMH(7)