3ff187f36422317aab629313b50dad364221102f
[mmh] / man / forw.man
1 .\"
2 .\" %nmhwarning%
3 .\"
4 .TH FORW %manext1% "%nmhdate%" MH.6.8 [%nmhversion%]
5 .SH NAME
6 forw \- forward messages
7 .SH SYNOPSIS
8 .HP 5
9 .na
10 .B forw
11 .RI [ +folder ]
12 .RI [ msgs ]
13 .RB [ \-annotate " | " \-noannotate ]
14 .RB [ \-form
15 .IR formfile ]
16 .RB [ \-format " | " \-noformat ]
17 .RB [ \-filter
18 .IR filterfile ]
19 .RB [ \-inplace " | " \-noinplace ]
20 .RB [ \-mime " | " \-nomime ]
21 .RB [ \-draftfolder
22 .IR +folder ]
23 .RB [ \-draftmessage
24 .IR msg ]
25 .RB [ \-nodraftfolder ]
26 .RB [ \-editor
27 .IR editor ]
28 .RB [ \-noedit ]
29 .RB [ \-whatnowproc
30 .IR program ]
31 .RB [ \-nowhatnowproc ]
32 .RB [ \-dashstuffing " | " \-nodashstuffing ]
33 .RB [ \-build ]
34 .RB [ \-file
35 .IR msgfile ]
36 .RB [ \-version ]
37 .RB [ \-help ]
38 .PP
39 .HP 5
40 .B forw
41 .RI [ +folder ]
42 .RI [ msgs ]
43 .RB [ \-digest
44 .IR list ]
45 .RB [ \-issue
46 .IR number ]
47 .RB [ \-volume
48 .IR number ]
49 [other\ switches\ for\
50 .BR forw ]
51 .RB [ \-version ]
52 .RB [ \-help ]
53 .ad
54 .SH DESCRIPTION
55 .B Forw
56 may be used to prepare a message containing other messages.
57 .PP
58 It constructs the new message from a forms (components) file, with a
59 body composed of the message(s) to be forwarded.  An editor is invoked
60 as in
61 .BR comp ,
62 and after editing is complete, the user is prompted
63 before the message is sent.
64 .PP
65 The default message form contains the following elements:
66 .PP
67 .RS 5
68 .nf
69 %forwcomps%
70 .fi
71 .RE
72 .PP
73 If a file named
74 .RI \*(lq forwcomps \*(rq
75 exists in the user's nmh directory,
76 it will be used instead of this default form.  You may also specify an
77 alternate forms file with the switch
78 .B \-form
79 .IR formfile .
80 .PP
81 If the draft already exists,
82 .B forw
83 will ask you as to the disposition
84 of the draft.  A reply of
85 .B quit
86 will abort
87 .BR forw ,
88 leaving the draft intact;
89 .B replace
90 will replace the existing draft with a blank skeleton; and
91 .B list
92 will display the draft.
93 .PP
94 If the
95 .B \-annotate
96 switch is given, each message being forwarded will
97 be annotated with the lines:
98 .PP
99 .RS 5
100 .nf
101 Forwarded:\ date
102 Forwarded:\ addrs
103 .fi
104 .RE
105 .PP
106 where each address list contains as many lines as required.  This
107 annotation will be done only if the message is sent directly from
108 .BR forw .
109 If the message is not sent immediately from
110 .BR forw ,
111 .RB \*(lq comp
112 .BR \-use \*(rq
113 may be used to re\-edit and send the constructed
114 message, but the annotations won't take place.  Normally annotations
115 are done inplace in order to preserve any links to the message.  You may
116 change this by using the
117 .B \-noinplace
118 switch.
119 .PP
120 See
121 .BR comp (1)
122 for a description of the
123 .B \-editor
124 and
125 .B \-noedit
126 switches.
127 .PP
128 Although
129 .B forw
130 uses a forms (components) file to direct it how to
131 construct the beginning of the draft, it uses a message filter file to
132 direct it as to how each forwarded message should be formatted in the
133 body of the draft.  The filter file for \fIforw\fR should be a standard
134 form file for
135 .BR mhl ,
136 as
137 .B forw
138 will invoke
139 .B mhl
140 to filter (re\-format) the forwarded messages prior to being output to
141 the body of the draft.
142 .PP
143 The switches
144 .BR \-noformat ,
145 .BR \-format ,
146 and
147 .B \-filter
148 .I filterfile
149 specify which message filter file to use.
150 .PP
151 If
152 .B \-noformat
153 is specified (this is the default), then each forwarded
154 message is output into the draft exactly as it appears with no
155 .B mhl
156 filtering.
157 .PP
158 If
159 .B \-format
160 is specified, then a default message filter file is used.
161 This default message filter should be adequate for most users.
162 This default filter
163 .RI \*(lq mhl.forward \*(rq
164 is:
165 .PP
166 .RS 5
167 .nf
168 %mhl_forward%
169 .fi
170 .RE
171 .PP
172 If a file named
173 .RI \*(lq mhl.forward \*(rq
174 exists in the user's nmh
175 directory, it will be used instead of this form.  You may specify an
176 alternate message filter file with the switch
177 .B \-filter
178 .IR filterfile .
179 .PP
180 Each forwarded message is separated with an encapsulation delimiter.
181 By default, any dashes in the first column of the forwarded messages
182 will be prepended with `\-\ ' so that when received, the message is
183 suitable for bursting by
184 .BR burst .
185 This follows the Internet RFC\-934 guidelines.  You may use the flag
186 .B \-nodashstuffing
187 in order
188 to suppress this form of quoting to the forwarded messages.
189 .PP
190 For users of
191 .BR prompter ,
192 by specifying
193 .BR prompter 's
194 .B \-prepend
195 switch in the
196 .I \&.mh\(ruprofile
197 file, any commentary text is entered
198 before the forwarded messages.  (A major win!)
199 .PP
200 To use the MIME rules for encapsulation, specify the
201 .B \-mime
202 switch. This directs
203 .B forw
204 to generate an
205 .B mhbuild
206 composition file. Note that
207 .B nmh
208 will not invoke
209 .B mhbuild
210 automatically, unless you
211 add this line to your
212 .I \&.mh\(ruprofile
213 file:
214 .PP
215 .RS 5
216 .nf
217 automimeproc: 1
218 .fi
219 .RE
220 .PP
221 Otherwise, you must specifically give the command
222 .PP
223 .RS 5
224 .nf
225 What now? mime
226 .fi
227 .RE
228 .PP
229 prior to sending the draft.
230 .PP
231 The
232 .B \-draftfolder
233 .I +folder
234 and
235 .B \-draftmessage
236 .I msg
237 switches invoke the
238 .B nmh
239 draft folder facility.  This is an advanced (and highly
240 useful) feature.  Consult the
241 .BR mh-draft (5)
242 man page for more information.
243 .PP
244 The
245 .B \-editor
246 .I editor
247 switch indicates the editor to use for the
248 initial edit.  Upon exiting from the editor,
249 .B comp
250 will invoke the
251 .B whatnow
252 program.  See
253 .BR whatnow (1)
254 for a discussion of
255 available options.  The invocation of this program can be inhibited
256 by using the
257 .B \-nowhatnowproc
258 switch.  (In truth of fact, it is
259 the
260 .I whatnow
261 program which starts the initial edit.  Hence,
262 .B \-nowhatnowproc
263 will prevent any edit from occurring.)
264 .PP
265 The
266 .B \-build
267 switch is intended to be used by the Emacs mh-e interface to
268 .BR nmh ,
269 and is only present if
270 .B nmh
271 was compiled with support for mh-e. It implies
272 .BR \-nowhatnowproc .
273 It causes a file <mh\-dir>/draft
274 to be created, containing the draft message that would normally be presented
275 to the user for editing.
276 No mail is actually sent. Note that this switch is not guaranteed to
277 be present or to have the same effects in future versions of
278 .BR nmh :
279 it is documented here only for completeness.
280 .PP
281 The
282 .B \-file
283 .I msgfile
284 switch specifies the message to be forwarded as an
285 exact filename rather than as an
286 .B nmh
287 folder and message number. It is
288 intended to be used by the
289 .B msh
290 interface to
291 .BR nmh .
292 This switch implies
293 .BR \-noannotate .
294 The forwarded message is simply
295 copied verbatim into the draft; the processing implied by
296 the
297 .BR \-filter ,
298 .BR \-mime ,
299 and
300 .B \-digest
301 switches is bypassed, and the usual leading and
302 trailing 'Forwarded Message' delimiters are not added.
303 The same caveats apply to this option as to the
304 .B \-build
305 switch.
306 .PP
307 The
308 .B \-digest
309 .IR list ,
310 .B \-issue
311 .IR number ,
312 and
313 .B \-volume
314 .I number
315 switches implement a digest facility for
316 .BR nmh .
317 Specifying these switches enables and/or overloads the following escapes:
318 .PP
319 .RS 5
320 .nf
321 .ta \w'Component  'u +\w'Escape  'u +\w'Returns  'u
322 .I Type Escape  Returns Description
323 component       digest  string  Argument to `\-digest'
324 function        cur     integer Argument to `\-volume'
325 function        msg     integer Argument to `\-issue'
326 .fi
327 .RE
328 .PP
329 Consult the
330 .I "Advanced Features"
331 section of the
332 .B nmh
333 User's Manual for more information on making digests.
334
335 .SH FILES
336 .fc ^ ~
337 .nf
338 .ta \w'%etcdir%/ExtraBigFileName  'u
339 ^%etcdir%/forwcomps~^The standard message skeleton
340 ^or <mh\-dir>/forwcomps~^Rather than the standard skeleton
341 ^%etcdir%/digestcomps~^The message skeleton if `\-digest' is given
342 ^or <mh\-dir>/digestcomps~^Rather than the standard skeleton
343 ^%etcdir%/mhl.forward~^The standard message filter
344 ^or <mh\-dir>/mhl.forward~^Rather than the standard filter
345 ^$HOME/\&.mh\(ruprofile~^The user profile
346 ^<mh\-dir>/draft~^The draft file
347 .fi
348
349 .SH "PROFILE COMPONENTS"
350 .fc ^ ~
351 .nf
352 .ta 2.4i
353 .ta \w'ExtraBigProfileName  'u
354 ^Path:~^To determine the user's nmh directory
355 ^Current\-Folder:~^To find the default current folder
356 ^Draft\-Folder:~^To find the default draft\-folder
357 ^Editor:~^To override the default editor
358 ^Msg\-Protect:~^To set mode when creating a new message (draft)
359 ^fileproc:~^Program to refile the message
360 ^mhlproc:~^Program to filter messages being forwarded
361 ^whatnowproc:~^Program to ask the \*(lqWhat now?\*(rq questions
362 .fi
363
364 .SH "SEE ALSO"
365 mhbuild(1), comp(1), repl(1), send(1), whatnow(1), mh\-format(5),
366 .I "Proposed Standard for Message Encapsulation"
367 (RFC\-934)
368
369 .SH DEFAULTS
370 .nf
371 .RB ` +folder "' defaults to the current folder"
372 .RB ` msgs "' defaults to cur"
373 .RB ` \-noannotate '
374 .RB ` \-nodraftfolder '
375 .RB ` \-noformat '
376 .RB ` \-inplace '
377 .RB ` \-dashstuffing '
378 .RB ` \-nomime '
379 .fi
380
381 .SH CONTEXT
382 If a folder is given, it will become the current folder.
383 The first message forwarded will become the current message.
384
385 .SH BUGS
386 If
387 .I whatnowproc
388 is
389 .BR whatnow ,
390 then
391 .B forw
392 uses a built\-in
393 .BR whatnow ,
394 it does not actually run the
395 .B whatnow
396 program.
397 Hence, if you define your own
398 .IR whatnowproc ,
399 don't call it
400 .B whatnow
401 since
402 .B forw
403 won't run it.
404 .PP
405 When
406 .B forw
407 is told to annotate the messages it forwards, it
408 doesn't actually annotate them until the draft is successfully sent.
409 If from the
410 .IR whatnowproc ,
411 you
412 .B push
413 instead of
414 .BR send ,
415 it's possible to confuse
416 .B forw
417 by re\-ordering the file (e.g. by using
418 .RB \*(lq folder
419 .BR \-pack \*(rq)
420 before the message is successfully sent.
421 .B Dist
422 and
423 .B repl
424 don't have this problem.