Updating inc
[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
343 .SH "PROFILE COMPONENTS"
344 .fc ^ ~
345 .nf
346 .ta 2.4i
347 .ta \w'ExtraBigProfileName  'u
348 ^Path:~^To determine the user's nmh directory
349 ^Current\-Folder:~^To find the default current folder
350 ^Draft\-Folder:~^To find the default draft\-folder
351 ^Editor:~^To override the default editor
352 ^Msg\-Protect:~^To set mode when creating a new message (draft)
353 ^fileproc:~^Program to refile the message
354 ^mhlproc:~^Program to filter messages being forwarded
355 ^whatnowproc:~^Program to ask the \*(lqWhat now?\*(rq questions
356
357 .SH "SEE ALSO"
358 mhbuild(1), comp(1), repl(1), send(1), whatnow(1), mh\-format(5),
359 .I "Proposed Standard for Message Encapsulation"
360 (RFC\-934)
361
362 .SH "DEFAULTS"
363 .nf
364 .RB ` +folder "' defaults to the current folder"
365 .RB ` msgs "' defaults to cur"
366 .RB ` \-noannotate '
367 .RB ` \-nodraftfolder '
368 .RB ` \-noformat '
369 .RB ` \-inplace '
370 .RB ` \-dashstuffing '
371 .RB ` \-nomime '
372
373 .SH CONTEXT
374 If a folder is given, it will become the current folder.
375 The first message forwarded will become the current message.
376
377 .SH BUGS
378 If
379 .I whatnowproc
380 is
381 .BR whatnow ,
382 then
383 .B forw
384 uses a built\-in
385 .BR whatnow ,
386 it does not actually run the
387 .B whatnow
388 program.
389 Hence, if you define your own
390 .IR whatnowproc ,
391 don't call it
392 .B whatnow
393 since
394 .B forw
395 won't run it.
396 .PP
397 When
398 .B forw
399 is told to annotate the messages it forwards, it
400 doesn't actually annotate them until the draft is successfully sent.
401 If from the
402 .IR whatnowproc ,
403 you
404 .B push
405 instead of
406 .BR send ,
407 it's possible to confuse
408 .B forw
409 by re\-ordering the file (e.g. by using
410 .RB \*(lq folder
411 .BR \-pack \*(rq)
412 before the message is successfully sent.
413 .B Dist
414 and
415 .B repl
416 don't have this problem.