annotate conf/doc/mhn.rf @ 12:441a2190cfae

Lion fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 21 Apr 2012 13:10:49 +0900
parents bce86c4163a3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1 .\" @(MHWARNING)
12
441a2190cfae Lion fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
2 .\" @(#)$Id: mhn.rf,v 1.1.1.1 2005/04/18 14:46:03 kono Exp $
0
bce86c4163a3 Initial revision
kono
parents:
diff changeset
3 .SC MHN 1
bce86c4163a3 Initial revision
kono
parents:
diff changeset
4 .NA
bce86c4163a3 Initial revision
kono
parents:
diff changeset
5 mhn \- multi-media MH
bce86c4163a3 Initial revision
kono
parents:
diff changeset
6 .SY
bce86c4163a3 Initial revision
kono
parents:
diff changeset
7 mhn
bce86c4163a3 Initial revision
kono
parents:
diff changeset
8 \%[\%[+folder] \%[msgs] | \%[\-file\0file]]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
9 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
10 \%[\-part\0number]... \%[\-type\0content]...
bce86c4163a3 Initial revision
kono
parents:
diff changeset
11 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
12 \%[\-list\0\%[\-headers]\0\%[\-noheaders]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
13 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
14 \%[\-realsize]\0\%[\-norealsize]] \%[-nolist]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
15 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
16 \%[\-show\0\%[\-serialonly]\0\%[\-noserialonly]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
17 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
18 \%[\-form\0formfile]\0\%[\-pause]\0\%[\-nopause]] \%[\-noshow]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
19 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
20 \%[\-store\0\%[\-auto]\0\%[\-noauto]] \%[\-nostore]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
21 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
22 \%[\-cache] \%[\-nocache] \%[\-rcache\0policy] \%[\-wcache\0policy]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
23 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
24 \%[\-check]\0\%[\-nocheck]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
25 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
26 \%[\-ebcdicsafe]\0\%[\-noebcdicsafe]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
27 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
28 \%[\-rfc934mode]\0\%[\-norfc934mode]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
29 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
30 \%[\-verbose]\0\%[\-noverbose]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
31 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
32 \%[\-help]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
33 .DE
bce86c4163a3 Initial revision
kono
parents:
diff changeset
34 The \fImhn\fR command manipulates multi-media messages as specified in
bce86c4163a3 Initial revision
kono
parents:
diff changeset
35 RFC 1521.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
36
bce86c4163a3 Initial revision
kono
parents:
diff changeset
37 Four action switches direct the operation of \fImhn\fR,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
38 namely `\-list', `\-show', `\-store', and `-cache'.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
39 Any of these switches may be used concurrently.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
40 Normally these action switches will operate on the content of each of the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
41 named messages.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
42 However,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
43 by using the `\-part' and `\-type' switches,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
44 the scope of the operation can be focused on particular
bce86c4163a3 Initial revision
kono
parents:
diff changeset
45 subparts (of a multipart content) and/or particular content types.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
46
bce86c4163a3 Initial revision
kono
parents:
diff changeset
47 A part specification consists of a series of numbers separated by dots.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
48 For example,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
49 in a multipart content containing three parts,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
50 these would be named as 1, 2, and 3, respectively.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
51 If part 2 was also a multipart content containing two parts,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
52 these would be named as 2.1 and 2.2, respectively.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
53 Note that the `\-part' switch is effective for only messages
bce86c4163a3 Initial revision
kono
parents:
diff changeset
54 containing a multipart content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
55 If a message has some other kind of content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
56 or if the part is itself another multipart content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
57 the `\-part' switch will not prevent the content from being acted upon.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
58
bce86c4163a3 Initial revision
kono
parents:
diff changeset
59 A content specification consists of a content type and a subtype.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
60 The initial list of \*(lqstandard\*(rq content types and subtypes can be found
bce86c4163a3 Initial revision
kono
parents:
diff changeset
61 in RFC 1521.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
62 .ne 18
bce86c4163a3 Initial revision
kono
parents:
diff changeset
63 A list of commonly used contents is briefly reproduced here:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
64 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
65 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
66 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
67 .ta \w'application 'u
bce86c4163a3 Initial revision
kono
parents:
diff changeset
68 Type Subtypes
bce86c4163a3 Initial revision
kono
parents:
diff changeset
69 ---- --------
bce86c4163a3 Initial revision
kono
parents:
diff changeset
70 text plain
bce86c4163a3 Initial revision
kono
parents:
diff changeset
71 multipart mixed, alternative, digest, parallel
bce86c4163a3 Initial revision
kono
parents:
diff changeset
72 message rfc822, partial, external-body
bce86c4163a3 Initial revision
kono
parents:
diff changeset
73 application octet-stream, postscript
bce86c4163a3 Initial revision
kono
parents:
diff changeset
74 image jpeg, gif, x-pbm, x-pgm, x-ppm, x-xwd
bce86c4163a3 Initial revision
kono
parents:
diff changeset
75 audio basic
bce86c4163a3 Initial revision
kono
parents:
diff changeset
76 video mpeg
bce86c4163a3 Initial revision
kono
parents:
diff changeset
77 .re
bce86c4163a3 Initial revision
kono
parents:
diff changeset
78 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
79 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
80 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
81 Subtypes are mandatory.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
82 .PP
bce86c4163a3 Initial revision
kono
parents:
diff changeset
83 To specify a content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
84 regardless of its subtype,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
85 just use the name of the content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
86 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
87 \*(lqaudio\*(rq.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
88 To specify a specific subtype,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
89 separate the two with a slash,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
90 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
91 \*(lqaudio/basic\*(rq.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
92 Note that regardless of the values given to the `\-type' switch,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
93 a multipart content (of any subtype listed above) is always acted upon.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
94 Further note that if the `\-type' switch is used,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
95 and it is desirable to act on a message/external-body content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
96 then the `\-type' switch must be used twice:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
97 once for message/external-body and once for the content externally referenced.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
98
bce86c4163a3 Initial revision
kono
parents:
diff changeset
99 Each content may optionally have an integrity check associated with it.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
100 If present and the `-check' switch is given,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
101 then \fImhn\fR will attempt to verify the integrity of the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
102
bce86c4163a3 Initial revision
kono
parents:
diff changeset
103 The option `\-file\ file' directs \fImhn\fR to use the specified
bce86c4163a3 Initial revision
kono
parents:
diff changeset
104 file as the source message, rather than a message from
bce86c4163a3 Initial revision
kono
parents:
diff changeset
105 a folder.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
106 Note that the file should be a validly formatted message,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
107 just like any other \fIMH\fR message.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
108 It should \fBNOT\fR be in mail drop format
bce86c4163a3 Initial revision
kono
parents:
diff changeset
109 (to convert a file in mail drop format to a folder of \fIMH\fR messages,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
110 see \fIinc\fR\0(1)).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
111
bce86c4163a3 Initial revision
kono
parents:
diff changeset
112 .Uh "Listing the Contents"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
113 The `\-list' switch tells \fImhn\fR to list the table of contents
bce86c4163a3 Initial revision
kono
parents:
diff changeset
114 associated with the named messages.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
115 The `\-headers' switch indicates that a one-line banner should be
bce86c4163a3 Initial revision
kono
parents:
diff changeset
116 displayed above the listing.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
117 The `\-realsize' switch tells \fImhn\fR to evaluate the \*(lqnative\*(rq
bce86c4163a3 Initial revision
kono
parents:
diff changeset
118 (decoded) format of each content prior to listing.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
119 This provides an accurate count at the expense of a small delay.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
120
bce86c4163a3 Initial revision
kono
parents:
diff changeset
121 .Uh "Showing the Contents"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
122 The `\-show' switch tells \fImhn\fR to display the contents of the named
bce86c4163a3 Initial revision
kono
parents:
diff changeset
123 messages.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
124 The headers of the message are displayed with the \fImhlproc\fR,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
125 using format file \fImhl.headers\fR.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
126 (The choice of format file can be overridden by the `\-form\0formfile' switch.)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
127
bce86c4163a3 Initial revision
kono
parents:
diff changeset
128 \fImhn\fR will look for information in the user's profile to determine
bce86c4163a3 Initial revision
kono
parents:
diff changeset
129 how the different contents should be displayed.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
130 This is accomplished by consulting a display string,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
131 and executing it under \fB/bin/sh\fR,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
132 with the standard input set to the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
133 .ne 16
bce86c4163a3 Initial revision
kono
parents:
diff changeset
134 The display string may contain these escapes:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
135 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
136 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
137 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
138 .ta \w'%F 'u
bce86c4163a3 Initial revision
kono
parents:
diff changeset
139 %a additional arguments
bce86c4163a3 Initial revision
kono
parents:
diff changeset
140 %e exclusive execution
bce86c4163a3 Initial revision
kono
parents:
diff changeset
141 %f filename containing content
bce86c4163a3 Initial revision
kono
parents:
diff changeset
142 %F %e, %f, and stdin is terminal not content
bce86c4163a3 Initial revision
kono
parents:
diff changeset
143 %l display listing prior to displaying content
bce86c4163a3 Initial revision
kono
parents:
diff changeset
144 %p %l, and ask for confirmation
bce86c4163a3 Initial revision
kono
parents:
diff changeset
145 %s subtype
bce86c4163a3 Initial revision
kono
parents:
diff changeset
146 %d content description
bce86c4163a3 Initial revision
kono
parents:
diff changeset
147 .re
bce86c4163a3 Initial revision
kono
parents:
diff changeset
148 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
149 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
150 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
151 For those display strings containing the e- or F-escape,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
152 \fImhn\fR will execute at most one of these at any given time.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
153 Although the F-escape expands to be the filename containing the content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
154 the e-escape has no expansion as far as the shell is concerned.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
155
bce86c4163a3 Initial revision
kono
parents:
diff changeset
156 When the p-escape prompts for confirmation,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
157 typing INTR (usually control-C) will tell \fImhn\fR not to display
bce86c4163a3 Initial revision
kono
parents:
diff changeset
158 that content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
159 (The p-escape can be disabled by specifying `\-nopause'.)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
160 Further,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
161 when \fImhn\fR is display a content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
162 typing QUIT (usually control-\\) will tell \fImhn\fR to wrap things up
bce86c4163a3 Initial revision
kono
parents:
diff changeset
163 immediately.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
164
bce86c4163a3 Initial revision
kono
parents:
diff changeset
165 Note that if the content being displayed is multipart,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
166 but not one of the subtypes listed above,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
167 then the f- and F-escapes expand to multiple filenames,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
168 one for each subordinate content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
169 Further,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
170 stdin is not redirected from the terminal to the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
171
bce86c4163a3 Initial revision
kono
parents:
diff changeset
172 First,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
173 \fImhn\fR will look for an entry of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
174 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
175 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
176 mhn-show-<type>/<subtype>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
177 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
178 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
179 to determine the command to use to display the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
180 If this isn't found,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
181 \fImhn\fR will look for an entry of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
182 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
183 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
184 mhn-show-<type>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
185 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
186 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
187 to determine the display command.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
188 .ne 10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
189 If this isn't found,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
190 \fImhn\fR has two default values:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
191 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
192 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
193 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
194 mhn-show-text/plain: %pmoreproc '%F'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
195 mhn-show-message/rfc822: %pshow -file '%F'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
196 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
197 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
198 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
199 If neither apply,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
200 \fImhn\fR will check to see if the message has a application/octet-stream
bce86c4163a3 Initial revision
kono
parents:
diff changeset
201 content with parameter \*(lqtype=tar\*(rq.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
202 If so,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
203 \fImhn\fR will use an appropriate command.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
204 If not,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
205 \fImhn\fR will complain.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
206
bce86c4163a3 Initial revision
kono
parents:
diff changeset
207 .ne 10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
208 Example entries might be:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
209 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
210 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
211 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
212 mhn-show-audio/basic: raw2audio 2>/dev/null | play
bce86c4163a3 Initial revision
kono
parents:
diff changeset
213 mhn-show-image: xv '%f'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
214 mhn-show-application/PostScript: lpr -Pps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
215 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
216 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
217 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
218 Note that when using the f- or F-escape,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
219 it's a good idea to use single-quotes around the escape.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
220 This prevents misinterpretation by the shell of any funny characters
bce86c4163a3 Initial revision
kono
parents:
diff changeset
221 that might be present in the filename.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
222
bce86c4163a3 Initial revision
kono
parents:
diff changeset
223 Because the text content might be in a non-ASCII character set,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
224 when \fImhn\fR encounters a \*(lqcharset\*(rq parameter for this content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
225 it checks to see whether the environment variable $MM_CHARSET is set
bce86c4163a3 Initial revision
kono
parents:
diff changeset
226 and whether the value of this environment variable is equal to the value of
bce86c4163a3 Initial revision
kono
parents:
diff changeset
227 the charset parameter.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
228 If not,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
229 then
bce86c4163a3 Initial revision
kono
parents:
diff changeset
230 \fImhn\fR will look for an entry of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
231 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
232 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
233 mhn-charset-<charset>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
234 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
235 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
236 which should contain a command creating an environment to render the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
237 character set.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
238 This command string should containing a single \*(lq%s\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
239 which will be filled-in with the command to display the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
240
bce86c4163a3 Initial revision
kono
parents:
diff changeset
241 An example entry might be:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
242 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
243 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
244 mhn-charset-iso-8859-1: xterm -fn '-*-*-medium-r-normal-*-*-120-*-*-c-*-iso8859-*' -e %s
bce86c4163a3 Initial revision
kono
parents:
diff changeset
245 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
246 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
247 Note that many pagination programs strip off the high-order bit.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
248 However,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
249 newer releases of the \fIless\fR program have modest support for
bce86c4163a3 Initial revision
kono
parents:
diff changeset
250 single-octet character sets.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
251 The source to \fIless\fR version 177,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
252 which has such support,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
253 is found in the MH source tree under \fBmiscellany/less-177\fR.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
254 In order to view messages sent in the ISO 8859/1 character set using
bce86c4163a3 Initial revision
kono
parents:
diff changeset
255 \fIless\fR,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
256 .ne 9
bce86c4163a3 Initial revision
kono
parents:
diff changeset
257 put these lines in your \&.login file:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
258 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
259 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
260 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
261 setenv LESSCHARSET latin1
bce86c4163a3 Initial revision
kono
parents:
diff changeset
262 setenv LESS "-f"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
263 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
264 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
265 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
266 The first line tells \fIless\fR to use 8859/1 definition for determing
bce86c4163a3 Initial revision
kono
parents:
diff changeset
267 whether a character is \*(lqnormal\*(rq, \*(lqcontrol\*(lq, or
bce86c4163a3 Initial revision
kono
parents:
diff changeset
268 \*(lqbinary\*(rq.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
269 The second line tells \fIless\fR not to warn you if it encounters a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
270 file that has non-ASCII characters.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
271 Then,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
272 simply set the \fBmoreproc\fR profile entry to \fIless\fR,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
273 and it will get called automatically.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
274 (To handle other single-octet character sets,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
275 look at the \fIless\fR\0(1) manual entry for information about the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
276 \fBLESSCHARDEF\fR environment variable.)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
277
bce86c4163a3 Initial revision
kono
parents:
diff changeset
278 Finally,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
279 \fImhn\fR will process each message serially\0--\0it won't start showing
bce86c4163a3 Initial revision
kono
parents:
diff changeset
280 the next message until all the commands executed to display the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
281 current message have terminated.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
282 In the case of a multipart content (of any subtype listed above),
bce86c4163a3 Initial revision
kono
parents:
diff changeset
283 the content contains advice indicating if the parts should be
bce86c4163a3 Initial revision
kono
parents:
diff changeset
284 displayed serially or in parallel.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
285 Because this may cause confusion,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
286 particularly on uni-window displays,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
287 the `\-serialonly' switch can be given to tell \fImhn\fR to never
bce86c4163a3 Initial revision
kono
parents:
diff changeset
288 display parts in parallel.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
289
bce86c4163a3 Initial revision
kono
parents:
diff changeset
290 .Uh "Storing the Contents"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
291 The `\-store' switch tells \fImhn\fR to store the contents of the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
292 named messages in \*(lqnative\*(rq (decoded) format.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
293 Two things must be determined:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
294 the directory to store the content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
295 and the filenames.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
296 Files are written in the directory given by the \fBmhn-storage\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
297 profile entry,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
298 .ne 6
bce86c4163a3 Initial revision
kono
parents:
diff changeset
299 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
300 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
301 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
302 mhn-storage: /tmp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
303 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
304 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
305 If this entry isn't present,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
306 the current working directory is used.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
307
bce86c4163a3 Initial revision
kono
parents:
diff changeset
308 \fImhn\fR will look for information in the user's profile to determine
bce86c4163a3 Initial revision
kono
parents:
diff changeset
309 how the different contents should be stored.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
310 This is achieved through the use of a formatting string,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
311 .ne 13
bce86c4163a3 Initial revision
kono
parents:
diff changeset
312 which may contain these escapes:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
313 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
314 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
315 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
316 .ta \w'%P 'u
bce86c4163a3 Initial revision
kono
parents:
diff changeset
317 %m message number
bce86c4163a3 Initial revision
kono
parents:
diff changeset
318 %P .part
bce86c4163a3 Initial revision
kono
parents:
diff changeset
319 %p part
bce86c4163a3 Initial revision
kono
parents:
diff changeset
320 %s subtype
bce86c4163a3 Initial revision
kono
parents:
diff changeset
321 .re
bce86c4163a3 Initial revision
kono
parents:
diff changeset
322 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
323 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
324 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
325 If the content isn't part of a multipart (of any subtype listed above) content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
326 the p-escapes are ignored.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
327 Note that if the formatting string starts with a \*(lq+\*(rq character,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
328 then these escapes are ignored,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
329 and the content is stored in the named folder.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
330 (A formatting string consisting solely of a \*(lq+\*(rq character
bce86c4163a3 Initial revision
kono
parents:
diff changeset
331 indicates the current folder.)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
332 Further,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
333 a formatting string consisting solely of a \*(lq-\*(rq character
bce86c4163a3 Initial revision
kono
parents:
diff changeset
334 indicates the standard-output.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
335
bce86c4163a3 Initial revision
kono
parents:
diff changeset
336 First,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
337 \fImhn\fR will look for an entry of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
338 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
339 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
340 mhn-store-<type>/<subtype>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
341 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
342 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
343 to determine the formatting string.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
344 If this isn't found,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
345 \fImhn\fR will look for an entry of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
346 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
347 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
348 mhn-store-<type>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
349 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
350 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
351 to determine the formatting string.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
352 If this isn't found,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
353 \fImhn\fR will check to see if the content is application/octet-stream
bce86c4163a3 Initial revision
kono
parents:
diff changeset
354 with parameter \*(lqtype=tar\*(rq.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
355 If so,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
356 \fImhn\fR will choose an appropriate filename.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
357 If the content is not application/octet-stream,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
358 then \fImhn\fR will check to see if the content is a message.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
359 If so,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
360 \fImhn\fR will use the value \*(lq+\*(rq.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
361 If not,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
362 \fImhn\fR will use the value \*(lq%m%P.%s\*(rq.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
363
bce86c4163a3 Initial revision
kono
parents:
diff changeset
364 Note that if the formatting string starts with a '/',
bce86c4163a3 Initial revision
kono
parents:
diff changeset
365 then content will be stored in the full path given
bce86c4163a3 Initial revision
kono
parents:
diff changeset
366 (rather than using the value of \fBmhn-storage\fR or the current working
bce86c4163a3 Initial revision
kono
parents:
diff changeset
367 directory.)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
368 Similarly,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
369 if the formatting string starts with a '|',
bce86c4163a3 Initial revision
kono
parents:
diff changeset
370 then \fImhn\fR will execute a command which should ultimately store
bce86c4163a3 Initial revision
kono
parents:
diff changeset
371 the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
372 Note that before executing the command,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
373 \fImhn\fR will change to the appropriate directory.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
374 Also note that if the formatting string starts with a '|',
bce86c4163a3 Initial revision
kono
parents:
diff changeset
375 then \fImhn\fR will also honor the a-escape when processing the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
376 formatting string.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
377
bce86c4163a3 Initial revision
kono
parents:
diff changeset
378 .ne 10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
379 Example entries might be:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
380 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
381 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
382 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
383 mhn-store-text: %m%P.txt
bce86c4163a3 Initial revision
kono
parents:
diff changeset
384 mhn-store-audio/basic: | raw2audio -e ulaw -s 8000 -c 1 > %m%P.au
bce86c4163a3 Initial revision
kono
parents:
diff changeset
385 mhn-store-application/PostScript: %m%P.ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
386 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
387 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
388 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
389 Further,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
390 note that when asked to store a content containing a partial message,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
391 \fImhn\fR will try to locate all of the portions and combine them accordingly.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
392 Thus,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
393 if someone's sent you a message in several parts,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
394 you might put them all in their own folder and do:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
395 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
396 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
397 mhn all -store
bce86c4163a3 Initial revision
kono
parents:
diff changeset
398 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
399 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
400 This will store exactly one message,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
401 containing the sum of the parts.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
402 Note that if \fImhn\fR can not locate each part,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
403 it will not store anything.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
404
bce86c4163a3 Initial revision
kono
parents:
diff changeset
405 Finally,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
406 if the `\-auto' switch is given and the content contains information
bce86c4163a3 Initial revision
kono
parents:
diff changeset
407 indicating the filename the content should be stored as
bce86c4163a3 Initial revision
kono
parents:
diff changeset
408 (and if the filename doesn't begin with a '/'),
bce86c4163a3 Initial revision
kono
parents:
diff changeset
409 then the filename from the content will be used instead.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
410
bce86c4163a3 Initial revision
kono
parents:
diff changeset
411 .Uh "External Access"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
412 For contents of type message/external-body,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
413 .ne 12
bce86c4163a3 Initial revision
kono
parents:
diff changeset
414 \fImhn\fR supports these access-types:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
415 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
416 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
417 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
418 afs
bce86c4163a3 Initial revision
kono
parents:
diff changeset
419 anon-ftp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
420 ftp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
421 local-file
bce86c4163a3 Initial revision
kono
parents:
diff changeset
422 mail-server
bce86c4163a3 Initial revision
kono
parents:
diff changeset
423 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
424 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
425 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
426 For the \*(lqanon-ftp\*(rq and \*(lqftp\*(rq access types,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
427 if your system supports a SOCKETs interface to TCP/IP,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
428 then \fImhn\fR will use a built-in FTP client.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
429 Otherwise,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
430 \fImhn\fR will look for the \fBmhn-access-ftp\fR profile entry,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
431 .ne 6
bce86c4163a3 Initial revision
kono
parents:
diff changeset
432 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
433 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
434 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
435 mhn-access-ftp: myftp.sh
bce86c4163a3 Initial revision
kono
parents:
diff changeset
436 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
437 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
438 to determine the pathname of a program to perform the FTP retrieval.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
439 .ne 14
bce86c4163a3 Initial revision
kono
parents:
diff changeset
440 This program is invoked with these arguments:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
441 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
442 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
443 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
444 domain name of FTP-site
bce86c4163a3 Initial revision
kono
parents:
diff changeset
445 username
bce86c4163a3 Initial revision
kono
parents:
diff changeset
446 password
bce86c4163a3 Initial revision
kono
parents:
diff changeset
447 remote directory
bce86c4163a3 Initial revision
kono
parents:
diff changeset
448 remote filename
bce86c4163a3 Initial revision
kono
parents:
diff changeset
449 local filename
bce86c4163a3 Initial revision
kono
parents:
diff changeset
450 \*(lqascii\*(rq or \*(lqbinary\*(rq
bce86c4163a3 Initial revision
kono
parents:
diff changeset
451 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
452 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
453 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
454 The program should terminate with a zero-valued exit-status if the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
455 retrieval is successful.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
456
bce86c4163a3 Initial revision
kono
parents:
diff changeset
457 .Uh "The Content Cache"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
458 When \fImhn\fR encounters an external content containing a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
459 \*(lqContent-ID:\*(rq field,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
460 and if the content allows caching,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
461 then depending on the caching behavior of \fImhn\fR,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
462 the content might be read from or written to a cache.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
463
bce86c4163a3 Initial revision
kono
parents:
diff changeset
464 The caching behavior of \fImhn\fR is controlled with
bce86c4163a3 Initial revision
kono
parents:
diff changeset
465 the `\-rcache' and `\-wcache' switches,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
466 which define the policy for reading from,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
467 and writing to,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
468 the cache, respectively.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
469 One of four policies may be specified:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
470 \*(lqpublic\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
471 indicating that \fImhn\fR should make use of a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
472 publically-accessible content cache;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
473 \*(lqprivate\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
474 indicating that \fImhn\fR should make use of the user's
bce86c4163a3 Initial revision
kono
parents:
diff changeset
475 private content cache;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
476 \*(lqnever\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
477 indicating that \fImhn\fR should never make use of caching;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
478 and,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
479 \*(lqask\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
480 indicating that \fImhn\fR should ask the user.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
481
bce86c4163a3 Initial revision
kono
parents:
diff changeset
482 There are two directories where contents may be cached:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
483 the profile entry \fBmhn-cache\fR names a directory containing
bce86c4163a3 Initial revision
kono
parents:
diff changeset
484 world-readable contents,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
485 and,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
486 the profile entry \fBmhn-private-cache\fR names a directory containing
bce86c4163a3 Initial revision
kono
parents:
diff changeset
487 private contents.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
488 The former should be an absolute (rooted) directory name.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
489 .ne 6
bce86c4163a3 Initial revision
kono
parents:
diff changeset
490 For example,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
491 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
492 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
493 mhn-cache: /tmp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
494 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
495 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
496 might be used if you didn't care that the cache got wiped after each reboot
bce86c4163a3 Initial revision
kono
parents:
diff changeset
497 of the system.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
498 The latter is interpreted relative to the user's MH directory,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
499 if not rooted,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
500 .ne 6
bce86c4163a3 Initial revision
kono
parents:
diff changeset
501 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
502 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
503 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
504 mhn-private-cache: .cache
bce86c4163a3 Initial revision
kono
parents:
diff changeset
505 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
506 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
507 (which is the default value).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
508
bce86c4163a3 Initial revision
kono
parents:
diff changeset
509 .Uh "Caching the Contents"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
510 When you encounter a content of type message/external-body with access type
bce86c4163a3 Initial revision
kono
parents:
diff changeset
511 \*(lqmail-server\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
512 \fImhn\fR will ask you if may send a message to a mail-server
bce86c4163a3 Initial revision
kono
parents:
diff changeset
513 requesting the content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
514 .ne 14
bce86c4163a3 Initial revision
kono
parents:
diff changeset
515 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
516 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
517 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
518 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
519 % show 1
bce86c4163a3 Initial revision
kono
parents:
diff changeset
520 Retrieve content by asking mail-server@...
bce86c4163a3 Initial revision
kono
parents:
diff changeset
521
bce86c4163a3 Initial revision
kono
parents:
diff changeset
522 SEND file
bce86c4163a3 Initial revision
kono
parents:
diff changeset
523
bce86c4163a3 Initial revision
kono
parents:
diff changeset
524 ? yes
bce86c4163a3 Initial revision
kono
parents:
diff changeset
525 mhn: request sent
bce86c4163a3 Initial revision
kono
parents:
diff changeset
526 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
527 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
528 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
529 Regardless of your decision,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
530 \fImhn\fR can't perform any other processing on the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
531
bce86c4163a3 Initial revision
kono
parents:
diff changeset
532 However,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
533 if \fImhn\fR is allowed to request the content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
534 then when it arrives,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
535 there should be a top-level \*(lqContent-ID:\*(rq field which
bce86c4163a3 Initial revision
kono
parents:
diff changeset
536 corresponds to the value in the original message/external-body content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
537 You should now use the `-cache' switch to tell \fImhn\fR to enter the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
538 arriving content into the content cache,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
539 .ne 8
bce86c4163a3 Initial revision
kono
parents:
diff changeset
540 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
541 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
542 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
543 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
544 % mhn -cache 2
bce86c4163a3 Initial revision
kono
parents:
diff changeset
545 caching message 2 as file ...
bce86c4163a3 Initial revision
kono
parents:
diff changeset
546 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
547 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
548 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
549 You can then re-process the original message/external-body content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
550 and \*(lqthe right thing should happen\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
551 .ne 8
bce86c4163a3 Initial revision
kono
parents:
diff changeset
552 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
553 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
554 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
555 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
556 % show 1
bce86c4163a3 Initial revision
kono
parents:
diff changeset
557 \0...
bce86c4163a3 Initial revision
kono
parents:
diff changeset
558 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
559 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
560
bce86c4163a3 Initial revision
kono
parents:
diff changeset
561 .Uh "Composing the Contents"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
562 The \fImhn\fR program can also be used as a simple editor to aid in
bce86c4163a3 Initial revision
kono
parents:
diff changeset
563 composing multi-media messages.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
564 When invoked by a \fIwhatnow\fR program,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
565 \fImhn\fR will expect the body of the draft to be formatted as an
bce86c4163a3 Initial revision
kono
parents:
diff changeset
566 \*(lq\fImhn\fR composition file.\*(rq
bce86c4163a3 Initial revision
kono
parents:
diff changeset
567
bce86c4163a3 Initial revision
kono
parents:
diff changeset
568 .ne 59
bce86c4163a3 Initial revision
kono
parents:
diff changeset
569 The syntax of this is straight-forward:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
570 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
571 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
572 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
573 body ::= 1*(content | EOL)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
574
bce86c4163a3 Initial revision
kono
parents:
diff changeset
575 content ::= directive | plaintext
bce86c4163a3 Initial revision
kono
parents:
diff changeset
576
bce86c4163a3 Initial revision
kono
parents:
diff changeset
577 directive ::= "#" type "/" subtype
bce86c4163a3 Initial revision
kono
parents:
diff changeset
578 0*(";" attribute "=" value)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
579 [ "(" comment ")" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
580 [ "<" id ">" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
581 [ "[" description "]" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
582 [ filename ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
583 EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
584
bce86c4163a3 Initial revision
kono
parents:
diff changeset
585 | "#@" type "/" subtype
bce86c4163a3 Initial revision
kono
parents:
diff changeset
586 0*(";" attribute "=" value)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
587 [ "(" comment ")" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
588 [ "<" id ">" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
589 [ "[" description "]" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
590 external-parameters
bce86c4163a3 Initial revision
kono
parents:
diff changeset
591 EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
592
bce86c4163a3 Initial revision
kono
parents:
diff changeset
593 | "#forw"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
594 [ "<" id ">" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
595 [ "[" description "]" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
596 [ "+"folder ] [ 0*msg ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
597 EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
598
bce86c4163a3 Initial revision
kono
parents:
diff changeset
599 | "#begin"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
600 [ "<" id ">" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
601 [ "[" description "]" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
602 [ "alternative"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
603 | "parallel"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
604 | something-else ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
605 EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
606 1*body
bce86c4163a3 Initial revision
kono
parents:
diff changeset
607 "#end" EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
608
bce86c4163a3 Initial revision
kono
parents:
diff changeset
609 plaintext ::= [ "Content-Description:"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
610 description EOL EOL ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
611 1*line
bce86c4163a3 Initial revision
kono
parents:
diff changeset
612 [ "#" EOL ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
613
bce86c4163a3 Initial revision
kono
parents:
diff changeset
614 | "#<" type "/" subtype
bce86c4163a3 Initial revision
kono
parents:
diff changeset
615 0*(";" attribute "=" value)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
616 [ "(" comment ")" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
617 [ "[" description "]" ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
618 EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
619 1*line
bce86c4163a3 Initial revision
kono
parents:
diff changeset
620 [ "#" EOL ]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
621
bce86c4163a3 Initial revision
kono
parents:
diff changeset
622 line ::= "##" text EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
623 -- interpreted as "#"text EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
624 | text EOL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
625 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
626 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
627 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
628 Basically,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
629 the body contains one or more contents.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
630 A content consists of either a directive,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
631 indicated with a \*(lq#\*(rq as the first character of a line;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
632 or,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
633 plaintext (one or more lines of text).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
634 The continuation character, \*(lq\\\*(lq, may be used to enter a single
bce86c4163a3 Initial revision
kono
parents:
diff changeset
635 .ne 11
bce86c4163a3 Initial revision
kono
parents:
diff changeset
636 directive on more than one line,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
637 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
638 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
639 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
640 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
641 #@application/octet-stream; \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
642 type=tar; \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
643 x-conversions=compress
bce86c4163a3 Initial revision
kono
parents:
diff changeset
644 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
645 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
646 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
647 There are four kinds of directives:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
648 \*(lqtype\*(rq directives,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
649 which name the type and subtype of the content;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
650 \*(lqexternal-type\*(rq directives,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
651 which also name the type and subtype of the content;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
652 the \*(lqforw\*(rq directive,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
653 which is used to forward a digest of messages;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
654 and,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
655 the \*(lqbegin\*(rq directive,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
656 which is used to create a multipart content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
657
bce86c4163a3 Initial revision
kono
parents:
diff changeset
658 For the type directives,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
659 the user may optionally specify the name of a file containing the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
660 contents in \*(lqnative\*(rq (decoded) format.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
661 (If the filename starts with the \*(lq|\*(rq character,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
662 then this gives a command whose output is captured accordingly.)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
663 If a filename is not given,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
664 \fImhn\fR will look for information in the user's profile to determine
bce86c4163a3 Initial revision
kono
parents:
diff changeset
665 how the different contents should be composed.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
666 This is accomplished by consulting a composition string,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
667 and executing it under \fB/bin/sh\fR,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
668 with the standard output set to the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
669 .ne 13
bce86c4163a3 Initial revision
kono
parents:
diff changeset
670 The composition string may contain these escapes:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
671 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
672 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
673 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
674 .ta \w'%P 'u
bce86c4163a3 Initial revision
kono
parents:
diff changeset
675 %a additional arguments
bce86c4163a3 Initial revision
kono
parents:
diff changeset
676 %f filename containing content
bce86c4163a3 Initial revision
kono
parents:
diff changeset
677 %F %f, and stdout is not re-directed
bce86c4163a3 Initial revision
kono
parents:
diff changeset
678 %s subtype
bce86c4163a3 Initial revision
kono
parents:
diff changeset
679 .re
bce86c4163a3 Initial revision
kono
parents:
diff changeset
680 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
681 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
682 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
683 First,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
684 \fImhn\fR will look for an entry of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
685 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
686 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
687 mhn-compose-<type>/<subtype>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
688 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
689 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
690 to determine the command to use to compose the content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
691 If this isn't found,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
692 \fImhn\fR will look for an entry of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
693 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
694 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
695 mhn-compose-<type>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
696 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
697 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
698 to determine the composition command.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
699 If this isn't found,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
700 \fImhn\fR will complain.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
701
bce86c4163a3 Initial revision
kono
parents:
diff changeset
702 An example entry might be:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
703 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
704 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
705 mhn-compose-audio/basic: record | raw2audio -F
bce86c4163a3 Initial revision
kono
parents:
diff changeset
706 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
707 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
708 Because commands like these will vary,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
709 depending on the display environment used for login,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
710 composition strings for different contents should probably be put in
bce86c4163a3 Initial revision
kono
parents:
diff changeset
711 the file specified by the \fB$MHN\fR environment variable,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
712 instead of directly in your user profile.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
713
bce86c4163a3 Initial revision
kono
parents:
diff changeset
714 The external-type directives are used to provide a reference to a content,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
715 rather than enclosing the contents itself.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
716 Hence,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
717 instead of providing a filename as with the type directives,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
718 external-parameters are supplied.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
719 These look like regular parameters,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
720 .ne 15
bce86c4163a3 Initial revision
kono
parents:
diff changeset
721 so they must be separated accordingly,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
722 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
723 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
724 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
725 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
726 #@application/octet-stream; \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
727 type=tar; \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
728 x-conversions=compress [] \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
729 access-type=anon-ftp; \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
730 name="mh-mime.tar.Z"; \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
731 directory="mrose/mh-mime"; \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
732 site="ftp.ics.uci.edu"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
733 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
734 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
735 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
736 By specifying \*(lq[]\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
737 an empty description string is given,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
738 and the start of the external-parameters is identified.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
739 .ne 19
bce86c4163a3 Initial revision
kono
parents:
diff changeset
740 These parameters are of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
741 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
742 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
743 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
744 .ta \w'access-type= 'u
bce86c4163a3 Initial revision
kono
parents:
diff changeset
745 access-type= usually \fIanon-ftp\fR or \fImail-server\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
746 name= filename
bce86c4163a3 Initial revision
kono
parents:
diff changeset
747 permission= read-only or read-write
bce86c4163a3 Initial revision
kono
parents:
diff changeset
748 site= hostname
bce86c4163a3 Initial revision
kono
parents:
diff changeset
749 directory= directoryname (optional)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
750 mode= usually \fIascii\fR or \fIimage\fR (optional)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
751 size= number of octets
bce86c4163a3 Initial revision
kono
parents:
diff changeset
752 server= mailbox
bce86c4163a3 Initial revision
kono
parents:
diff changeset
753 subject= subject to send
bce86c4163a3 Initial revision
kono
parents:
diff changeset
754 body= command to send for retrieval
bce86c4163a3 Initial revision
kono
parents:
diff changeset
755 .re
bce86c4163a3 Initial revision
kono
parents:
diff changeset
756 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
757 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
758 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
759
bce86c4163a3 Initial revision
kono
parents:
diff changeset
760 For the forw directive,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
761 the user may optionally specify the name of the folder and which
bce86c4163a3 Initial revision
kono
parents:
diff changeset
762 messages are to be forwarded.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
763 if a folder is not given,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
764 it defaults to the current folder.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
765 Similarly,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
766 if a message is not given,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
767 it defaults to the current message.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
768 Hence,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
769 the forw directive is similar to the \fIforw\fR\0(1) command,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
770 except that the former uses the MIME rules for encapsulation
bce86c4163a3 Initial revision
kono
parents:
diff changeset
771 rather than those specified in RFC 934.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
772 Usage of the `\-rfc934mode' switch indicates whether \fImhn\fR should
bce86c4163a3 Initial revision
kono
parents:
diff changeset
773 attempt to utilize the encapsulation rules in such a way as to appear
bce86c4163a3 Initial revision
kono
parents:
diff changeset
774 that RFC 934 is being used.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
775 If given,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
776 then RFC 934-compliant user-agents should be able to burst the message on
bce86c4163a3 Initial revision
kono
parents:
diff changeset
777 reception\0--\0providing that the messages being encapsulated do not
bce86c4163a3 Initial revision
kono
parents:
diff changeset
778 contain encapsulated messages themselves.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
779 The drawback of this approach is that the encapsulations are generated
bce86c4163a3 Initial revision
kono
parents:
diff changeset
780 by placing an extra newline at the end of the body of each message.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
781
bce86c4163a3 Initial revision
kono
parents:
diff changeset
782 For the begin directive,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
783 the user must specify at least one content between
bce86c4163a3 Initial revision
kono
parents:
diff changeset
784 the begin and end pairs.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
785
bce86c4163a3 Initial revision
kono
parents:
diff changeset
786 For all of these directives,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
787 the user may include a brief description of the content between
bce86c4163a3 Initial revision
kono
parents:
diff changeset
788 the \*(lq[\*(rq character and the \*(lq]\*(rq character.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
789 By default,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
790 \fImhn\fR will generate a unique \*(lqContent-ID:\*(rq for each directive;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
791 however,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
792 the user may override this by defining the ID using the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
793 \*(lq<\*(rq and \*(lq>\*(rq characters.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
794 Putting this all together,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
795 .ne 15
bce86c4163a3 Initial revision
kono
parents:
diff changeset
796 here is a brief example of what a user's components file might look like:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
797 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
798 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
799 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
800 To:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
801 cc:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
802 Subject:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
803 --------
bce86c4163a3 Initial revision
kono
parents:
diff changeset
804 #audio/basic [Flint phone] \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
805 |raw2audio -F < /home/mrose/lib/multi-media/flint.au
bce86c4163a3 Initial revision
kono
parents:
diff changeset
806 #image/gif [MTR's photo] \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
807 /home/mrose/lib/multi-media/mrose.gif
bce86c4163a3 Initial revision
kono
parents:
diff changeset
808 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
809 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
810 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
811 For a later example,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
812 we'll call this components file \fImhncomps\fR.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
813
bce86c4163a3 Initial revision
kono
parents:
diff changeset
814 As noted earlier,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
815 in addition to directives,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
816 plaintext can be present.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
817 Plaintext is gathered,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
818 until a directive is found or the draft is exhausted,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
819 and this is made to form a text content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
820 If the plaintext must contain a \*(lq#\*(rq at the beginning of a line,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
821 simply double it,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
822 .ne 6
bce86c4163a3 Initial revision
kono
parents:
diff changeset
823 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
824 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
825 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
826 ##when sent, this line will start with only one #
bce86c4163a3 Initial revision
kono
parents:
diff changeset
827 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
828 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
829 If you want to end the plaintext prior to a directive,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
830 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
831 to have two plaintext contents adjacent,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
832 simply insert a line containing a single \*(lq#\*(rq character,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
833 .ne 10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
834 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
835 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
836 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
837 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
838 this is the first content
bce86c4163a3 Initial revision
kono
parents:
diff changeset
839 #
bce86c4163a3 Initial revision
kono
parents:
diff changeset
840 and this is the second
bce86c4163a3 Initial revision
kono
parents:
diff changeset
841 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
842 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
843 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
844 Finally,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
845 if the plaintext starts with a line of the form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
846 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
847 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
848 Content-Description: text
bce86c4163a3 Initial revision
kono
parents:
diff changeset
849 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
850 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
851 then this will be used to describe the plaintext content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
852 \fBNOTE WELL:\fR you must follow this line with a blank line before
bce86c4163a3 Initial revision
kono
parents:
diff changeset
853 starting your text.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
854
bce86c4163a3 Initial revision
kono
parents:
diff changeset
855 By default,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
856 plaintext is captured as a text/plain content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
857 You can override this by starting the plaintext with \*(lq#<\*(rq
bce86c4163a3 Initial revision
kono
parents:
diff changeset
858 followed by a content-type specification,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
859 .ne 11
bce86c4163a3 Initial revision
kono
parents:
diff changeset
860 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
861 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
862 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
863 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
864 #<text/richtext
bce86c4163a3 Initial revision
kono
parents:
diff changeset
865 this content will be tagged as text/richtext
bce86c4163a3 Initial revision
kono
parents:
diff changeset
866 #
bce86c4163a3 Initial revision
kono
parents:
diff changeset
867 and this content will be tagged as text/plain
bce86c4163a3 Initial revision
kono
parents:
diff changeset
868 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
869 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
870 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
871 Note that if you use the \*(lq#<\*(rq plaintext-form,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
872 then the content-description must be on the same line which identifies
bce86c4163a3 Initial revision
kono
parents:
diff changeset
873 the content type of the plaintext.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
874
bce86c4163a3 Initial revision
kono
parents:
diff changeset
875 If \fImhn\fR is successful,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
876 it renames the original draft to start with the \*(lq,\*(rq character
bce86c4163a3 Initial revision
kono
parents:
diff changeset
877 and end with the string \*(lq.orig\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
878 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
879 if you are editing the file \*(lqdraft\*(rq,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
880 it will be renamed to \*(lq,draft.orig\*(rq.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
881 This allows you to easily recover the \fImhn\fR composition file.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
882
bce86c4163a3 Initial revision
kono
parents:
diff changeset
883 If the `-check' switch is given,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
884 \fImhn\fR will associate an integrity check with each content.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
885
bce86c4163a3 Initial revision
kono
parents:
diff changeset
886 .Uh "Automatic Composition"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
887 Note that MH will not invoke \fImhn\fR automatically,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
888 unless you add this line to your \&.mh\(ruprofile file:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
889 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
890 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
891 automhnproc: mhn
bce86c4163a3 Initial revision
kono
parents:
diff changeset
892 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
893 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
894 Otherwise,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
895 you must specifically give the command
bce86c4163a3 Initial revision
kono
parents:
diff changeset
896 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
897 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
898 What now? edit mhn
bce86c4163a3 Initial revision
kono
parents:
diff changeset
899 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
900 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
901 prior to sending the draft.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
902
bce86c4163a3 Initial revision
kono
parents:
diff changeset
903 You can easily tailor MH to help you remember to do this.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
904 .ne 10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
905 Suppose you have these lines in your profile:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
906 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
907 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
908 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
909 mcomp: -editor mprompter -form mhncomps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
910 mprompter: -noprepend -norapid
bce86c4163a3 Initial revision
kono
parents:
diff changeset
911 mprompter-next: mhn
bce86c4163a3 Initial revision
kono
parents:
diff changeset
912 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
913 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
914 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
915 where \fImcomp\fR is a link to \fIcomp\fR\0(1),
bce86c4163a3 Initial revision
kono
parents:
diff changeset
916 and \fImprompter\fR is a link to \fIprompter\fR\0(1).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
917 Then to send a message using the \fImhncomps\fR components file above,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
918 .ne 26
bce86c4163a3 Initial revision
kono
parents:
diff changeset
919 the sequence is:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
920 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
921 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
922 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
923 % \fBmcomp\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
924 To: \fBuser@host\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
925 cc:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
926 Subject: \fBmulti-media message\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
927 --------
bce86c4163a3 Initial revision
kono
parents:
diff changeset
928 #audio/basic [Flint phone] \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
929 |raw2audio -F < /home/mrose/lib/multi-media/flint.au
bce86c4163a3 Initial revision
kono
parents:
diff changeset
930 #image/gif [MTR's photo] \\
bce86c4163a3 Initial revision
kono
parents:
diff changeset
931 /home/mrose/lib/multi-media/mrose.gif
bce86c4163a3 Initial revision
kono
parents:
diff changeset
932
bce86c4163a3 Initial revision
kono
parents:
diff changeset
933 --------Enter additional text
bce86c4163a3 Initial revision
kono
parents:
diff changeset
934
bce86c4163a3 Initial revision
kono
parents:
diff changeset
935 \fBThis message contains three contents.\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
936 \fB<CTRL-D>\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
937 --------
bce86c4163a3 Initial revision
kono
parents:
diff changeset
938
bce86c4163a3 Initial revision
kono
parents:
diff changeset
939 What now? \fBedit\fR (this invokes \fImhn\fR)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
940
bce86c4163a3 Initial revision
kono
parents:
diff changeset
941 What now? \fBsend\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
942 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
943 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
944 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
945 You have to remember to type the additional edit command,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
946 but it should be fairly obvious from the interaction.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
947
bce86c4163a3 Initial revision
kono
parents:
diff changeset
948 Finally,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
949 you should consider adding this line to your profile:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
950 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
951 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
952 lproc: show
bce86c4163a3 Initial revision
kono
parents:
diff changeset
953 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
954 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
955 This way,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
956 if you decide to \fBlist\fR after invoking \fImhn\fR as your editor,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
957 the command
bce86c4163a3 Initial revision
kono
parents:
diff changeset
958 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
959 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
960 What now? list
bce86c4163a3 Initial revision
kono
parents:
diff changeset
961 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
962 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
963 will work as you expect.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
964
bce86c4163a3 Initial revision
kono
parents:
diff changeset
965 .Uh "Sending Files via Mail"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
966 When you want to send a bunch of files to someone,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
967 you can run the \fIviamail\fR shell script,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
968 which is similar the tarmail command:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
969 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
970 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
971 @(MHETCPATH)/viamail mailpath \*(lqsubject\*(rq files\0...
bce86c4163a3 Initial revision
kono
parents:
diff changeset
972 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
973 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
974 \fIviamail\fR will archive the directories/files you name with \fItar\fR\0(1),
bce86c4163a3 Initial revision
kono
parents:
diff changeset
975 and then mail the compressed archive to the `mailpath' with the given
bce86c4163a3 Initial revision
kono
parents:
diff changeset
976 `subject'.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
977 The archive will be automatically split up into as many messages as
bce86c4163a3 Initial revision
kono
parents:
diff changeset
978 necessary in order to get past most mailers.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
979
bce86c4163a3 Initial revision
kono
parents:
diff changeset
980 Sometimes you want \fIviamail\fR to pause after posting a partial message.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
981 This is usually the case when you are running \fIsendmail\fR and
bce86c4163a3 Initial revision
kono
parents:
diff changeset
982 expect to generate a lot of partial messages.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
983 If the first argument given to \fIviamail\fR starts with a dash,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
984 then it is interpreted as the number of seconds to pause in between postings,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
985 .ne 6
bce86c4163a3 Initial revision
kono
parents:
diff changeset
986 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
987 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
988 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
989 @(MHETCPATH)/viamail -300 mailpath \*(lqsubject\*(rq files\0...
bce86c4163a3 Initial revision
kono
parents:
diff changeset
990 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
991 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
992 will pause 5 minutes in between each posting.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
993
bce86c4163a3 Initial revision
kono
parents:
diff changeset
994 When these messages are received,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
995 invoke \fImhn\fR once,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
996 with the list of messages,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
997 and the `\-store' command.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
998 The \fImhn\fR program will then store exactly one message containing the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
999 archive.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1000 You can then use `\-show' to find out what's inside;
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1001 possibly followed by `\-store' to write the archive to a file where you
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1002 .ne 26
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1003 can subsequently uncompress and untar it, e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1004 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1005 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1006 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1007 % mhn -list all
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1008 msg part type/subtype size description
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1009 1 message/partial 47K part 1 of 4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1010 2 message/partial 47K part 2 of 4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1011 3 message/partial 47K part 3 of 4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1012 4 message/partial 18K part 4 of 4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1013 % mhn -store all
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1014 % mhn -list -verbose last
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1015 msg part type/subtype size description
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1016 5 application/octet-stream 118K
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1017 (extract with uncompress | tar xvpf -)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1018 type=tar
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1019 x-conversions=compress
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1020 % mhn -show last
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1021 msg part type/subtype size description
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1022 5 application/octet-stream 118K
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1023 -- headers of message, followed by \fItar\fR listing appears here
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1024 % mhn -store last
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1025 % uncompress < 5.tar.Z | tar xvpf -
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1026 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1027 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1028 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1029 Alternately,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1030 by using the `\-auto' switch,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1031 \fImhn\fR will automatically do the extraction for you,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1032 .ne 26
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1033 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1034 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1035 .nf
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1036 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1037 % mhn -list all
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1038 msg part type/subtype size description
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1039 1 message/partial 47K part 1 of 4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1040 2 message/partial 47K part 2 of 4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1041 3 message/partial 47K part 3 of 4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1042 4 message/partial 18K part 4 of 4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1043 % mhn -store all
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1044 % mhn -list -verbose last
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1045 msg part type/subtype size description
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1046 5 application/octet-stream 118K
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1047 (extract with uncompress | tar xvpf -)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1048 type=tar
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1049 x-conversions=compress
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1050 % mhn -show last
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1051 msg part type/subtype size description
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1052 5 application/octet-stream 118K
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1053 -- headers of message, followed by \fItar\fR listing appears here
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1054 % mhn -store -auto last
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1055 -- \fItar\fR listing appears here as files are extracted
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1056 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1057 .fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1058 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1059 As the second \fItar\fR listing is generated,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1060 the files are extracted.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1061 A prudent user will never put `\-auto' in the \&.mh\(ruprofile file.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1062 The correct procedure is to first use `\-show',
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1063 to find out what will be extracted.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1064 Then \fImhn\fR can be invoked with `\-store' and `\-auto' to perform
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1065 the extraction.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1066
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1067 .Uh "User Environment"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1068 Because the display environment in which \fImhn\fR operates may vary
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1069 for a user,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1070 \fImhn\fR will look for the environment variable \fB$MHN\fR.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1071 If present,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1072 this specifies the name of an additional user profile which should be read.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1073 Hence,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1074 when a user logs in on a particular display device,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1075 this environment variable should be set to refer to a file containing
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1076 definitions useful for the display device.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1077 Normally,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1078 only entries of the form
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1079 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1080 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1081 mhn-show-<type>/<subtype>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1082 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1083 mhn-show-<type>
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1084 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1085 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1086 need be present.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1087 Finally,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1088 \fImhn\fR will attempt to consult one other additional user profile,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1089 .ne 6
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1090 e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1091 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1092 .in +.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1093 @(MHETCPATH)/mhn_defaults
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1094 .in -.5i
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1095 .sp
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1096 which is created automatically during MH installation.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1097 .Fi
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1098 ^$HOME/\&.mh\(ruprofile~^The user profile
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1099 ^$MHN~^Additional profile entries
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1100 ^@(MHETCPATH)/mhn_defaults~^System-default profile entries
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1101 ^@(MHETCPATH)/mhl.headers~^The headers template
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1102 .Pr
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1103 ^Path:~^To determine the user's MH directory
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1104 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1105 ^Current\-Folder:~^To find the default current folder
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1106 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1107 ^mhlproc:~^Default program to display message headers
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1108 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1109 ^mhn-access-ftp:~^Program to retrieve contents via FTP
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1110 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1111 ^mhn-cache~^Public directory to store cached external contents
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1112 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1113 ^mhn-charset-<charset>~^Template for environment to render character sets
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1114 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1115 ^mhn-compose-<type>*~^Template for composing contents
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1116 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1117 ^mhn-private-cache~^Personal directory to store cached external contents
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1118 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1119 ^mhn-show-<type>*~^Template for displaying contents
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1120 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1121 ^mhn-storage~^Directory to store contents
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1122 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1123 ^mhn-store-<type>*~^Template for storing contents
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1124 .Ps
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1125 ^moreproc:~^Default program to display text/plain content
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1126 .Sa
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1127 mhl(1)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1128 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1129 \fIMIME: Mechanisms for Specifying and Describing the Format of
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1130 Internet Message Bodies\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1131 (RFC 1521),
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1132 .br
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1133 \fIProposed Standard for Message Encapsulation\fR
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1134 (RFC 934).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1135 .De
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1136 `+folder' defaults to the current folder
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1137 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1138 `msgs' defaults to cur
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1139 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1140 `\-noauto'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1141 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1142 `\-nocache'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1143 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1144 `\-nocheck'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1145 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1146 `\-noebcdicsafe'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1147 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1148 `\-form\0mhl.headers'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1149 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1150 `\-headers'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1151 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1152 `\-pause'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1153 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1154 `\-rcache\0ask'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1155 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1156 `\-realsize'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1157 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1158 `\-rfc934mode'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1159 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1160 `\-noserialonly'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1161 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1162 `\-show'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1163 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1164 `\-noverbose'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1165 .Ds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1166 `\-wcache\0ask'
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1167 .Co
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1168 If a folder is given,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1169 it will become the current folder.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1170 The last message selected will become the current message.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1171 .Bu
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1172 Partial messages contained within a multipart content are not reassembled
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1173 with the `\-store' switch.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1174 .En