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