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