rearrangement.
[elisp/flim.git] / mime-ja.sgml
1 <!doctype sinfo system>
2 <head>
3 <title>FLIM 1.5 MIME \e$B5!G=@bL@=q\e(B
4 <author>\e$B<i2,\e(B \e$BCNI'\e(B <mail>morioka@jaist.ac.jp</mail>
5 <date>1998/06/23
6
7 <toc>
8 </head>
9
10 <body>
11
12 <abstract>
13 <p>
14 This file documents MIME features of FLIM, a Internet message
15 parsing/encoding library for GNU Emacs.
16 <p>
17 GNU Emacs \e$BMQ$N\e(B Internet Message \e$B$N2r@O$dId9f2=$K4X$9$k\e(B library \e$B$G$"$k\e(B 
18 FLIM \e$B$N\e(B MIME \e$B5!G=$K4X$7$F@bL@$7$^$9!#\e(B
19 </abstract>
20
21
22 <h1> FLIM \e$B$C$F2?!)\e(B
23 <node> Introduction
24 <p>
25 FLIM \e$B$O\e(B Internet Message \e$B$NI=8=$dId9f2=$K4X$9$k4pACE*$J5!G=$rDs6!$9$k\e(B
26 \e$B$?$a$N\e(B library \e$B$G$9!#\e(B
27
28
29 <h1> FLIM \e$B$N\e(B MIME \e$B5!G=$N;H$$J}\e(B
30 <node> How to use
31 <p>
32 FLIM \e$B$NDs6!$9$k\e(B MIME \e$B5!G=$r;H$&$?$a$K$O\e(B
33
34 <lisp>
35 (require 'mime)
36 </lisp>
37 <p>
38 <noindent>\e$B$rI>2A$7$F$/$@$5$$!#\e(B
39
40
41 <h1> Message \e$B$H\e(B Entity
42 <node> Entity
43 <p>
44 <dref>RFC 2045</dref> \e$B$K$h$l$P!"!V\e(BEntity \e$B$H$$$&8l$O!"\e(Bmessage, \e$B$b$7$/$O!"\e(B
45 multipart entity \e$B$N\e(B body \e$BCf$N#1$D$NItJ,$N!"\e(BMIME \e$B$GDj5A$5$l$?\e(B header
46 field \e$B$HFbMF$r;X$9!W$H$J$C$F$$$^$9!#$3$3$G$O!"\e(BMIME \e$B$GDj5A$5$l$?\e(B header
47 field \e$B0J30$NA4$F$N\e(B header \e$B$H\e(B body \e$B$r;X$98l$H$7$F\e(B 
48 <concept>entity</concept>\e$B$rMQ$$$k$3$H$K$7$^$9!#\e(B
49 <p>
50 RFC 2045 \e$B$NDj5A$O!"\e(BMIME message \e$B$,\e(B entity \e$B$rC10L$H$9$kLZ9=B$$G$"$k$3$H$r\e(B
51 \e$B<($7$F$$$^$9!#\e(Bmessage \e$B$O2<?^$G<($9$h$&$JLZ$H$J$j!"\e(Bentity \e$B$O$3$NLZ$K$*$1\e(B
52 \e$B$k@a$H$J$j$^$9!#$D$^$j!"\e(BMIME \e$B$O\e(B message \e$B$rLZ9=B$$K3HD%$7$?Lu$G$9!#\e(B
53 <p>
54 FLIM \e$B$O\e(B entity \e$B$N>pJs$rI=8=$9$k$?$a$K\e(B<concept>mime-entity</concept> \e$B9=\e(B
55 \e$BB$BN$rMQ$$$^$9!#0J2<$G$OC1$K\e(B mime-entity \e$B$H8F$V$3$H$K$7$^$9!#\e(B
56 <p>
57 \e$BA0=R$N$h$&$K!"\e(Bmessage \e$BCf$N3F\e(B entity \e$B$OLZ$N@a$KEv$?$j$^$9$,!"$3$NLZ$K$O\e(B
58 \e$B?<$5$HF1$8?<$5$NCf$N=gHV$K=>$C$FHV9f$,IU$1$k$3$H$,$G$-$^$9!#B($A!"\e(B
59 <verb>
60
61                               \e$B(#(!(!(!($\e(B
62                               \e$B("\e(B  nil \e$B("\e(B
63                               \e$B(&(!(((!(%\e(B
64               \e$B(#(!(!(!(!(!(!(!(!(!(+(!(!(!(!(!(!(!(!(!($\e(B
65             \e$B(#(*($\e(B              \e$B(#(*($\e(B              \e$B(#(*($\e(B
66             \e$B("#0("\e(B              \e$B("#1("\e(B              \e$B("#2("\e(B
67             \e$B(&(((%\e(B              \e$B(&(((%\e(B              \e$B(&(((%\e(B
68               \e$B("\e(B        \e$B(#(!(!(!(!(+(!(!(!(!($\e(B        \e$B("\e(B
69           \e$B(#(!(*(!($(#(!(*(!($(#(!(*(!($(#(!(*(!($(#(!(*(!($\e(B
70           \e$B("\e(B \e$B#0\e(B.\e$B#0("("\e(B \e$B#1\e(B.\e$B#0("("\e(B \e$B#1\e(B.\e$B#1("("\e(B \e$B#1\e(B.\e$B#2("("\e(B \e$B#2\e(B.\e$B#0("\e(B
71           \e$B(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%\e(B
72
73 </verb>
74 <p>
75 <noindent>\e$B$N$h$&$K?<$5\e(B n \e$B$N@a$K$OD9$5\e(B n \e$B$N@0?tNs$N@aHV9f$,?6$l$^$9!#$3$l\e(B
76 \e$B$r\e(B <concept>entity-number</concept> \e$B$H8F$S$^$9!#\e(Bentity-number \e$B$O\e(B S \e$B<0$H\e(B
77 \e$B$7$F$O\e(B <code>(1 2 3)</code> \e$B$N$h$&$J@0?t$N%j%9%H$H$7$FI=8=$5$l$^$9!#\e(B
78 <p>
79 mime-entity \e$B$G$O!"$3$l$HF1MM$N\e(B <concept>node-id</concept> \e$B$rMQ$$$^$9!#\e(B
80 node-id \e$B$O$A$g$&$I\e(B entity-number \e$B$r5U$K$7$?%j%9%H$G!"\e(Bentity-number
81 1.2.3 \e$B$KBP1~$9$k\e(B node-id \e$B$O\e(B <code>(3 2 1)</code> \e$B$G$9!#\e(B
82 <p>
83 \e$BA0=R$N$h$&$K!"\e(BMIME message \e$B$O\e(B entity \e$B$rC10L$H$7$?LZ9=B$$K$J$C$F$$$k$N$G!"\e(B
84 \e$B$3$N:,$G$"$k\e(B message \e$BA4BN$b\e(B mime-entity \e$B$GI=8=$9$k$3$H$,$G$-!"\e(Bbuffer
85 local \e$BJQ?t\e(B <code>mime-message-structure</code> \e$B$K3JG<$9$k$3$H$K$7$^$9!#\e(B
86 \e$B$=$7$F!"\e(Bentity-number \e$B$d\e(B node-id \e$B$rMQ$$$k$3$H$G\e(B 
87 <code>mime-message-structure</code> \e$B$K$*$1$k\e(B entity \e$B$NAjBPE*$J0LCV4X78$r\e(B
88 \e$B07$&$3$H$,$G$-$^$9!#\e(B
89
90
91 <h2> mime-entity \e$B9=B$BN\e(B
92 <node> mime-entity
93 <p>
94 <define type="Structure" name="mime-entity">
95 <p>
96 entity \e$B$K4X$9$k>pJs$r<}$a$k9=B$BN!#\e(B
97 <p>
98 \e$B$3$N9=B$BN$r;2>H$9$k$K$O\e(B <code>mime-entity-\e$BMWAGL>\e(B</code> \e$B$H$$$&L>A0$N;2\e(B
99 \e$B>H4X?t$rMQ$$$k!#\e(B
100 <p>
101 \e$B$3$N9=B$BN$NMWAG$O0J2<$NDL$j$G$"$k!'\e(B
102
103 <vl>
104 <dt>buffer<dd>entity \e$B$,B8:_$9$k\e(B buffer (buffer)
105 </dd>
106 <dt>header-start<dd>entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B header \e$B$N@hF,0LCV\e(B
107 (point)
108 </dd>
109 <dt>header-end<dd>entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B header \e$B$NKvHx0LCV\e(B
110 (point)
111 </dd>
112 <dt>body-start<dd>entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B body \e$B$N@hF,0LCV\e(B
113 (point)
114 </dd>
115 <dt>body-end<dd>entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B body \e$B$NKvHx0LCV\e(B
116 (point)
117 </dd>
118 <dt>node-id<dd>entity \e$B$N\e(B node-id (\e$B@0?t$N\e(B list)
119 </dd>
120 <dt>content-type<dd><dref>Content-Type</dref> \e$BMs$N>pJs\e(B
121 (mime-content-type)
122 </dd>
123 <dt>content-disposition<dd><dref>Content-Disposition</dref> \e$BMs$N>pJs\e(B
124 (mime-content-disposition)
125 </dd>
126 <dt>encoding<dd>entity \e$B$N\e(B <dref>Content-Transfer-Encoding</dref> (\e$BJ8;zNs\e(B)
127 </dd>
128 <dt>children<dd>entity \e$B$K4^$^$l$k\e(B entity \e$B$N\e(B list (mime-entity \e$B$N\e(B 
129 list)
130 </dd>
131 </vl>
132
133 <p>
134 \e$B$^$?!"2a5n$H$N8_49@-$N$?$a!"0J2<$NMWAGL>$N;2>H4X?t$bMxMQ2DG=$G$"$k!#\e(B
135
136 <vl>
137 <dt>type/subtype<dd>entity \e$B$N\e(B type/subtype (\e$BJ8;zNs\e(B)
138 </dd>
139 <dt>media-type<dd>entity \e$B$N\e(B media-primary-type (symbol)
140 </dd>
141 <dt>media-subtype<dd>entity \e$B$N\e(B media-subtype (symbol)
142 </dd>
143 <dt>parameters<dd>entity \e$B$N\e(B Content-Type \e$BMs$N\e(B parameter (\e$BO"A[\e(B list)
144 </dd>
145 </vl>
146 </define>
147
148 <defun name="make-mime-entity">
149           <args> buffer header-start header-end body-start body-end
150           <opts> node-id content-type content-disposition encoding
151           children
152 <p>
153 entity \e$B$N@8@.;R!#\e(B
154 </defun>
155
156 <defun name="mime-entity-point-min">
157             <args> entity
158 <p>
159 entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B entity \e$B$N@hF,0LCV$rJV$9!#\e(B
160 </defun>
161
162 <defun name="mime-entity-point-max">
163             <args> entity
164 <p>
165 entity \e$B$NB8:_$9$k\e(B buffer \e$B$K$*$1$k\e(B entity \e$B$NKvHx0LCV$rJV$9!#\e(B
166 </defun>
167
168
169 <h2> Message \e$B$N2r@O4o\e(B
170 <node> Message parser
171 <p>
172 <defun name="mime-parse-message">
173           <opts> default-ctl default-encoding node-id
174 <p>
175 \e$B8=:_$N\e(B buffer \e$B$r9=J82r@O$7$?7k2L$rJV$9!#\e(B
176 </defun>
177
178 <defun name="mime-parse-buffer">
179           <opts> buffer
180 <p>
181 <var>buffer</var> \e$B$r9=J82r@O$7!"$=$N7k2L$r\e(B <var>buffer</var> \e$B$N\e(B
182 <code>mime-message-structure</code> \e$B$K3JG<$9$k!#\e(B
183 <p>
184 <var>buffer</var> \e$B$,>JN,$5$l$?>l9g!"8=:_$N\e(B buffer \e$B$r9=J82r@O$9$k!#\e(B
185 </defun>
186
187
188 <h2> Entity \e$B$N0LCV4X78$K4X$9$k5!G=\e(B
189 <node> Entity as node in message
190 <p>
191 <defvar name="mime-message-structure">
192 <p>
193 \e$B8=:_$N\e(B buffer \e$B$K$*$1$k\e(B message \e$BA4BN$N\e(B mime-entity \e$B9=B$BN$r3JG<$9$k\e(B
194 buffer local \e$BJQ?t!#\e(B
195 </defvar>
196
197 <defun name="mime-entity-number">
198           <args> entity
199 <p>
200 <var>entity</var> \e$B$N\e(B entity-number \e$B$rJV$9!#\e(B
201 </defun>
202
203 <defun name="mime-entity-parent">
204           <args> entity <opts> message-structure
205 <p>
206 <var>entity</var> \e$B$N?F$N\e(B entity \e$B$rJV$9!#\e(B
207 <p>
208 <var>message-structure</var> \e$B$,>JN,$5$l$?>l9g$O\e(B entity \e$B$,B8:_$9$k\e(B 
209 buffer \e$B$K$*$1$k\e(B <code>mime-message-structure</code> \e$B$NCM$rMQ$$$k!#\e(B
210 <p>
211 <var>message-structure</var> \e$B$,;XDj$5$l$?>l9g!"$3$l$r:,$H8+Jo$9!#\e(B
212 </defun>
213
214 <defun name="mime-root-entity-p">
215           <args> entity
216 <p>
217 <var>entity</var> \e$B$,:,!JB($A!"\e(Bmessage \e$BA4BN!K$G$"$k>l9g$K!"\e(B
218 \e$BHs\e(B-<code>nil</code> \e$B$rJV$9!#\e(B
219 </defun>
220
221
222 <h2> Entity header \e$B$N>pJs\e(B
223 <node> Entity-header
224 <p>
225 <defun name="mime-entity-fetch-field">
226             <args> entity field-name
227 <p>
228 <var>entity</var> \e$B$N\e(B header \e$BCf$N\e(B <var>field-name</var> \e$BMs$N\e(B body \e$B$rJV$9!#\e(B
229 <p>
230 \e$B7k2L$NJ8;zNs$O\e(B network \e$BI=8=$N$^$^$G$"$k!#\e(B
231 <p>
232 <var>field-name</var> \e$BMs$,B8:_$7$J$$>l9g$O\e(B nil \e$B$rJV$9!#\e(B
233 </defun>
234
235 <defun name="mime-entity-read-field">
236             <args> entity field-name
237 <p>
238 <var>entity</var> \e$B$N\e(B header \e$BCf$N\e(B <var>field-name</var> \e$BMs$r9=J82r@O$7$?\e(B
239 \e$B7k2L$rJV$9!#\e(B
240 <p>
241 \e$B7k2L$N7A<0$OMsKh$K0[$J$k!#Hs9=B$2=Ms$N>l9g$OJ8;zNs$rJV$7!"9=B$2=Ms$N>l9g\e(B
242 \e$B$O$=$N7A<0$K=>$C$?\e(B list \e$B$rJV$9!#\e(B
243 <p>
244 \e$B7k2LCf$NJ8;zNs$O\e(B Emacs \e$B$NFbItI=8=$KJQ49$5$l$k!#\e(B
245 <p>
246 <var>field-name</var> \e$BMs$,B8:_$7$J$$>l9g$O\e(B nil \e$B$rJV$9!#\e(B
247 </defun>
248
249 <defun name="mime-insert-decoded-header">
250             <args> entity <opts> invisible-fields visible-fields
251             code-conversion
252 <p>
253 \e$B8=:_0LCV$K\e(B <var>entity</var> \e$B$NI|9f$7$?\e(B header \e$B$rA^F~$9$k!#\e(B
254 <p>
255 <var>invisible-fields</var> \e$B$H\e(B <var>visible-fields</var> \e$B$O@55,I=8=$N\e(B
256 list \e$B$G!"$=$l$>$l!"I=<($7$?$/$J$$\e(B field \e$BL>$HI=<($7$?$$MsL>$rI=8=$7$?$b$N\e(B
257 \e$B$G$"$k!#\e(B
258 <p>
259 <var>invisible-fields</var> \e$B$NMWAG$N$I$l$+$K\e(B match \e$B$7!"$+$D!"\e(B
260 <var>visible-fields</var> \e$B$NMWAG$N$I$l$K$b\e(B match \e$B$7$J$$Ms$OI=<($5$l$J$$!#\e(B
261 </defun>
262
263
264 <h2> Entity \e$B$NFbMF\e(B
265 <node> Entity-content
266 <p>
267 <defun name="mime-entity-content">
268             <args> entity
269 <p>
270 <var>entity</var> \e$B$NFbMF$N\e(B byte \e$BNs$rJV$9!#\e(B
271 </defun>
272
273
274 <h1> Content-Type \e$BMs$N>pJs\e(B
275 <node> Content-Type
276 <p>
277 <concept>Content-Type \e$BMs\e(B</concept> \e$B$O\e(B <dref>media-type</dref> \e$B$d\e(B MIME
278 charset \e$B$H$$$C$?\e(B <dref>entity</dref> \e$B$NFbMF$N<oN`$dI=8=7A<0$J$I$r5-=R\e(B
279 \e$B$9$k$?$a$N$b$N$G!"\e(B<dref>RFC 2045</dref> \e$B$GDj5A$5$l$F$$$^$9!#\e(B
280
281 <memo>
282 <p>
283 \e$BNr;KE*$K$O\e(B RFC 1049 \e$B$G\e(B Content-Type \e$BMs$,Ds0F$5$l$F$$$k!#C"$7!"\e(BMIME \e$B$N\e(B
284 media-type \e$B$N$h$&$J\e(B type \e$B$H\e(B subtype \e$B$N6hJL$O$J$/!"\e(BMIME charset \e$B$N$h$&\e(B
285 \e$B$JJ8;zId9f$N<oN`$rI=8=$9$k$3$H$b$G$-$J$$!#\e(B
286 </memo>
287
288 <p>
289 FLIM \e$B$O\e(B Content-Type \e$BMs$r9=J82r@O$9$k4X?t$H\e(B Content-Type \e$BMs$N2r@O7k2L$r\e(B
290 \e$B3JG<$9$k9=B$BN\e(B <concept>mime-content-type</concept> \e$B$rDs6!$7$^$9!#\e(B
291
292
293 <h2> Content-Type \e$BMs$N7A<0\e(B
294 <node> Content-Type field
295 <p>
296 Content-Type \e$BMs$N7A<0$O0J2<$N$h$&$KDj5A$5$l$F$$$^$9!'\e(B
297
298 <quote>
299 ``Content-Type'' ``:'' <concept>type</concept> ``/''
300 <concept>subtype</concept> *( ``;'' <concept>parameter</concept> )
301 </quote>
302 <p>
303 \e$BNc$($P!"\e(B
304
305 <quote>
306 <verb>
307 Content-Type: image/jpeg
308 </verb>
309 </quote>
310
311 <noindent>
312 \e$B$d\e(B
313
314 <quote>
315 <verb>
316 Content-Type: text/plain; charset=iso-2022-jp
317 </verb>
318 </quote>
319
320 <noindent>
321 \e$B$J$I$N$h$&$KMQ$$$i$l$^$9!#\e(B
322 <p>
323 \e$B$3$3$G!"\e(B`type' \e$B$H\e(B `subtype' \e$B$O\e(B entity \e$B$N7A<0$r<($9$b$N$G!"N><T$rAm>N$7\e(B
324 \e$B$F!"\e(B`media-type' \e$B$H8F$V$3$H$K$7$^$9!#>e5-$NNc$K$*$1$k\e(B `image/jpeg' \e$B$d\e(B
325 `text/plain' \e$B$O\e(B media-type \e$B$N#1$D$G$9!#\e(B
326
327 <memo>
328 <p>
329 Content-Type \e$BMs$N$J$$\e(B entity \e$B$O\e(B
330
331 <quote>
332 <verb>
333 Content-Type: text/plain; charset=us-ascii
334 </verb>
335 </quote>
336
337 <noindent>
338 \e$B$H$7$F2r<a$5$l$k!#\e(B<cf node="us-ascii">
339 </memo>
340
341
342 <h2> mime-content-type \e$B9=B$BN\e(B
343 <node> mime-content-type
344 <p>
345 <define type="Structure" name="mime-content-type">
346 <p>
347 Content-Type \e$BMs$N>pJs$r3JG<$9$k$?$a$N9=B$BN!#\e(B
348 <p>
349 \e$B$3$N9=B$BN$r;2>H$9$k$K$O\e(B <code>mime-content-type-\e$BMWAGL>\e(B</code> \e$B$H$$$&L>\e(B
350 \e$BA0$N;2>H4X?t$rMQ$$$k!#\e(B
351 <p>
352 \e$B$3$N9=B$BN$NMWAG$O0J2<$NDL$j$G$"$k!'\e(B
353
354 <vl>
355 <dt>primary-type<dd>media-type \e$B$N<g7?\e(B (symbol).
356 </dd>
357 <dt>subtype<dd>media-type \e$B$NI{7?\e(B (symbol).
358 </dd>
359 <dt>parameters<dd>Content-Type \e$BMs$N\e(B parameter (\e$BO"A[\e(B list).
360 </dd>
361 </vl>
362 </define>
363
364 <defun name="make-mime-content-type">
365           <args> type subtype
366           <opts> parameters
367 <p>content-type \e$B$N@8@.;R!#\e(B
368 </defun>
369
370 <defun name="mime-content-type-parameter">
371 <args> content-type parameter
372 <p>
373 <var>content-type</var> \e$B$N\e(B <var>parameter</var> \e$B$NCM$rJV$9!#\e(B
374 </defun>
375
376
377 <h2> Content-Type \e$BMs$N2r@O4o\e(B
378 <node> Content-Type parser
379 <p>
380 <defun name="mime-parse-Content-Type">
381           <args> string
382 <p>
383 <var>string</var> \e$B$r\e(B content-type \e$B$H$7$F2r@O$7$?7k2L$rJV$9!#\e(B
384 </defun>
385
386 <defun name="mime-read-Content-Type">
387 <p>
388 \e$B8=:_$N\e(B buffer \e$B$N\e(B Content-Type \e$BMs$rFI$_<h$j!"2r@O$7$?7k2L$rJV$9!#\e(B
389 <p>
390 Content-Type \e$BMs$,B8:_$7$J$$>l9g$O\e(B nil \e$B$rJV$9!#\e(B
391 </defun>
392
393
394 <h2> Content-Type \e$B$K4X$9$kM-MQ$J4X?t\e(B
395 <node> Content-Type utility
396 <p>
397 <defun name="mime-type/subtype-string">
398           <args> type <opts> subtype
399 <p>
400 <var>type</var> \e$B$H\e(B <var>subtype</var> \e$B$+$i\e(B type/subtype \e$B7A<0$NJ8;zNs$rJV\e(B
401 \e$B$9!#\e(B
402 </defun>
403
404
405 <h1> Content-Disposition \e$BMs$N>pJs\e(B
406 <node> Content-Disposition
407 <p>
408 <concept>Content-Disposition \e$BMs\e(B</concept> \e$B$O\e(B entity \e$B$NI=<($d\e(B file \e$BL>$J$I\e(B
409 \e$B$NB0@-$K$J$I$K4X$9$k>pJs$r5-=R$9$k$?$a$N$b$N$G$9!#\e(B
410
411 <rfc number="2183" type="Standards Track"
412               author="S. Dorner, K. Moore and R. Troost"
413               title="Communicating Presentation Information in
414               Internet Messages: The Content-Disposition Header"
415               date="August 1997">
416 <p>
417 FLIM \e$B$O\e(B Content-Disposition \e$BMs$r9=J82r@O$9$k4X?t$H\e(B Content-Disposition 
418 \e$BMs$N2r@O7k2L$r3JG<$9$k9=B$BN\e(B 
419 <concept>mime-content-disposition</concept> \e$B$rDs6!$7$^$9!#\e(B
420
421
422 <h2> mime-content-disposition \e$B9=B$BN\e(B
423 <node> mime-content-disposition
424 <p>
425 <define type="Structure" name="mime-content-disposition">
426 <p>
427 Content-Disposition \e$BMs$N2r@O7k2L$r<}$a$k$?$a$N9=B$BN!#\e(B
428 <p>
429 \e$B$3$N9=B$BN$r;2>H$9$k$K$O\e(B <code>mime-content-disposition-\e$BMWAGL>\e(B</code> \e$B$H\e(B
430 \e$B$$$&L>A0$N;2>H4X?t$rMQ$$$k!#\e(B
431 <p>
432 \e$B$3$N9=B$BN$NMWAG$O0J2<$NDL$j$G$"$k!'\e(B
433
434 <vl>
435 <dt>disposition-type<dd>disposition-type (symbol).
436 </dd>
437 <dt>parameters<dd>Content-Disposition \e$BMs$N\e(B parameter (\e$BO"A[\e(B list).
438 </dd>
439 </vl>
440 </define>
441
442 <defun name="mime-content-disposition-parameter">
443 <args> content-disposition parameter
444 <p>
445 <var>content-disposition</var> \e$B$N\e(B <var>parameter</var> \e$B$NCM$rJV$9!#\e(B
446 </defun>
447
448 <defun name="mime-content-disposition-filename">
449 <args> content-disposition
450 <p>
451 <var>content-disposition</var> \e$B$N\e(B filename \e$B$NCM$rJV$9!#\e(B
452 </defun>
453
454
455 <h2> Content-Disposition \e$BMs$N2r@O4o\e(B
456 <node> Content-Disposition parser
457 <p>
458 <defun name="mime-parse-Content-Disposition">
459             <args> string
460 <p>
461 <var>string</var> \e$B$r\e(B content-disposition \e$B$H$7$F2r@O$7$?7k2L$rJV$9!#\e(B
462 </defun>
463
464 <defun name="mime-read-Content-Disposition">
465 <p>
466 \e$B8=:_$N\e(B buffer \e$B$N\e(B Content-Disposition \e$BMs$rFI$_<h$j!"2r@O$7$?7k2L$rJV$9!#\e(B
467 <p>
468 Content-Disposition \e$BMs$,B8:_$7$J$$>l9g$O\e(B nil \e$B$rJV$9!#\e(B
469 </defun>
470
471
472 <h1> \e$BId9f2=K!\e(B
473 <node> Content-Transfer-Encoding
474 <p>
475 <concept>Content-Transfer-Encoding \e$BMs\e(B</concept> \e$B$O\e(B entity \e$B$NId9f2=K!$r5-\e(B
476 \e$B=R$9$k$?$a$N$b$N$G$9!#\e(B
477 <p>
478 FLIM \e$B$G$O\e(B Content-Transfer-Encoding \e$BMs$r9=J82r@O$9$k4X?t$rDs6!$7$^$9!#$3\e(B
479 \e$B$l$i$N4X?t$O\e(B Content-Transfer-Encoding \e$BMs$N>pJs$OJ8;zNs$GI=8=$7$^$9!#\e(B
480 <p>
481 \e$B$^$?!"\e(BContent-Transfer-Encoding \e$B$K4p$E$$$FId9f2=!&I|9f2=$r9T$&4X?t$bDs\e(B
482 \e$B6!$5$l$^$9!#\e(B
483
484
485 <h2> Content-Transfer-Encoding \e$BMs$N2r@O4o\e(B
486 <node> Content-Transfer-Encoding parser
487 <p>
488 <defun name="mime-parse-Content-Transfer-Encoding">
489           <args>string
490 <p>
491 <var>string</var> \e$B$r\e(B content-transfer-encoding \e$B$H$7$F2r@O$7$?7k2L$rJV$9!#\e(B
492 </defun>
493
494 <defun name="mime-read-Content-Transfer-Encoding">
495           <opts>default-encoding
496 <p>
497 \e$B8=:_$N\e(B buffer \e$B$N\e(B Content-Transfer-Encoding \e$BMs$rFI$_<h$j!"2r@O$7$?7k2L$r\e(B
498 \e$BJV$9!#\e(B
499 <p>
500 Content-Transfer-Encoding \e$BMs$,B8:_$7$J$$>l9g$O\e(B
501 <var>default-encoding</var> \e$B$rJV$9!#\e(B
502 </defun>
503
504
505 <h2> Content-Transfer-Encoding \e$B$NId9f2=!&I|9f2=\e(B
506 <node> encoder/decoder
507
508 <h3> \e$BNN0h$NId9f2=!&I|9f2=\e(B
509 <node> Region encoder/decoder
510 <p>
511 <defun name="mime-encode-region">
512             <args> start end encoding
513 <p>
514 Encode region <var>start</var> to <var>end</var> of current buffer
515 using <var>encoding</var>.
516 </defun>
517
518 <defun name="mime-decode-region">
519             <args> start end encoding
520 <p>
521 Decode region <var>start</var> to <var>end</var> of current buffer
522 using <var>encoding</var>.
523 </defun>
524
525 <defvar name="mime-encoding-method-alist">
526 <p>
527 Alist of encoding vs. corresponding method to encode region.
528 <p>
529 Each element looks like <code>(STRING . FUNCTION)</code> or
530 <code>(STRING . nil)</code>.  <var>string</var> is
531 content-transfer-encoding.  <code>function</code> is region encoder
532 and <code>nil</code> means not to encode.
533 </defvar>
534
535 <defvar name="mime-decoding-method-alist">
536 <p>
537 Alist of encoding vs. corresponding method to decode region.
538 <p>
539 Each element looks like <code>(STRING . FUNCTION)</code> or
540 <code>(STRING . nil)</code>.  <var>string</var> is
541 content-transfer-encoding.  <code>function</code> is region decoder
542 and <code>nil</code> means not to decode.
543 </defvar>
544
545
546 <h3> \e$BJ8;zNs$NId9f2=!&I|9f2=\e(B
547 <node> String encoder/decoder
548 <p>
549 <defun name="mime-decode-string">
550               <args> string encoding
551 <p>
552 <var>string</var> \e$B$r\e(B <var>encoding</var> \e$B$H$7$FI|9f$7$?7k2L$rJV$7$^$9!#\e(B
553 </defun>
554
555 <defvar name="mime-string-decoding-method-alist">
556 <p>
557 Alist of encoding vs. corresponding method to decode string.
558 <p>
559 Each element looks like <code>(STRING . FUNCTION)</code>.
560 STRING is content-transfer-encoding.
561 FUNCTION is string decoder.
562 </defvar>
563
564
565 <h3> File \e$B$NId9f2=!&I|9f2=\e(B
566 <node> File encoder/decoder
567 <p>
568 <defun name="mime-insert-encoded-file">
569             <args> filename encoding
570 <p>
571 Insert file <var>FILENAME</var> encoded by <var>ENCODING</var> format.
572 </defun>
573
574 <defun name="mime-write-decoded-region">
575               <args> start end filename encoding
576 <p>
577 Decode and write current region encoded by <var>encoding</var> into
578 <var>filename</var>.
579 <p>
580 <var>start</var> and <var>end</var> are buffer positions.
581 </defun>
582
583 <defvar name="mime-file-encoding-method-alist">
584 <p>
585 Alist of encoding vs. corresponding method to insert encoded file.
586 <p>
587 Each element looks like <code>(STRING . FUNCTION)</code>.  STRING is
588 content-transfer-encoding.  FUNCTION is function to insert encoded
589 file.
590 </defvar>
591
592 <defvar name="mime-file-decoding-method-alist">
593 <p>
594 Alist of encoding vs. corresponding method to write decoded region to
595 file.
596 <p>
597 Each element looks like <code>(STRING . FUNCTION)</code>.  STRING is
598 content-transfer-encoding.  FUNCTION is function to write decoded
599 region to file.
600 </defvar>
601
602
603 <h1> Header \e$B$N\e(B network \e$BI=8=\e(B
604 <node> encoded-word
605 <p>
606 encoded-word \e$B$O\e(B header \e$B$GHs\e(B <dref>ASCII</dref> \e$BJ8;z$rI=8=$9$k$?$a$N7A\e(B
607 \e$B<0$G!"\e(B<concept>RFC 2047</concept> \e$B$GDj5A$5$l$F$$$^$9!#\e(B
608 <p>
609 <rfc number="2047" type="Standards Track" author="K. Moore"
610               title="MIME (Multipurpose Internet Mail Extensions) Part
611               Three: Message Header Extensions for Non-ASCII Text"
612               date="November 1996" obsolete="1521,1522,1590">
613 <p>
614 \e$B$^$?!"9T57$N0-$$$3$H$@$H8@$($^$9$,!"\e(Bencoded-word \e$B$rMQ$$$:$KHs\e(B 
615 <dref>ASCII</dref> \e$BJ8;z$r\e(B header \e$B$KF~$l$?5-;v$bB8:_$7$^$9!#\e(B
616 <p>
617 FLIM \e$B$O$3$l$i$rId9f2=!&I|9f2=$9$k5!G=$rDs6!$7$^$9!#\e(B
618
619
620 <h2> Header \e$B$NId9f2=!&I|9f2=\e(B
621 <node> Header encoder/decoder
622 <p>
623 <defun name="eword-encode-header">
624               <opts> code-conversion separator
625 <p>
626 Decode MIME encoded-words in header fields.
627 <p>
628 If <var>code-conversion</var> is <code>nil</code>, it decodes only
629 encoded-words.  If it is mime-charset, it decodes non-ASCII bit
630 patterns as the mime-charset.  Otherwise it decodes non-ASCII bit
631 patterns as the default-mime-charset.
632 <p>
633 If <var>separator</var> is not nil, it is used as header separator.
634 </defun>
635
636 <defun name="eword-encode-header">
637               <opts> code-conversion
638 <p>
639 Encode header fields to network representation, such as MIME
640 encoded-word.
641 <p>
642 It refer variable <code>eword-field-encoding-method-alist</code>.
643 </defun>
644
645
646
647 <h1> \e$BIUO?\e(B
648 <node> Appendix
649
650 <h2> \e$BMQ8l\e(B
651 <node> Glossary
652
653 <h3> 7bit
654 <node> 7bit
655 <p>
656 \e$B$3$3$G$O\e(B 0 \e$B$+$i\e(B 127 \e$B$N@0?t$r;X$9!#\e(B
657 <p>
658\e$B$+$i\e(B 127 \e$B$N@0?t$NNs$GI=8=$G$-$k$h$&$J\e(B data \e$B$r\e(B ``7bit \e$B$N\e(B data'' \e$B$H8F\e(B
659 \e$B$V!#\e(B
660 <p>
661 \e$B$^$?!"\e(B0 \e$B$+$i\e(B 31 \e$B$*$h$S\e(B 127 \e$B$GI=8=$5$l$k@)8fJ8;z$H\e(B 32 \e$B$GI=8=$5$l$k6uGr\e(B
662 \e$B$H\e(B 33 \e$B$+$i\e(B 126 \e$B$GI=8=$5$l$k?^7AJ8;z$+$i$J$kJ8;zNs$N$3$H$r\e(B ``7bit \e$B$NJ8\e(B
663 \e$B;zNs\e(B'' \e$B$H8F$V!J$3$l$O\e(B <dref>ISO 2022</dref> \e$B$N!V\e(B7 \e$BC10L7O!W$HF1MM!K!#\e(B
664 <p>
665 \e$BEAE}E*$J\e(B Internet \e$B$N\e(B <dref>MTA</dref> \e$B$O\e(B 7bit \e$B$N\e(B data \e$B$rE>Aw$G$-$k$N$G!"\e(B
666 7bit \e$B$N\e(B data \e$B$O\e(B <dref>Quoted-Printable</dref> \e$B$d\e(B <dref>Base64</dref> 
667 \e$B$H$$$C$?JQ49$r9T$o$J$/$F$b$=$N$^$^E>Aw$G$-$k!#\e(B
668 <p>
669 \e$B$7$+$7!"\e(B7bit \e$B$G$"$l$P$I$s$J\e(B data \e$B$G$bNI$$$H$O$$$($J$$!#$J$<$J$i!"#19T\e(B
670 \e$B$ND9$5$,$"$^$j$KD9$$$H!"\e(BMTA \e$B$O$=$N\e(B message \e$B$rE>Aw$9$k$3$H$,$G$-$J$$$+\e(B
671 \e$B$i$G$"$k!#$A$J$_$K!"\e(B<dref>RFC 821</dref> \e$B$O#19T$O2~9TJ8;z$r=|$$$F\e(B 998
672 byte \e$B0JFb$G$"$k$3$H$r5a$a$F$$$k!#$h$C$F!"$3$l0J>e$N9T$,4^$^$l$k2DG=@-\e(B
673 \e$B$N$"$k\e(B data, \e$BNc$($P!"\e(BPostscript \e$B$N\e(B data \e$B$J$I$O\e(B Quoted-Printable \e$BEy$G\e(B 
674 encode\e$B$9$kI,MQ$,$"$k!#\e(B
675
676
677 <h3> 8bit
678 <node> 8bit
679 <p>
680 \e$B$3$3$G$O\e(B 0 \e$B$+$i\e(B 255 \e$B$N@0?t$r;X$9!#\e(B
681 <p>
682\e$B$+$i\e(B 255 \e$B$N@0?t$NNs$GI=8=$G$-$k$h$&$J\e(B data \e$B$r\e(B ``8bit \e$B$N\e(B data'' \e$B$H8F\e(B
683 \e$B$V!#\e(B
684 <p>
685 \e$B$^$?!"\e(B0 \e$B$+$i\e(B 31, 127 \e$B$*$h$S\e(B 128 \e$B$+$i\e(B 159 \e$B$GI=8=$5$l$k@)8fJ8;z$H\e(B 32 \e$B$G\e(B
686 \e$BI=8=$5$l$k6uGr$H\e(B 33 \e$B$+$i\e(B 126 \e$B$H\e(B 160 \e$B$+$i\e(B 255 \e$B$GI=8=$5$l$k?^7AJ8;z$+$i\e(B
687 \e$B$J$kJ8;zNs$N$3$H$r\e(B ``8bit \e$B$NJ8;zNs\e(B'' \e$B$H8F$V!J$3$l$O\e(B <dref>ISO
688 2022</dref> \e$B$N!V\e(B8 \e$BC10L7O!W$HF1MM!K!#\e(B
689 <p>
690 <dref>iso-8859-1</dref> \e$B$d\e(B <dref>euc-kr</dref> \e$B$H$$$C$?Id9f2=J8;z=89g\e(B
691 \e$B$O\e(B 8bit \e$B$NJ8;zNs$G$"$k!#\e(B
692 <p>
693 \e$BEAE}E*$J\e(B Internet \e$B$N\e(B <dref>MTA</dref> \e$B$O\e(B <dref>7bit</dref> \e$B$N\e(B data \e$B$7\e(B
694 \e$B$+E>Aw$G$-$J$$$N$G!"$=$&$7$?\e(B MTA \e$B$r7PM3$9$k>l9g!"\e(B
695 <dref>Quoted-Printable</dref> \e$B$d\e(B <dref>Base64</dref> \e$B$H$$$C$?JQ49$r9T\e(B
696 \e$B$o$J$/$F$O$J$i$J$$!#\e(B
697 <p>
698 \e$B$7$+$7!":G6a$G$O\e(B 8bit \e$B$NJ8;zNs$r$=$N$^$^DL$9$3$H$,$G$-$k\e(B MTA \e$B$bEP>l$7\e(B
699 \e$B$F$-$?$N$G!"$=$N$^$^Aw$k$3$H$,$G$-$k>l9g$bA}$($F$-$?!#\e(B
700 <p>
701 \e$B$7$+$7!"\e(B8bit \e$B$G$"$l$P$I$s$J\e(B data \e$B$G$bNI$$$H$O$$$($J$$!#$J$<$J$i!"#19T\e(B
702 \e$B$ND9$5$,$"$^$j$KD9$$$H!"\e(BMTA \e$B$O$=$N\e(B message \e$B$rE>Aw$9$k$3$H$,$G$-$J$$$+\e(B
703 \e$B$i$G$"$k!#$A$J$_$K!"\e(B<dref>RFC 821</dref> \e$B$O#19T$O2~9TJ8;z$r=|$$$F\e(B 998
704 byte \e$B0JFb$G$"$k$3$H$r5a$a$F$$$k!#$h$C$F!"$3$l0J>e$N9T$,4^$^$l$k2DG=@-\e(B
705 \e$B$N$"$k\e(B data, \e$BNc$($P!"\e(BPostscript \e$B$N\e(B data \e$B$J$I$O\e(B Quoted-Printable \e$BEy$G\e(B 
706 encode\e$B$9$kI,MQ$,$"$k!#\e(B
707 <p>
708 \e$B$^$?!"$3$&$7$?M}M3$+$i!"#19T$,\e(B 999 byte \e$B0J>e$N9T$,B8:_$9$k2DG=@-$N$"$k\e(B
709 data \e$B$O\e(B <a node="binary"><concept>binary</concept></a> \e$B$H8F$V$3$H$K$9\e(B
710 \e$B$k!#\e(B
711 <p>
712 \e$B$A$J$_$K!"\e(B7bit \e$B$GI=8=$G$-$k\e(B data \e$B$O\e(B 8bit \e$B$G$bI=8=$G$-$k!#$h$C$F!"\e(B
713 ``8bit'' \e$B$H8@$C$?>l9g!"#19T$,\e(B 998 byte \e$B0J2<$NG$0U$N\e(B data \e$B$r;X$9$3$H$,\e(B
714 \e$B$"$k!#\e(B
715
716
717 <h3> Base64
718 <node> Base64
719 <p>
720 <dref>RFC 2045</dref> \e$B$GDj5A$5$l$F$$$k\e(B <dref>MIME</dref> \e$B$K$*$1$k\e(B <a
721 node="binary">binary data</a> \e$B$N\e(B network \e$B$G$NJQ49K!$N#1$D!#\e(B
722 <p>
723 \e$B!X\e(B64 \e$B?J?t!Y$H$$$&0UL#$G!"\e(B3 byte \e$B$N\e(B data \e$B$r\e(B 0 \e$B$+$i\e(B 63 \e$B$N?t$rI=$9\e(B 
724 <dref>ASCII</dref> 4 \e$BJ8;z$KJQ49$9$kJ}K!!#!J$b$7!"\e(B4 \e$BJ8;z$K$J$i$J$1$l$P\e(B 
725 <concept>pad</concept> \e$B$H8F$P$l$k5M$aJ*$r$7$FD9$5$rD4@0$9$k!K\e(B
726 <p>
727 \e$B$3$N\e(B 65 \e$B<oN`$NJ8;z$O\e(B ASCII \e$B$H\e(B EBCDIC \e$B$N6&DLItJ,$+$iA*$P$l$F$*$j!"\e(B
728 Internet \e$B0J30$N\e(B network \e$B$r7PM3$9$k>l9g$G$b0BA4$KE>Aw$G$-$k$h$&$K@_7W$5\e(B
729 \e$B$l$F$$$k!#\e(B
730
731
732 <h3> ASCII
733 <node> ASCII
734 <p>
735 \e$B%"%a%j%+O"K.$G;H$o$l$kJ8;z$rId9f2=$7$?\e(B<dref>\e$BId9f2=J8;z=89g\e(B</dref>\e$B!#\e(B
736 A-Z, a-z \e$B$N\e(B Latin \e$BJ8;z$H?t;z!"4v$D$+$N5-9f$+$i$J$k!#\e(BISO 646 \e$B$N0l$D$G!"\e(B
737 \e$B8=:_$O9q:]4p=`HG\e(B (IRV) \e$B$K$J$C$F$$$k!#\e(B
738
739 <standard abbrev="ASCII" title-en="Coded Character Set -- 7-Bit
740               American Standard Code for Information Interchange"
741               number="ANSI X3.4" year="1986">
742
743
744 <h3> Coded character set\e$B!JId9f2=J8;z=89g!K\e(B, Character code\e$B!JJ8;zId9f!K\e(B
745 <node> Coded character set
746 <p>
747 \e$BJ8;z$H\e(B byte \e$BNs$H#1BP#1$KBP1~IU$1$k[#Kf$G$J$$5,B'$N=89g!#\e(B
748
749
750 <h3> binary
751 <node> binary
752 <p>
753 \e$BG$0U$N\e(B byte \e$BNs$r\e(B <concept>binary</concept> \e$B$H8F$V!#\e(B
754 <p>
755 <dref>8bit</dref> \e$B$H0[$J$k$N$O\e(B data \e$B$K9T$N9=B$$r2>Dj$7$J$$$3$H$G$"$k!#\e(B
756 <p>
757 \e$B$^$?!"9T$N9=B$$,$"$C$F$b!"\e(B999 byte \e$B0J>e$+$i$J$k9T$,$"$k>l9g$b\e(B binary 
758 \e$B$H8F$V$3$H$K$9$k!#\e(B
759 <p>
760 \e$B$A$J$_$K!"\e(B<dref>7bit</dref> \e$B$d\e(B 8bit \e$B$GI=8=$G$-$k\e(B data \e$B$O\e(B binary \e$B$G$bI=\e(B
761 \e$B8=$G$-$k!#$h$C$F!"\e(B<concept>binary data</concept> \e$B$H8@$C$?>l9g!"G$0U$N\e(B 
762 data \e$B$r;X$9$3$H$,$"$k!#\e(B
763
764
765 <h3> media-type
766 <node> media-type
767 <p>
768 <dref>MIME</dref> \e$B$K$*$1$k\e(B <dref>entity</dref> \e$B$N<oN`!#\e(B
769 <concept>primary-type</concept> \e$B$H\e(B <concept>subtype</concept> \e$B$+$i$J$k!#\e(B
770 <dref>RFC 2046</dref> \e$B$GDj5A$5$l$F$$$k!#\e(B
771 <p>
772 type \e$B$OI8=`$G$O\e(B
773
774 <ul>
775 <li><concept>text</concept>
776 </li>
777 <li><concept>image</concept>
778 </li>
779 <li><concept>audio</concept>
780 </li>
781 <li><concept>video</concept>
782 </li>
783 <li><concept>application</concept>
784 </li>
785 <li><a node="multipart"><concept>multipart</concept></a>
786 </li>
787 <li><concept>message</concept>
788 </ul>
789
790 <noindent>
791 \e$B$,Dj5A$5$l!"$=$l$>$l$K$O\e(B application/octet-stream, audio/basic,
792 image/jpeg, <dref>multipart/mixed</dref>, <dref>text/plain</dref>,
793 video/mpeg \e$B$J$I$N$5$^$6$^$J\e(B subtype \e$B$,Dj5A$5$l$F$$$k!#\e(B
794
795 <memo title="\e$BCm0U\e(B">
796 <p>
797 \e$B$3$3$G$O!"\e(Btext/plain \e$B$J$I$N\e(B type/subtype \e$B$NAH$r$7$P$7$P\e(B 
798 <concept>primary-type/subtype</concept> \e$B$H=q$/!#\e(B
799 </memo>
800
801 <p>
802 media-type \e$B$O!"\e(BRFC 2046 \e$B$GDj5A$5$l$F$$$k$b$N$K2C$($F!"EPO?$9$k$3$H$b$G\e(B
803 \e$B$-$k!#8=:_!"EPO?$5$l$F$$$k$b$N$O\e(B <a
804 href="ftp://ftp.isi.edu/in-notes/iana/assignments/media-types">MEDIA
805 TYPES</a> \e$B$G;2>H$G$-$k!#\e(B
806 <p>
807 \e$B$^$?!"\e(Btype \e$B$b$7$/$O\e(B subtype \e$B$K!"A0$K\e(B `x-' \e$B$rIU$1$?\e(B 
808 <concept>x-token</concept> \e$B$rMQ$$$k$3$H$K$h$j!"EPO?$5$l$F$$$J$$$b$N$r\e(B
809 \e$B;dE*$KMQ$$$k$3$H$b$G$-$k!#$7$+$7!"EvA3$N$3$H$J$,$i!"$3$&$7$?;dE*$J\e(B 
810 media-type \e$B$ONJ2r$rF@$?<T$N4V$G$7$+2r<a$G$-$J$$$N$GMxMQ$K$OCm0U$9$k$3\e(B
811 \e$B$H!#\e(B
812 <p>
813 <cf node="Content-Type">
814
815
816 <h3> message
817 <node> message
818 <p>
819 \e$B$3$3$G$O\e(B mail \e$B$H\e(B news \e$B5-;v$NAm>N$H$7$FMQ$$$k!#\e(B
820
821
822 <h3> MIME
823 <node> MIME
824 <p>
825 <concept>Multipurpose Internet Mail Extensions</concept> \e$B$NN,$G!"\e(B
826 Internet \e$B$N\e(B mail \e$B$d\e(B news \e$B$G\e(B <a node="us-ascii">us-ascii plain text</a> 
827 \e$B0J30$NJ8;z$r;H$&$?$a$N\e(B <dref>RFC 822</dref> \e$B$KBP$9$k3HD%!#\e(B
828 <p>
829 RFC 2045 \e$B$OKAF,$G<!$N$h$&$K=R$Y$F$$$k!'\e(B
830 <p>
831 STD 11, RFC 822 \e$B$O!"\e(BUS-ASCII message header \e$B$K4X$7$FHs>o$K>\:Y$K5,Dj$7\e(B
832 \e$B$?\e(B message \e$BI=8=\e(B protocol \e$B$rDj5A$7$F$$$k!#$7$+$7!"$=$l$OC1$K\e(B flat \e$B$J\e(B 
833 US-ASCII text \e$B$N$_$KN1$^$j!"\e(Bmessage \e$B$NFbMF$d\e(B message body \e$B$K4X$9$k5,Dj\e(B
834 \e$B$O$J$5$l$F$$$J$$!#\e(BMultipurpose Internet Mail Extensions, \e$B$"$k$$$O\e(B MIME 
835 \e$B$HAm>N$5$l$k!"$3$N0lO"$NJ8=q$O!"0J2<$N;v$r2DG=$H$9$k$?$a$K\e(B message \e$B$N\e(B
836 \e$B7A<0$r:FDj5A$7$?!'\e(B
837
838 <ol>
839 <li>\e$BJ8=q\e(B message body \e$B$K$*$1$k\e(B US-ASCII \e$B0J30$NJ8;z=89g\e(B
840 </li>
841 <li>\e$BHsJ8=q\e(B message body
842 </li>
843 <li>\e$BJ#?t$NItJ,$+$i$J$k\e(B message body
844 </li>
845 <li>US-ASCII \e$B0J30$NJ8;z=89g$+$i$J$kJ8=q\e(B header \e$B>pJs\e(B
846 </ol>
847
848 <p>
849 <dref>RFC 2045</dref>, <dref>RFC 2046</dref>, <a
850 node="encoded-word">RFC 2047</a>, <dref>RFC 2048</dref>, <dref>RFC
851 2049</dref> \e$B$GDj5A$5$l$F$$$k!#\e(B
852
853
854 <h3> MIME charset
855 <node> MIME charset
856 <p>
857 <dref>Content-Type</dref> \e$BMs$d\e(B <dref>encoded-word</dref> \e$B$N\e(B charset
858 parameter \e$B$GMQ$$$i$l$kEPO?$5$l$?\e(B<a node="Coded character set">\e$BId9f2=J8\e(B
859 \e$B;z=89g\e(B</a>\e$B!#\e(B
860 <p>
861 <dref>RFC 2045</dref> \e$B$GDj5A$5$l$F$$$k!#\e(B
862 <p>
863 iso-2022-jp \e$B$d\e(B euc-kr \e$B$O$=$N#1$D!#\e(B
864
865
866 <h3> MTA
867 <node> MTA
868 <p>
869 <concept>Message Transfer Agent</concept> \e$B$NN,$G!"\e(Bqmail \e$B$d\e(B sendmail \e$B$J\e(B
870 \e$B$I$N\e(B mail \e$BG[Aw\e(B program \e$B$H\e(B inn \e$B$J$I$N\e(B news server \e$B$NAm>N!#\e(B
871 <p>
872 <cf node="MUA">
873
874
875 <h3> MUA
876 <node> MUA
877 <p>
878 <concept>Message User Agent</concept> \e$B$NN,$G!"\e(Bmail reader \e$B$H\e(B news
879 reader \e$B$NAm>N!#\e(B
880 <p>
881 <cf node="MTA">
882
883
884 <h3> Quoted-Printable
885 <node> Quoted-Printable
886 <p>
887 <dref>RFC 2045</dref> \e$B$GDj5A$5$l$F$$$k\e(B <dref>MIME</dref> \e$B$K$*$1$k\e(B 
888 <dref>binary data</dref> \e$B$N\e(B network \e$B$G$NJQ49K!$N#1$D!#\e(B
889 <p>
890 `=' \e$B$d@)8fJ8;z$d\e(B 128 \e$B0J>e$NJ8;z$J$I$O\e(B `=AF' \e$B$N$h$&$K\e(B `=' \e$B$N8e$KB3$/\e(B 16 
891 \e$B?J?t$GI=8=$9$k!#$3$N$?$a!"\e(B<dref>ASCII</dref> \e$BJ8;zCf?4$N\e(B data \e$B$G$O\e(B 
892 <dref>Base64</dref> \e$B$KHf$Y$k$H2DFI@-$,9b$/$J$k2DG=@-$,$"$k!#\e(B
893 <p>
894 \e$B$7$+$7$J$,$i!"\e(BEBCDIC \e$B$K$OB8:_$7$J$$J8;z$rMxMQ$9$k>l9g!"\e(BEBCDIC \e$B$rMxMQ$7\e(B
895 \e$B$F$$$k\e(B network \e$B$G$O0BA4$KE>Aw$9$k$3$H$,$G$-$:!"\e(BBase64 \e$B$KHf$Y$F0BA4@-$O\e(B
896 \e$BDc$$!#\e(B
897
898
899 <h3> RFC 822
900 <node> RFC 822
901 <p>
902 Internet mail \e$B$N<g$K\e(B <concept>message header</concept> \e$B$K4X$9$k7A<0$K\e(B
903 \e$B4X$9$kI8=`$rDj$a$F$$$k\e(B RFC.
904
905 <memo>
906 <p>
907 news message \e$B$b$3$l$K=`$8$F$$$k$N$G!"\e(B<concept>Internet mail</concept> 
908 \e$B$H=q$/$h$j$b!"\e(B<concept>Internet message</concept> \e$B$H=q$$$?J}$,NI$$$+$b\e(B
909 \e$B$7$l$J$$!#\e(B
910 </memo>
911
912 <rfc number="822" type="STD 11" author="D. Crocker" title="Standard
913               for the Format of ARPA Internet Text Messages"
914               date="August 1982">
915
916
917 <h3> RFC 1036
918 <node> RFC 1036
919 <p>
920 USENET \e$B$G$N\e(B message \e$B$N7A<0$rDj$a$?\e(B RFC.  <dref>RFC 822</dref> \e$B$N\e(B 
921 subset \e$B$K$J$C$F$$$k!#\e(BInternet \e$B$NI8=`$G$O$J$$$,!"\e(BUSENET \e$B0J30$N\e(B netnews 
922 \e$B$G$b$3$l$K=`$8$F$$$k$b$N$,B?$$!#\e(B
923
924 <rfc name="USENET" number="1036" author="M. Horton and R. Adams"
925               title="Standard for Interchange of USENET Messages"
926               date="December 1987" obsolete="850">
927
928
929 <h3> RFC 2045
930 <node> RFC 2045
931 <p>
932 <rfc number="2045" type="Standards Track" author="N. Freed and
933               N. Borenstein" title="Multipurpose Internet Mail
934               Extensions (MIME) Part One: Format of Internet Message
935               Bodies" date="November 1996" obsolete="1521, 1522,
936               1590">
937
938
939 <h3> RFC 2046
940 <node> RFC 2046
941 <p>
942 <rfc number="2046" type="Standards Track" author="N. Freed and
943               N. Borenstein" title="Multipurpose Internet Mail
944                  Extensions (MIME) Part Two: Media Types"
945                  date="November 1996" obsolete="1521, 1522, 1590">
946
947
948 <h3> RFC 2048
949 <node> RFC 2048
950 <p>
951 <rfc number="2048" type="Standards Track" author="N. Freed, J. Klensin
952               and J. Postel" title="Multipurpose Internet Mail
953               Extensions (MIME) Part Four: Registration Procedures"
954               date="November 1996" obsolete="1521, 1522, 1590">
955
956
957 <h3> RFC 2049
958 <node> RFC 2049
959 <p>
960 <rfc number="2049" type="Standards Track" author="N. Freed and
961               N. Borenstein" title="Multipurpose Internet Mail
962               Extensions (MIME) Part Five: Conformance Criteria and
963               Examples" date="November 1996" obsolete="1521, 1522,
964               1590">
965
966
967 <h3> plain text
968 <node> plain text
969 <p>
970 \e$B=qBN$dAHHG$K4X$9$k>pJs$r;}$?$J$$\e(B<a node="Coded character set">\e$BJ8;zId9f\e(B
971 </a>\e$B$N$_$GI=8=$5$l$k\e(B text \e$B>pJs!#\e(B<cf node="text/plain">
972
973
974 <h3> us-ascii
975 <node> us-ascii
976 <p>
977 \e$B%"%a%j%+O"K.$J$I$G;H$o$l$k1Q8l$J$I$rI=8=$9$k$?$a$N\e(B <dref>MIME
978 charset</dref> \e$B$N#1$D!#\e(B
979 <p>
980 <dref>ASCII</dref> \e$B$N$_$+$i$J$j\e(B ISO 2022 \e$B$K$h$kId9f3HD%$O5v$5$l$J$$!#\e(B
981 <p>
982 Internet message \e$B$K$*$1$kI8=`$N\e(B<a node="Coded character set">\e$BId9f2=J8\e(B
983 \e$B;z=89g\e(B</a>\e$B$G$"$j!"L@<(E*$K\e(B MIME charset \e$B$,<($5$l$J$$>l9g$O86B'$H$7$F\e(B 
984 <concept>us-ascii</concept> \e$B$,;H$o$l$k!#\e(B
985 <p>
986 \e$B$^$?!"\e(B<dref>RFC 822</dref> \e$B$K$*$1$k\e(B <concept>ASCII</concept> 
987 \e$B$O\e(B us-ascii \e$B$G$"$k!#\e(B
988
989
990 <h2> bug \e$BJs9p$N;EJ}\e(B
991 <node> Bug report
992 <p>
993 FLIM \e$B$N%P%0$r8+$D$1$?$i!"0J2<$N\e(B address \e$B$K\e(B mail \e$B$rAw$C$F$/$@$5$$!'\e(B
994
995 <ul>
996 <li> \e$BF|K\8l\e(B <mail>bug-tm-ja@chamonix.jaist.ac.jp</mail>
997 <li> \e$B1Q8l\e(B <mail>bug-tm-en@chamonix.jaist.ac.jp</mail>
998 </ul>
999
1000 <p>
1001 \e$BC"$7!"$"$^$j$K$b8E$$HG$K4X$9$kJs9p$O4?7^$5$l$^$;$s!#8E$$HG$N\e(B bug \e$B$O!"\e(B
1002 \e$B?7$7$$HG$G$O<#$C$F$$$k$+$b$7$l$^$;$s!#$^$:!":G?7HG$G3NG'$7$F$_$^$7$g$&!#\e(B
1003 <p>
1004 \e$B$=$l$+$i!"E,@Z$JJs9p$r$7$^$7$g$&!#C1$K!V$&$^$/F0$+$J$$!W$H8@$o$l$F$b$I\e(B
1005 \e$B$&$$$&>u67$J$N$+$O$5$C$Q$jH=$j$^$;$s!#:GDc8B!"\e(BOS, emacs, APEL, FLIM,
1006 SEMI, \e$B;H$C$F$$$k\e(B MUA \e$B$N<oN`$*$h$SHG!"@_Dj$r=q$/I,MW$,$"$j$^$9!#$^$?!"\e(B
1007 error \e$B$,5/$C$F$$$k>l9g$O\e(B backtrace \e$B$rAw$k$3$H$b=EMW$G$9!#\e(B<cf
1008 file="emacs" node="Bugs">
1009 <p>
1010 \e$B$^$?!"\e(Bbug \e$B$OBgDqJ#?t$N?M$,Ax6x$9$k$b$N$G$9!J$=$&$G$J$1$l$P!"\e(Bbug \e$B$G$O$J\e(B
1011 \e$B$$2DG=@-$,$"$j$^$9!K!#$@$+$i!":n<T$KD>@\\e(B mail \e$B$rAw$k$H:n<T$OF1$8\e(B mail
1012 \e$B$r2?DL$b=q$/1)L\$K$J$j$^$9!#$@$+$i!"I,$:\e(B bug \e$BJs9p$O>e5-$N\e(B address \e$B$KAw$C\e(B
1013 \e$B$F$/$@$5$$!#\e(B
1014
1015 <p>
1016 tm ML \e$B$G$O\e(B FLIM \e$B$N%P%0>pJs$N8r49$d:G?7HG$NG[I[!"\e(BFLIM \e$B$N2~NI$K4X$9$k5D\e(B
1017 \e$BO@$r9T$J$C$F$$$^$9!#\e(Btm ML \e$B$K;22C$7$?$$J}$O\e(B
1018
1019 <ul>
1020 <li> \e$BF|K\8l\e(B <mail>tm-ja-help@chamonix.jaist.ac.jp</mail>
1021 <li> \e$B1Q8l\e(B <mail>tm-en-help@chamonix.jaist.ac.jp</mail>
1022 </ul>
1023
1024 <noindent>
1025 \e$B$K6u$N\e(B mail \e$B$rAw$C$F2<$5$$!#\e(B
1026
1027
1028 <h2> CVS \e$B$K$h$k3+H/\e(B
1029 <node> CVS
1030 <p>
1031 FLIM \e$B$N\e(B file \e$B$O\e(B CVS \e$B$r;H$C$F4IM}$5$l$F$$$^$9!#$3$N$?$a!"0J2<$NJ}K!$G:G\e(B
1032 \e$B?7$N\e(B FLIM \e$B$rF~<j$9$k$3$H$,$G$-$^$9!'\e(B
1033
1034 <verb>
1035 (0) cvs login
1036
1037     % cvs -d :pserver:anonymous@chamonix.jaist.ac.jp:/hare/cvs/root \
1038         login
1039
1040     CVS password: [CR] # NULL string
1041
1042 (1) checkout
1043
1044     % cvs -d :pserver:anonymous@chamonix.jaist.ac.jp:/hare/cvs/root \
1045         checkout [-r TAG] gnus
1046 </verb>
1047
1048 <p>
1049 CVS \e$B$rMQ$$$?3+H/$K;22C$7$?$$J}$O\e(B
1050
1051 <ul>
1052 <li> <mail>cvs@chamonix.jaist.ac.jp</mail>
1053 </ul>
1054
1055 <noindent>
1056 \e$B$^$G!"\e(Baccount \e$BL>$H\e(B UNIX \e$B$N\e(B passwd \e$B$HF1$87A<0$N\e(B crypt \e$B2=$5$l$?\e(B password
1057 \e$B$r1h$($F8fO"Mm$/$@$5$$!#\e(B
1058
1059
1060 <h2> \e$BNr;K\e(B
1061 <node> History
1062 <p>
1063 FLIM \e$B$N\e(B code \e$B$N:G8E$NItJ,$O\e(B \e$B1]JB\e(B \e$B;LCR\e(B \e$B;a$,=q$$$?\e(B <file>mime.el</file>
1064 \e$B$K5/8;$7$^$9!#$3$N>.$5$J\e(B program \e$B$O\e(B Nemacs \e$B$GF0:n$9$k\e(B iso-2022-jp \e$B$N\e(B 
1065 B-encoding \e$B@lMQ$N\e(B encoded-word \e$B$NI|9f2=%W%m%0%i%`$G$7$?!#\e(B
1066 <p>
1067 \e$B$=$N8e!"<i2,\e(B \e$BCNI'\e(B \e$B$O\e(B <file>mime.el</file> \e$B$r85$K\e(B
1068 <file>tiny-mime.el</file> \e$B$H$$$&%W%m%0%i%`$r=q$-$^$9!#$3$l$O!"\e(BNemacs 
1069 \e$B$H\e(B Mule \e$B$GF0:n$9$k\e(B encoded-word \e$B$NId9f2=!&I|9f2=%W%m%0%i%`$G$7$?!#\e(B
1070 <file>tiny-mime.el</file> \e$B$O\e(B B-encoding \e$B$@$1$G$J$/\e(B Q-encoding \e$B$b\e(B
1071 support \e$B$7!"$^$?!"\e(BMULE \e$B$G07$&$3$H$,$G$-$k$5$^$6$^$J\e(B <dref>MIME
1072 charset</dref> \e$B$rF1;~$K;H$&$3$H$,$G$-$^$7$?!#$3$N;~!"\e(BNemacs \e$B$H\e(B Mule \e$B$N\e(B
1073 \e$BAPJ}$r\e(B support \e$B$9$k$?$a$KMQ$$$i$l$?%F%/%K%C%/$O8e$K\e(B emu package \e$B$K$^$H\e(B
1074 \e$B$a$i$l$^$9!#\e(B
1075 <p>
1076 \e$B$3$N:"!"<i2,\e(B \e$BCNI'\e(B \e$B$O\e(B <file>tiny-mime.el</file> \e$B$r$5$^$6$^$J\e(B MUA \e$B$G;H$&\e(B
1077 \e$B$?$a$N@_Dj=8$bG[I[$7$F$$$^$7$?$,!"$=$l$i$O8e$K\e(B
1078 <file>tiny-mime.el</file> \e$B$H$H$b$K#1$D$N\e(B package \e$B$K$^$H$a$i$l!"\e(Btm \e$B$H$$\e(B
1079 \e$B$&L>A0$GG[I[$5$l$^$9!#\e(B
1080 <p>
1081 \e$B<i2,\e(B \e$BCNI'\e(B \e$B$O$d$,$F!"\e(BMIME message \e$B$r1\Mw$9$k$?$a$N%W%m%0%i%`$G$"$k\e(B
1082 <file>tm-body.el</file> \e$B$r=q$-$^$9!#$3$l$O!"$9$0$K\e(B
1083 <file>tm-view.el</file> \e$B$H$$$&L>A0$KJQ$o$j$^$7$?$,!"$d$,$F!"$3$l$,\e(B
1084 <file>tiny-mime.el</file> \e$B$KBe$o$C$F!"\e(Btm \e$B$NCf3K$H$J$j$^$9!#\e(B
1085 <p>
1086 <file>tm-view.el</file> \e$B$OEvA3!"\e(BContent-Transfer-Encoding \e$B$r07$&I,MW$,\e(B
1087 \e$B$"$j$^$9!#$3$NL\E*$N$?$a$K!"\e(BMEL \e$B$,@0Hw$5$l$O$8$a$^$7$?!#\e(BBase64 \e$B$K4X$7\e(B
1088 \e$B$F$O\e(B <file>tiny-mime.el</file> \e$B$N\e(B code \e$B$,0\$5$l!"$^$?!"?7$?$K\e(B
1089 Quoted-Printable \e$B$N\e(B code \e$B$,DI2C$5$l$^$7$?!#$3$l$i$,\e(B
1090 <file>mel-b.el</file> \e$B$H\e(B <file>mel-q.el</file> \e$B$K$J$j$^$7$?!#\e(B
1091 <p>
1092 \e$B$^$?!"8e$K!"<i2,\e(B \e$BCNI'\e(B \e$B$K$h$C$F\e(B uuencode \e$BMQ$N\e(B <file>mel-u.el</file> \e$B$,\e(B
1093 \e$BDI2C$5$l!"$=$N8e$K!">.NS\e(B \e$B=$J?\e(B \e$B;a$K$h$C$F\e(B x-gzip64 \e$BMQ$N\e(B
1094 <file>mel-g.el</file> \e$B$,DI2C$5$l$^$7$?!#\e(B
1095 <p>
1096 tm \e$B$G$O8e$K!"<i2,\e(B \e$BCNI'\e(B \e$B$K$h$C$F\e(B <file>tiny-mime.el</file> \e$B$N:F<BAu$,9T\e(B
1097 \e$B$o$l!"$3$N2aDx$G!"\e(BSTD 11 \e$B$N\e(B parser \e$B$,=q$+$l$^$7$?!#$3$l$O!"8=:_$N\e(B 
1098 <file>std11.el</file> \e$B$KEv$?$j$^$9!#$^$?!"$3$N2aDx$G\e(B 
1099 <file>tiny-mime.el</file> \e$B$OI|9f2=$r9T$&\e(B <file>tm-ew-d.el</file> \e$B$HId\e(B
1100 \e$B9f2=$r9T$&\e(B <file>tm-ew-e.el</file> \e$B$KJ,$1$i$l$^$7$?!#$3$NN><T$,8=:_$N\e(B 
1101 <file>eword-decode.el</file> \e$B$H\e(B <file>eword-encode.el</file> \e$B$N@hAD$K\e(B
1102 \e$BEv$?$j$^$9!#\e(B
1103 <p>
1104 \e$B8e$K!"<i2,\e(B \e$BCNI'\e(B \e$B$i$K$h$C$F\e(B tm \e$B$NA4LL=q$-49$(:n6H$,9T$o$l!"$3$N2aDx$G!"\e(B
1105 tm \e$B$O\e(B APEL, MEL, SEMI, EMH, RMAIL-MIME, Gnus-MIME \e$B$J$I$KJ,$1$i$l$^$7$?!#\e(B
1106 \e$B$3$N$&$A$N\e(B MEL \e$B$,\e(B FLIM \e$B$ND>@\$N@hAD$KEv$?$j$^$9!#\e(B
1107 <p>
1108 \e$B8e$K!"\e(BAPEL \e$B$+$i\e(B <file>std11.el</file> \e$B$,0\$5$l!"$^$?!"\e(B
1109 <file>mailcap.el</file>, <file>eword-decode.el</file> \e$B$*$h$S\e(B 
1110 <file>eword-encode.el</file> \e$B$,\e(B SEMI \e$B$+$i0\$5$l!"\e(Bpackage \e$B$NL>A0$,\e(B FLIM
1111 \e$B$H$J$j$^$9!#\e(B
1112 <p>
1113 \e$B$3$ND>A0$+$iEDCf\e(B \e$BE/\e(B \e$B;a$,$h$j\e(B RFC \e$B$KCi<B$J<BAu$r=q$-;O$a!"$3$l$O!"8=:_!"\e(B
1114 FLIM \e$B$N;^$G$"$k\e(B ``FLIM-FLAM'' \e$B$H$J$C$F$$$^$9!#\e(B
1115
1116
1117 <h1> \e$B35G0:w0z\e(B
1118 <node> Concept Index
1119
1120 <cindex>
1121
1122
1123 <h1> \e$B4X?t:w0z\e(B
1124 <node> Function Index
1125
1126 <findex>
1127
1128
1129 <h1> \e$BJQ?t:w0z\e(B
1130 <node> Variable Index
1131
1132 <vindex>
1133
1134 </body>