Clarified description of clobber -auto/-suffix per Ralph's suggestion.
[mmh] / man / dist.man
1 .\"
2 .\" %nmhwarning%
3 .\"
4 .TH DIST %manext1% "%nmhdate%" MH.6.8 [%nmhversion%]
5 .SH NAME
6 dist \- redistribute a message to additional addresses
7 .SH SYNOPSIS
8 .HP 5
9 .na
10 .B dist
11 .RI [ +folder ]
12 .RI [ msg ]
13 .RB [ \-form
14 .IR formfile ]
15 .RB [ \-annotate " | " \-noannotate ]
16 .RB [ \-inplace " | " \-noinplace ]
17 .RB [ \-draftfolder
18 .IR +folder ]
19 .RB [ \-draftmessage
20 .IR msg ]
21 .RB [ \-nodraftfolder ]
22 .RB [ \-editor
23 .IR editor ]
24 .RB [ \-noedit ]
25 .RB [ \-width
26 .IR columns ]
27 .RB [ \-from
28 .IR address ]
29 .RB [ \-to
30 .IR address ]
31 .RB [ \-cc
32 .IR address ]
33 .RB [ \-fcc
34 .IR +folder ]
35 .RB [ \-whatnowproc
36 .IR program ]
37 .RB [ \-nowhatnowproc ]
38 .RB [ \-atfile ]
39 .RB [ \-noatfile ]
40 .RB [ \-version ]
41 .RB [ \-help ]
42 .ad
43 .SH DESCRIPTION
44 .B Dist
45 is similar to
46 .BR forw .
47 It prepares the specified message
48 for redistribution to addresses that (presumably) are not on the original
49 address list.
50 .PP
51 The default message form contains the following elements:
52 .PP
53 .RS 5
54 .nf
55 Resent-From: {from switch} or <Local-Mailbox> or <username@hostname>
56 Resent-To: {to switch} or blank
57 Resent-cc: {cc switch} or blank
58 Resent-fcc: {fcc switch} or blank
59 .fi
60 .RE
61 .PP
62 If a file named
63 .RI \*(lq distcomps \*(rq
64 exists in the user's nmh directory, it
65 will be used instead of this default form.  You may specify an alternate
66 forms file with the switch
67 .B \-form
68 .IR formfile .
69 Forms are processed via the
70 .B nmh
71 template system; see
72 .BR mh\-format (5)
73 for details.  Components from the redistributed message are available
74 as standard component escapes in the forms file.
75 .PP
76 In addition to the standard
77 .BR mh\-format (5)
78 escapes, the following
79 .I component
80 escapes are also supported:
81 .PP
82 .RS 5
83 .nf
84 .ta \w'Escape   'u +\w'Returns  'u
85 .I "Escape      Returns Description"
86 fcc     string  Any folders specified with `\-fcc\ folder'
87 nmh\-from       string  Addresses specified with `\-from\ address'
88 nmh\-to string  Addresses specified with `\-to\ address'
89 nmh\-cc string  Addresses specified with `\-cc\ address'
90 .fi
91 .RE
92 .PP
93 See the
94 .BR forw (1)
95 man page for descriptions of the
96 .BR \-from ,
97 .BR \-to ,
98 .BR \-cc ,
99 and
100 .B \-fcc
101 switches.
102 .PP
103 If the draft already exists,
104 .B dist
105 will ask you as to the disposition of the draft.  A reply of
106 .B quit
107 will abort
108 .BR dist ,
109 leaving the draft intact;
110 .B replace
111 will replace the existing draft with a blank skeleton; and
112 .B list
113 will display the draft.
114 .PP
115 Only those addresses in
116 .RI \*(lq Resent\-To: \*(rq,
117 .RI \*(lq Resent\-cc: \*(rq,
118 and
119 .RI \*(lq Resent\-Bcc: \*(rq
120 will be sent.  Also, a
121 .RI \*(lq "Resent\-Fcc: folder" \*(rq
122 will be honored (see
123 .BR send (1)).
124 Note that with
125 .BR dist ,
126 the draft should contain only
127 .RI \*(lq Resent\-xxx: \*(rq
128 fields and no body.  The headers and the body of
129 the original message are copied to the draft when the message is sent.
130 Use care in constructing the headers for the redistribution.
131 .PP
132 Because the draft is minimal, the
133 .BR prompter (1)
134 editor is quite useful with
135 .BR dist .
136 .PP
137 If the
138 .B \-annotate
139 switch is given, the  message being distributed will
140 be annotated with the lines:
141
142      Resent:\ date
143      Resent:\ addrs
144
145 where each address list contains as many lines as required.  This
146 annotation will be done only if the message is sent directly from
147 .BR dist .
148 If the message is not sent immediately from
149 .BR dist ,
150 .RB \*(lq comp
151 .BR \-use \*(rq
152 may be used to re\-edit and send the constructed
153 message, but the annotations won't take place.  Normally annotations are
154 done inplace in order to preserve any links to the message.  You may use
155 the
156 .B \-noinplace
157 switch to change this.
158 .PP
159 See
160 .BR comp (1)
161 for a description of the
162 .B \-editor
163 and
164 .B \-noedit
165 switches.  Note that while in the editor, the message being resent
166 is available through a link named \*(lq@\*(rq (assuming the default
167 .IR whatnowproc ).
168 In addition, the actual pathname of the message is
169 stored in the environment variable
170 .BR $editalt ,
171 and the pathname of
172 the folder containing the message is stored in the environment variable
173 .BR $mhfolder .
174 The creation of the \*(lq@\*(rq file and associated environment variables
175 can be controlled via the
176 .B \-atfile
177 and
178 .B \-noatfile
179 options.
180 .PP
181 The
182 .B \-draftfolder
183 .I +folder
184 and
185 .B \-draftmessage
186 .I msg
187 switches invoke the
188 .B nmh
189 draft folder facility.  This is an advanced (and highly
190 useful) feature.  Consult the
191 .BR mh-draft (5)
192 man page for more information.
193 .PP
194 Upon exiting from the editor,
195 .B dist
196 will invoke the
197 .B whatnow
198 program.  See
199 .BR whatnow (1)
200 for a discussion of available options.  The invocation of this
201 program can be inhibited by using the
202 .B \-nowhatnowproc
203 switch.  (In truth of fact, it is the
204 .B whatnow
205 program which starts the initial edit.  Hence,
206 .B \-nowhatnowproc
207 will prevent any edit from occurring.)
208
209 .SH FILES
210 .fc ^ ~
211 .nf
212 .ta \w'%etcdir%/ExtraBigFileName  'u
213 ^%etcdir%/distcomps~^The standard message skeleton
214 ^or <mh\-dir>/distcomps~^Rather than the standard skeleton
215 ^$HOME/\&.mh\(ruprofile~^The user profile
216 ^<mh\-dir>/draft~^The draft file
217 .fi
218
219 .SH "PROFILE COMPONENTS"
220 .fc ^ ~
221 .nf
222 .ta 2.4i
223 .ta \w'ExtraBigProfileName  'u
224 ^Path:~^To determine the user's nmh directory
225 ^Current\-Folder:~^To find the default current folder
226 ^Draft\-Folder:~^To find the default draft\-folder
227 ^Editor:~^To override the default editor
228 ^fileproc:~^Program to refile the message
229 ^whatnowproc:~^Program to ask the \*(lqWhat now?\*(rq questions
230 .fi
231
232 .SH "SEE ALSO"
233 comp(1), forw(1), prompter(1), repl(1), send(1), whatnow(1)
234
235 .SH DEFAULTS
236 .nf
237 .RB ` +folder "' defaults to the current folder"
238 .RB ` msg "' defaults to cur"
239 .RB ` \-noannotate '
240 .RB ` \-nodraftfolder '
241 .RB ` \-inplace '
242 .RB ` \-noatfile '
243 .fi
244
245 .SH CONTEXT
246 If a folder is given, it will become the current folder.  The message
247 distributed will become the current message.
248
249 .SH HISTORY
250 .B Dist
251 originally used headers of the form
252 .RI \*(lq Distribute\-xxx: \*(rq
253 instead of
254 .RI \*(lq Resent\-xxx: \*(rq.
255 In order to conform with the ARPA Internet standard, RFC\-822, the
256 .RI \*(lq Resent\-xxx: \*(rq
257 form is now used.
258 .B Dist
259 will recognize
260 .RI \*(lq Distribute\-xxx: \*(rq
261 type headers and automatically convert them to
262 .RI \*(lq Resent\-xxx: \*(rq.
263
264 .SH BUGS
265 .B Dist
266 does not rigorously check the message being distributed
267 for adherence to the transport standard, but
268 .B post
269 called by
270 .B send
271 does.  The
272 .B post
273 program will balk (and rightly so) at poorly formatted messages, and
274 .B dist
275 won't correct things for you.
276 .PP
277 If
278 .I whatnowproc
279 is
280 .BR whatnow ,
281 then
282 .B comp
283 uses a built\-in
284 .BR whatnow ,
285 it does not actually run the
286 .B whatnow
287 program.
288 Hence, if you define your own
289 .IR whatnowproc ,
290 don't call it
291 .B whatnow
292 since
293 .B comp
294 won't run it.
295 .PP
296 If your current working directory is not writable, the link named
297 \*(lq@\*(rq is not available.