171e5adfb8b7556d124762916439c9b135b938cc
[elisp/flim.git] / mime-ja.texi
1 \input texinfo.tex
2 @c Generated automatically from mime-ja.sgml by sinfo 3.7.
3 @setfilename mime-ja.info
4 @settitle{FLIM 1.10 MIME \e$B5!G=@bL@=q\e(B}
5 @titlepage
6 @title FLIM 1.10 MIME \e$B5!G=@bL@=q\e(B
7 @author \e$B<i2,\e(B \e$BCNI'\e(B <morioka@@jaist.ac.jp>
8 @subtitle 1998/07/01
9 @end titlepage
10 @node Top, Introduction, (dir), (dir)
11 @top FLIM 1.10 MIME \e$B5!G=@bL@=q\e(B
12
13 @ifinfo
14
15 This file documents MIME features of FLIM, a Internet message
16 parsing/encoding library for GNU Emacs.@refill
17
18 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 
19 FLIM \e$B$N\e(B MIME \e$B5!G=$K4X$7$F@bL@$7$^$9!#\e(B
20 @end ifinfo
21
22 @menu
23 * Introduction::                FLIM \e$B$C$F2?!)\e(B
24 * How to use::                  FLIM \e$B$N\e(B MIME \e$B5!G=$N;H$$J}\e(B
25 * Entity::                      Message \e$B$H\e(B Entity
26 * Content-Type::                Content-Type \e$BMs$N>pJs\e(B
27 * Content-Disposition::         Content-Disposition \e$BMs$N>pJs\e(B
28 * Content-Transfer-Encoding::   \e$BId9f2=K!\e(B
29 * encoded-word::                Header \e$B$N\e(B network \e$BI=8=\e(B
30 * custom::                      \e$B0lHL@_Dj\e(B
31 * Appendix::                    \e$BIUO?\e(B
32 * Concept Index::               \e$B35G0:w0z\e(B
33 * Function Index::              \e$B4X?t:w0z\e(B
34 * Variable Index::              \e$BJQ?t:w0z\e(B
35 @end menu
36
37 @node Introduction, How to use, Top, Top
38 @chapter FLIM \e$B$C$F2?!)\e(B
39
40 FLIM \e$B$O\e(B Internet Message \e$B$NI=8=$dId9f2=$K4X$9$k4pACE*$J5!G=$rDs6!$9$k\e(B
41 \e$B$?$a$N\e(B library \e$B$G$9!#\e(B
42
43
44 @node How to use, Entity, Introduction, Top
45 @chapter FLIM \e$B$N\e(B MIME \e$B5!G=$N;H$$J}\e(B
46
47 FLIM \e$B$NDs6!$9$k\e(B MIME \e$B5!G=$r;H$&$?$a$K$O\e(B
48
49 @lisp
50 (require 'mime)
51 @end lisp
52
53 @noindent
54 \e$B$rI>2A$7$F$/$@$5$$!#\e(B
55
56
57 @node Entity, Content-Type, How to use, Top
58 @chapter Message \e$B$H\e(B Entity
59 @cindex mime-entity
60 @cindex entity
61
62 RFC 2045 (@ref{RFC 2045}) \e$B$K$h$l$P!"!V\e(BEntity \e$B$H$$$&8l$O!"\e(Bmessage, \e$B$b$7$/\e(B
63 \e$B$O!"\e(Bmultipart entity \e$B$N\e(B body \e$BCf$N#1$D$NItJ,$N!"\e(BMIME \e$B$GDj5A$5$l$?\e(B header
64 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
65 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 @strong{entity}\e$B$rMQ$$$k\e(B
66 \e$B$3$H$K$7$^$9!#\e(B@refill
67
68 RFC 2045 \e$B$NDj5A$O!"\e(BMIME message \e$B$,\e(B entity \e$B$r@a$H$9$kLZ9=B$$G$"$k$3$H$r<(\e(B
69 \e$B$7$F$$$^$9!#$D$^$j!"\e(BMIME \e$B$O\e(B message \e$B$rLZ9=B$$K3HD%$7$?Lu$G$9!#\e(B@refill
70
71 FLIM \e$B$O\e(B entity \e$B$N>pJs$rI=8=$9$k$?$a$K\e(B@strong{mime-entity} \e$B9=\e(B
72 \e$BB$BN$rMQ$$$^$9!#0J2<$G$OC1$K\e(B mime-entity \e$B$H8F$V$3$H$K$7$^$9!#\e(B
73
74
75 @menu
76 * Entity creation::             Entity \e$B$N@8@.\e(B
77 * Entity hierarchy::            Entity \e$B3,AX\e(B
78 * Entity Attributes::           Entity \e$B$NB0@-\e(B
79 * Entity-header::               Entity header \e$B$N>pJs\e(B
80 * entity formatting::           Entity \e$B$NJ8;zI=8=\e(B
81 * Entity-content::              Entity \e$B$NFbMF\e(B
82 * Entity buffer::               Entity \e$B$N\e(B buffer \e$B$K$h$kI=8=\e(B
83 * mm-backend::                  Entity \e$B$NI=8=$H<B8=\e(B
84 @end menu
85
86 @node Entity creation, Entity hierarchy, Entity, Entity
87 @section Entity \e$B$N@8@.\e(B
88
89 @defun mime-open-entity &optional  type location
90
91 Open an entity and return it.@refill
92
93 @var{type} is representation-type. (cf. @ref{mm-backend}) @refill
94
95 @var{location} is location of entity.  Specification of it is depended
96 on representation-type.
97 @end defun
98
99
100 @defun mime-parse-buffer &optional  buffer type
101
102 @var{buffer} \e$B$r\e(B message \e$B$H$7$F9=J82r@O$7!"$=$N7k2L$N\e(B mime-entity \e$B$r\e(B 
103 @var{buffer} \e$B$N\e(B@code{mime-message-structure} \e$B$K3JG<$9$k!#\e(B@refill
104
105 @var{buffer} \e$B$,>JN,$5$l$?>l9g!"8=:_$N\e(B buffer \e$B$r9=J82r@O$9$k!#\e(B@refill
106
107 @var{type} \e$B$,;XDj$5$l$?>l9g!"$=$NCM$r@8@.$5$l$k\e(B mime-entity \e$B$NI=>]7?$H$7\e(B
108 \e$B$FMQ$$$k!#>JN,$5$l$?>l9g$O\e(B @var{buffer} \e$B$H$J$k!#\e(B(cf. @ref{mm-backend})
109 @end defun
110
111
112
113 @node Entity hierarchy, Entity Attributes, Entity creation, Entity
114 @section Entity \e$B3,AX\e(B
115 @cindex node-id
116 @cindex entity-number
117 @cindex message
118 @cindex root-entity
119
120 MIME message \e$B$O\e(B entity \e$B$rC10L$H$9$kLZ9=B$$K$J$C$F$$$^$9!#\e(B@refill
121
122 \e$B$3$NLZ$K$*$$$F:,$H$J$k@a$O\e(B message \e$BA4BN$rI=$9\e(B entity \e$B$G$9!#$3$3$G$O!"$3\e(B
123 \e$B$l$r\e(B @strong{root-entity} \e$B$b$7$/$O\e(B@strong{message} \e$B$H8F$S$^$9!#\e(B@refill
124
125 root-entity \e$B0J30$N\e(B entity \e$B$O?F$r;}$A$^$9!#$^$?!"\e(Bentity \e$B$O;R6!$r;}$D$+$b\e(B
126 \e$BCN$l$^$;$s!#$3$N?F;R4X78$r9M$($k$3$H$G\e(B entity \e$B$NAjBP4X78$r07$&$3$H$,$G$-\e(B
127 \e$B$^$9!#\e(B@refill
128
129 \e$B0lJ}!"\e(Bentity \e$B$N\e(B message \e$B$K$*$1$k0LCV$r9M$($k$3$H$b$G$-$^$9!#\e(B@refill
130
131 entity \e$B$O$3$NLZ$K$*$1$k@a$H$J$j$^$9$,!"$3$NLZ$K$O?<$5$HF1$8?<$5$NCf$N\e(B
132 \e$B=gHV$K=>$C$FHV9f$,IU$1$k$3$H$,$G$-$^$9!#B($A!"\e(B
133 @example
134
135                               \e$B(#(!(!(!($\e(B
136                               \e$B("\e(B  nil \e$B("\e(B
137                               \e$B(&(!(((!(%\e(B
138               \e$B(#(!(!(!(!(!(!(!(!(!(+(!(!(!(!(!(!(!(!(!($\e(B
139             \e$B(#(*($\e(B              \e$B(#(*($\e(B              \e$B(#(*($\e(B
140             \e$B("#0("\e(B              \e$B("#1("\e(B              \e$B("#2("\e(B
141             \e$B(&(((%\e(B              \e$B(&(((%\e(B              \e$B(&(((%\e(B
142               \e$B("\e(B        \e$B(#(!(!(!(!(+(!(!(!(!($\e(B        \e$B("\e(B
143           \e$B(#(!(*(!($(#(!(*(!($(#(!(*(!($(#(!(*(!($(#(!(*(!($\e(B
144           \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
145           \e$B(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%\e(B
146 @end example
147
148 @noindent
149 \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
150 \e$B$r\e(B @strong{entity-number} \e$B$H8F$S$^$9!#\e(Bentity-number \e$B$O\e(B S \e$B<0$H\e(B
151 \e$B$7$F$O\e(B @code{(1 2 3)} \e$B$N$h$&$J@0?t$N%j%9%H$H$7$FI=8=$5$l$^$9!#\e(B
152
153 mime-entity \e$B$G$O!"$3$l$HF1MM$N\e(B @strong{node-id} \e$B$rMQ$$$^$9!#\e(Bnode-id \e$B$O$A$g\e(B
154 \e$B$&$I\e(B entity-number \e$B$r5U$K$7$?%j%9%H$G!"\e(Bentity-number 1.2.3 \e$B$KBP1~$9$k\e(B 
155 node-id \e$B$O\e(B @code{(3 2 1)} \e$B$G$9!#\e(B@refill
156
157 \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
158 \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
159 local \e$BJQ?t\e(B @code{mime-message-structure} \e$B$K3JG<$9$k$3$H$K$7$^$9!#\e(B@refill
160
161 @code{mime-message-structure} \e$B$r5/E@$K\e(B entity-number \e$B$d\e(B node-id 
162 \e$B$G<($5$l$k\e(B entity \e$B$r<h$j=P$9$3$H$,$G$-$^$9!#\e(B
163
164 @defvar mime-message-structure
165
166 \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(Bbuffer
167 local \e$BJQ?t!#\e(B
168 @end defvar
169
170
171 @defun mime-entity-children entity
172
173 @var{entity} \e$B$K4^$^$l$k\e(B entity \e$B$N\e(B list \e$B$rJV$9!#\e(B
174 @end defun
175
176
177 @defun mime-entity-parent entity  &optional  message
178
179 @var{entity} \e$B$N?F$N\e(B entity \e$B$rJV$9!#\e(B@refill
180
181 @var{message} \e$B$,;XDj$5$l$?>l9g!"$3$l$r:,$H8+Jo$9!#\e(B
182 @end defun
183
184
185 @defun mime-root-entity-p entity
186
187 @var{entity} \e$B$,:,!JB($A!"\e(Bmessage \e$BA4BN!K$G$"$k>l9g$K!"Hs\e(B-@code{nil} \e$B$rJV\e(B
188 \e$B$9!#\e(B
189 @end defun
190
191
192 @defun mime-entity-node-id entity
193
194 @var{entity} \e$B$N\e(B node-id \e$B$rJV$9!#\e(B
195 @end defun
196
197
198 @defun mime-entity-number entity
199
200 @var{entity} \e$B$N\e(B entity-number \e$B$rJV$9!#\e(B
201 @end defun
202
203
204 @defun mime-find-entity-from-number entity-number  &optional  message
205
206 Return entity from @var{entity-number} in @var{message}.@refill
207
208 If @var{message} is not specified, @code{mime-message-structure} is
209 used.
210 @end defun
211
212
213 @defun mime-find-entity-from-node-id entity-node-id  &optional  message
214
215 Return entity from @var{entity-node-id} in @var{message}.@refill
216
217 If @var{message} is not specified, @code{mime-message-structure} is
218 used.
219 @end defun
220
221
222
223 @node Entity Attributes, Entity-header, Entity hierarchy, Entity
224 @section Entity \e$B$NB0@-\e(B
225
226 @defun mime-entity-content-type entity
227
228 @var{entity} \e$B$N\e(B content-type \e$B$rJV$9!#\e(B(cf. @ref{mime-content-type})
229 @end defun
230
231
232 @defun mime-entity-content-disposition entity
233
234 @var{entity} \e$B$N\e(B content-disposition \e$B$rJV$9!#\e(B
235 (cf. @ref{mime-content-disposition})
236 @end defun
237
238
239 @defun mime-entity-filename entity
240
241 @var{entity} \e$B$N\e(B file \e$BL>$rJV$9!#\e(B
242 @end defun
243
244
245 @defun mime-entity-encoding entity  &optional  default-encoding
246
247 @var{entity} \e$B$N\e(B content-transfer-encoding \e$B$rJV$9!#\e(B
248 (cf. @ref{Content-Transfer-Encoding}) @refill
249
250 \e$B$b$7!"\e(B@var{entity} \e$B$K\e(B Content-Transfer-Encoding \e$BMs$,B8:_$7$J$$>l9g$O!"\e(B
251 @var{default-encoding} \e$B$rJV$9!#$3$l$,;XDj$5$l$J$$>l9g$O!"\e(B@code{"7bit"} 
252 \e$B$rMQ$$$k!#\e(B
253 @end defun
254
255
256 @defun mime-entity-cooked-p entity
257
258 Return non-nil if contents of @var{entity} has been already
259 code-converted.
260 @end defun
261
262
263
264 @node Entity-header, entity formatting, Entity Attributes, Entity
265 @section Entity header \e$B$N>pJs\e(B
266
267 @defun mime-fetch-field field-name  &optional  entity
268
269 @var{entity} \e$B$N\e(B header \e$BCf$N\e(B @var{field-name} \e$BMs$N\e(B body \e$B$rJV$9!#\e(B@refill
270
271 \e$B7k2L$NJ8;zNs$O\e(B network \e$BI=8=$N$^$^$G$"$k!#\e(B@refill
272
273 @var{entity} \e$B$,>JN,$5$l$?>l9g$O!"\e(B@code{mime-message-structure} \e$B$NCM$rMQ\e(B
274 \e$B$$$k!#\e(B@refill
275
276 @var{field-name} \e$BMs$,B8:_$7$J$$>l9g$O\e(B @code{nil} \e$B$rJV$9!#\e(B
277 @end defun
278
279
280 @defun mime-read-field field-name  &optional  entity
281
282 @var{entity} \e$B$N\e(B header \e$BCf$N\e(B @var{field-name} \e$BMs$r9=J82r@O$7$?7k2L$rJV$9!#\e(B
283 @refill
284
285 \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
286 \e$B$O$=$N7A<0$K=>$C$?\e(B list \e$B$rJV$9!#\e(B@refill
287
288 \e$B7k2LCf$NJ8;zNs$O\e(B Emacs \e$B$NFbItI=8=$KJQ49$5$l$k!#\e(B@refill
289
290 @var{entity} \e$B$,>JN,$5$l$?>l9g$O!"\e(B@code{mime-message-structure} \e$B$NCM$rMQ\e(B
291 \e$B$$$k!#\e(B@refill
292
293 @var{field-name} \e$BMs$,B8:_$7$J$$>l9g$O\e(B nil \e$B$rJV$9!#\e(B
294 @end defun
295
296
297
298 @node entity formatting, Entity-content, Entity-header, Entity
299 @section Entity \e$B$NJ8;zI=8=\e(B
300
301 @defun mime-insert-header entity  &optional  invisible-fields visible-fields
302
303 \e$B8=:_0LCV$K\e(B @var{entity} \e$B$NI|9f$7$?\e(B header \e$B$rA^F~$9$k!#\e(B@refill
304
305 @var{invisible-fields} \e$B$H\e(B @var{visible-fields} \e$B$O@55,I=8=$N\e(Blist \e$B$G!"$=$l\e(B
306 \e$B$>$l!"I=<($7$?$/$J$$\e(B field \e$BL>$HI=<($7$?$$MsL>$rI=8=$7$?$b$N$G$"$k!#\e(B
307 @refill
308
309 @var{invisible-fields} \e$B$NMWAG$N$I$l$+$K\e(B match \e$B$7!"$+$D!"\e(B
310 @var{visible-fields} \e$B$NMWAG$N$I$l$K$b\e(B match \e$B$7$J$$Ms$OI=<($5$l$J$$!#\e(B
311 @refill
312
313 encoded-word (@ref{encoded-word}) \e$B$OI|9f$5$l$k!#!X@8$NHs\e(B us-ascii \e$BJ8;z!Y\e(B
314 \e$B$O\e(B @code{default-mime-charset} \e$B$H$7$F2r<a$5$l$k!#\e(B
315 @end defun
316
317
318 @defun mime-insert-text-content entity
319
320 Insert before point a contents of @var{entity} as text entity.@refill
321
322 Contents of the @var{entity} are decoded as MIME charset (@ref{MIME charset}).  If the @var{entity} does not have charset parameter of
323 Content-Type field, @code{default-mime-charset} is used as default
324 value.
325 @end defun
326
327
328 @defvar default-mime-charset
329
330 \e$BE,@Z$J\e(B MIME charset (@ref{MIME charset}) \e$B$,8+$D$+$i$J$+$C$?>l9g$KMQ$$$i\e(B
331 \e$B$l$k\e(BMIME charset.@refill
332
333 \e$BK\Mh$O\e(B APEL \e$B$NJQ?t$G$"$k!#\e(B
334 @end defvar
335
336
337
338 @node Entity-content, Entity buffer, entity formatting, Entity
339 @section Entity \e$B$NFbMF\e(B
340
341 @defun mime-entity-content entity
342
343 @var{entity} \e$B$NFbMF$N\e(B byte \e$BNs$rJV$9!#\e(B
344 @end defun
345
346
347 @defun mime-write-entity-content entity filename
348
349 Write content of @var{entity} into @var{filename}.
350 @end defun
351
352
353 @defun mime-write-entity entity filename
354
355 Write representation of @var{entity} into @var{filename}.
356 @end defun
357
358
359 @defun mime-write-entity-body entity filename
360
361 Write body of @var{entity} into @var{filename}.
362 @end defun
363
364
365
366 @node Entity buffer, mm-backend, Entity-content, Entity
367 @section Entity \e$B$N\e(B buffer \e$B$K$h$kI=8=\e(B
368
369 @defun mime-entity-buffer entity
370
371 @var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$rJV$9!#\e(B
372 @end defun
373
374
375 @defun mime-entity-point-min entity
376
377 @var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(B@var{entity} \e$B$,@j$a$kNN0h$N@hF,\e(B
378 \e$B0LCV$rJV$9!#\e(B
379 @end defun
380
381
382 @defun mime-entity-point-max entity
383
384 @var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(B@var{entity} \e$B$,@j$a$kNN0h$NKvHx\e(B
385 \e$B0LCV$rJV$9!#\e(B
386 @end defun
387
388
389 @defun mime-entity-header-start entity
390
391 @var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(Bheader \e$B$,@j$a$kNN0h$N@hF,0LCV$r\e(B
392 \e$BJV$9!#\e(B
393 @end defun
394
395
396 @defun mime-entity-header-end entity
397
398 @var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(Bheader \e$B$,@j$a$kNN0h$NKvHx0LCV$r\e(B
399 \e$BJV$9!#\e(B
400 @end defun
401
402
403 @defun mime-entity-body-start entity
404
405 @var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(Bbody \e$B$,@j$a$kNN0h$N@hF,0LCV$rJV\e(B
406 \e$B$9!#\e(B
407 @end defun
408
409
410 @defun mime-entity-body-end entity
411
412 @var{entity} \e$B$,B8:_$9$k\e(B buffer \e$B$K$*$1$k!"\e(Bbody \e$B$,@j$a$kNN0h$NKvHx0LCV$rJV\e(B
413 \e$B$9!#\e(B
414 @end defun
415
416
417
418 @node mm-backend,  , Entity buffer, Entity
419 @section Entity \e$B$NI=8=$H<B8=\e(B
420 @cindex mm-backend
421 @cindex entity \e$B=hM}\e(B method
422 @cindex representation-type
423
424 Entity \e$B$OCj>]2=$5$l$?%G!<%?I=8=$G!"<B:]$N%G!<%?I=8=$H$7$F$OMQES$K1~$8$F\e(B
425 \e$B$5$^$6$^$J$b$N$,MxMQ$G$-$k$h$&$K@_7W$5$l$F$$$^$9!#\e(B@refill
426
427 \e$B$3$3$G!"\e(Bentity \e$B$,$I$&$$$&<oN`$NI=8=$r9T$C$F$$$k$+$r<($9$N$,\e(B
428 @strong{representation-type} \e$B$G!"\e(Bentity \e$B$r@8@.$9$k;~$K$O$3$l$r;XDj$7$^$9!#\e(B
429 (cf. @ref{Entity Creation}) @refill
430
431 \e$BA0@a$^$G$K=R$Y$FMh$?\e(B entity \e$B$KBP$9$k=hM}$O!"\e(Bentity \e$B$KBP$7$F$=$N=hM}$r0M\e(B
432 \e$BMj$9$k$3$H$K$h$C$F<B8=$5$l$F$$$^$9!#\e(BEntity \e$B$O<+J,$N\e(B representation-type 
433 \e$B$rCN$C$F$*$j!"$=$N\e(B representation-type \e$B$K1~$8$F<B:]$N=hM}$r9T$&4X?t$r8F\e(B
434 \e$B$S=P$7$^$9!#$3$N$h$&$J4X?t$r\e(B @strong{entity \e$B=hM}\e(Bmethod} \e$B$H8F$S$^$9!#$^$?!"\e(B
435 representation-type \e$BKh$K$3$N$h$&$J4X?t$r$^$H$a$?$b$N$r\e(B 
436 @strong{mm-backend} \e$B$H8F$S$^$9!#\e(B@refill
437
438 mm-backend \e$B$O\e(B representation-type \e$B$NL>A0$N@hF,$K\e(B @code{mm} \e$B$H$$$&\e(B
439 \e$B@\F,<-$rIU$1$?4X?tL>$+$i$J$k\e(B module \e$B$G!"$=$N\e(B module \e$BL>$OF1MM$K\e(B
440 representation-type \e$B$NL>A0$N@hF,$K\e(B @code{mm} \e$B$rIU$1$?$b$N$K$J$C$F\e(B
441 \e$B$$$^$9!#$3$N\e(B module \e$B$O\e(B representation-type \e$B$N\e(B entity \e$B$,:G=i$K@8@.$5$l$k\e(B
442 \e$B;~$K<+F0E*$K\e(B require \e$B$5$l$^$9!#\e(B
443
444
445 @menu
446 * Request for entity::          Entity \e$B$X$NJX$j\e(B
447 * mm-backend module::           mm-backend \e$B$N:n$jJ}\e(B
448 @end menu
449
450 @node Request for entity, mm-backend module, mm-backend, mm-backend
451 @subsection Entity \e$B$X$NJX$j\e(B
452
453 @defun mime-entity-send entity message  &rest  args
454
455 @var{entity} \e$B$K\e(B @var{message} \e$B$rAw$k!#\e(B@refill
456
457 @var{args} \e$B$O\e(B @var{message} \e$B$N0z?t$G$"$k!#\e(B
458 @end defun
459
460
461
462 @node mm-backend module,  , Request for entity, mm-backend
463 @subsection mm-backend \e$B$N:n$jJ}\e(B
464
465 @defmac mm-define-backend type &optional  parents
466
467 Define @var{type} as a mm-backend.@refill
468
469 If @var{PARENTS} is specified, @var{type} inherits parents.  Each parent
470 must be representation-type.@refill
471
472 Example:@refill
473
474 @lisp
475 (mm-define-backend chao (generic))
476 @end lisp
477 @end defmac
478
479
480 @defmac mm-define-method name args  &rest  body
481
482 Define @var{name} as a method function of (nth 1 (car @var{args}))
483 backend.@refill
484
485 @var{args} is like an argument list of lambda, but (car @var{args}) must
486 be specialized parameter.  (car (car @var{args})) is name of variable
487 and (nth 1 (car @var{args})) is name of backend
488 (representation-type).@refill
489
490 Example:@refill
491
492 @lisp
493 (mm-define-method entity-cooked-p ((entity chao)) nil)
494 @end lisp
495 @end defmac
496
497
498
499 @node Content-Type, Content-Disposition, Entity, Top
500 @chapter Content-Type \e$BMs$N>pJs\e(B
501 @cindex mime-content-type
502 @cindex Content-Type \e$BMs\e(B
503
504 @strong{Content-Type \e$BMs\e(B} \e$B$O\e(B media-type (@ref{media-type}) \e$B$d\e(B MIME
505 charset \e$B$H$$$C$?\e(B entity (@ref{entity}) \e$B$NFbMF$N<oN`$dI=8=7A<0$J$I$r5-=R\e(B
506 \e$B$9$k$?$a$N$b$N$G!"\e(BRFC 2045 (@ref{RFC 2045}) \e$B$GDj5A$5$l$F$$$^$9!#\e(B
507
508 @noindent
509 @strong{[Memo]}
510 @quotation
511
512 \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
513 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$&$J\e(B
514 \e$BJ8;zId9f$N<oN`$rI=8=$9$k$3$H$b$G$-$J$$!#\e(B
515 @end quotation
516
517
518 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
519 \e$B3JG<$9$k9=B$BN\e(B @strong{mime-content-type} \e$B$rDs6!$7$^$9!#\e(B
520
521
522 @menu
523 * Content-Type field::          Content-Type \e$BMs$N7A<0\e(B
524 * mime-content-type::           mime-content-type \e$B9=B$BN\e(B
525 * Content-Type parser::         Content-Type \e$BMs$N2r@O4o\e(B
526 * Content-Type utility::        Content-Type \e$B$K4X$9$kM-MQ$J4X?t\e(B
527 @end menu
528
529 @node Content-Type field, mime-content-type, Content-Type, Content-Type
530 @section Content-Type \e$BMs$N7A<0\e(B
531 @cindex parameter
532 @cindex subtype
533 @cindex type
534
535 Content-Type \e$BMs$N7A<0$O0J2<$N$h$&$KDj5A$5$l$F$$$^$9!'\e(B
536
537 @quotation
538 ``Content-Type'' ``:'' @strong{type} ``/''
539 @strong{subtype} *( ``;'' @strong{parameter} )
540 @end quotation
541
542 \e$BNc$($P!"\e(B
543
544 @quotation
545 @example
546 Content-Type: image/jpeg
547 @end example
548 @end quotation
549
550 @noindent
551 \e$B$d\e(B
552
553 @quotation
554 @example
555 Content-Type: text/plain; charset=iso-2022-jp
556 @end example
557 @end quotation
558
559 @noindent
560 \e$B$J$I$N$h$&$KMQ$$$i$l$^$9!#\e(B
561
562 \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
563 \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
564 `text/plain' \e$B$O\e(B media-type \e$B$N#1$D$G$9!#\e(B
565
566 @noindent
567 @strong{[Memo]}
568 @quotation
569
570 Content-Type \e$BMs$N$J$$\e(B entity \e$B$O\e(B
571
572 @quotation
573 @example
574 Content-Type: text/plain; charset=us-ascii
575 @end example
576 @end quotation
577
578 @noindent
579 \e$B$H$7$F2r<a$5$l$k!#\e(B(cf. @ref{us-ascii})
580 @end quotation
581
582
583
584 @node mime-content-type, Content-Type parser, Content-Type field, Content-Type
585 @section mime-content-type \e$B9=B$BN\e(B
586
587 @deffn{Structure} mime-content-type
588
589 Content-Type \e$BMs$N>pJs$r3JG<$9$k$?$a$N9=B$BN!#\e(B@refill
590
591 \e$B$3$N9=B$BN$r;2>H$9$k$K$O\e(B @code{mime-content-type-\e$BMWAGL>\e(B} \e$B$H$$$&L>A0$N;2\e(B
592 \e$B>H4X?t$rMQ$$$k!#\e(B@refill
593
594 \e$B$3$N9=B$BN$NMWAG$O0J2<$NDL$j$G$"$k!'\e(B
595
596 @table @var
597 @item primary-type
598 media-type \e$B$N<g7?\e(B (symbol).
599
600 @item subtype
601 media-type \e$B$NI{7?\e(B (symbol).
602
603 @item parameters
604 Content-Type \e$BMs$N\e(B parameter (\e$BO"A[\e(B list).
605
606 @end table
607 @end deffn
608
609
610 @defun make-mime-content-type type subtype
611            &optional  parameters
612
613 content-type \e$B$N@8@.;R!#\e(B
614 @end defun
615
616
617 @defun mime-content-type-parameter content-type parameter
618
619 @var{content-type} \e$B$N\e(B @var{parameter} \e$B$NCM$rJV$9!#\e(B
620 @end defun
621
622
623
624 @node Content-Type parser, Content-Type utility, mime-content-type, Content-Type
625 @section Content-Type \e$BMs$N2r@O4o\e(B
626
627 @defun mime-parse-Content-Type string
628
629 @var{string} \e$B$r\e(B content-type \e$B$H$7$F2r@O$7$?7k2L$rJV$9!#\e(B
630 @end defun
631
632
633 @defun mime-read-Content-Type
634
635 \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@refill
636
637 Content-Type \e$BMs$,B8:_$7$J$$>l9g$O\e(B nil \e$B$rJV$9!#\e(B
638 @end defun
639
640
641
642 @node Content-Type utility,  , Content-Type parser, Content-Type
643 @section Content-Type \e$B$K4X$9$kM-MQ$J4X?t\e(B
644
645 @defun mime-type/subtype-string type  &optional  subtype
646
647 @var{type} \e$B$H\e(B @var{subtype} \e$B$+$i\e(B type/subtype \e$B7A<0$NJ8;zNs$rJV$9!#\e(B
648 @end defun
649
650
651
652 @node Content-Disposition, Content-Transfer-Encoding, Content-Type, Top
653 @chapter Content-Disposition \e$BMs$N>pJs\e(B
654 @cindex mime-content-disposition
655 @cindex RFC 2183
656 @cindex Standards Track
657 @cindex Content-Disposition \e$BMs\e(B
658
659 @strong{Content-Disposition \e$BMs\e(B} \e$B$O\e(B entity \e$B$NI=<($d\e(B file \e$BL>$J$I\e(B
660 \e$B$NB0@-$K$J$I$K4X$9$k>pJs$r5-=R$9$k$?$a$N$b$N$G$9!#\e(B
661
662
663 @noindent
664 [RFC 2183]
665 @quotation
666 S. Dorner, K. Moore and R. Troost, ``Communicating Presentation
667 Information in Internet Messages: The Content-Disposition Header'',
668 August 1997, Standards Track.
669 @end quotation
670
671 FLIM \e$B$O\e(B Content-Disposition \e$BMs$r9=J82r@O$9$k4X?t$H\e(B Content-Disposition 
672 \e$BMs$N2r@O7k2L$r3JG<$9$k9=B$BN\e(B 
673 @strong{mime-content-disposition} \e$B$rDs6!$7$^$9!#\e(B
674
675
676 @menu
677 * mime-content-disposition::    mime-content-disposition \e$B9=B$BN\e(B
678 * Content-Disposition parser::  Content-Disposition \e$BMs$N2r@O4o\e(B
679 @end menu
680
681 @node mime-content-disposition, Content-Disposition parser, Content-Disposition, Content-Disposition
682 @section mime-content-disposition \e$B9=B$BN\e(B
683
684 @deffn{Structure} mime-content-disposition
685
686 Content-Disposition \e$BMs$N2r@O7k2L$r<}$a$k$?$a$N9=B$BN!#\e(B@refill
687
688 \e$B$3$N9=B$BN$r;2>H$9$k$K$O\e(B @code{mime-content-disposition-\e$BMWAGL>\e(B} \e$B$H$$$&L>\e(B
689 \e$BA0$N;2>H4X?t$rMQ$$$k!#\e(B@refill
690
691 \e$B$3$N9=B$BN$NMWAG$O0J2<$NDL$j$G$"$k!'\e(B
692
693 @table @var
694 @item disposition-type
695 disposition-type (symbol).
696
697 @item parameters
698 Content-Disposition \e$BMs$N\e(B parameter (\e$BO"A[\e(B list).
699
700 @end table
701 @end deffn
702
703
704 @defun mime-content-disposition-parameter content-disposition parameter
705
706 @var{content-disposition} \e$B$N\e(B @var{parameter} \e$B$NCM$rJV$9!#\e(B
707 @end defun
708
709
710 @defun mime-content-disposition-filename content-disposition
711
712 @var{content-disposition} \e$B$N\e(B filename \e$B$NCM$rJV$9!#\e(B
713 @end defun
714
715
716
717 @node Content-Disposition parser,  , mime-content-disposition, Content-Disposition
718 @section Content-Disposition \e$BMs$N2r@O4o\e(B
719
720 @defun mime-parse-Content-Disposition string
721
722 @var{string} \e$B$r\e(B content-disposition \e$B$H$7$F2r@O$7$?7k2L$rJV$9!#\e(B
723 @end defun
724
725
726 @defun mime-read-Content-Disposition
727
728 \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
729 @refill
730
731 Content-Disposition \e$BMs$,B8:_$7$J$$>l9g$O\e(B nil \e$B$rJV$9!#\e(B
732 @end defun
733
734
735
736 @node Content-Transfer-Encoding, encoded-word, Content-Disposition, Top
737 @chapter \e$BId9f2=K!\e(B
738 @cindex Content-Transfer-Encoding \e$BMs\e(B
739
740 @strong{Content-Transfer-Encoding \e$BMs\e(B} \e$B$O\e(B entity \e$B$NId9f2=K!$r5-=R$9$k$?$a\e(B
741 \e$B$N$b$N$G$9!#\e(B@refill
742
743 FLIM \e$B$G$O\e(B Content-Transfer-Encoding \e$BMs$r9=J82r@O$9$k4X?t$rDs6!$7$^$9!#$3\e(B
744 \e$B$l$i$N4X?t$O\e(B Content-Transfer-Encoding \e$BMs$N>pJs$OJ8;zNs$GI=8=$7$^$9!#\e(B
745 @refill
746
747 \e$B$^$?!"\e(BContent-Transfer-Encoding \e$B$K4p$E$$$FId9f2=!&I|9f2=$r9T$&4X?t$bDs\e(B
748 \e$B6!$5$l$^$9!#\e(B
749
750
751 @menu
752 * Content-Transfer-Encoding parser::  Content-Transfer-Encoding \e$BMs$N2r@O4o\e(B
753 * encoder/decoder::             \e$BId9f2=!&I|9f2=\e(B
754 * Encoding information::        Other utilities
755 * mel-backend::                 How to write encoder/decoder module
756 * generic function for mel-backend::  How to add encoding/decoding service
757 @end menu
758
759 @node Content-Transfer-Encoding parser, encoder/decoder, Content-Transfer-Encoding, Content-Transfer-Encoding
760 @section Content-Transfer-Encoding \e$BMs$N2r@O4o\e(B
761
762 @defun mime-parse-Content-Transfer-Encoding string
763
764 @var{string} \e$B$r\e(B content-transfer-encoding \e$B$H$7$F2r@O$7$?7k2L$rJV$9!#\e(B
765 @end defun
766
767
768 @defun mime-read-Content-Transfer-Encoding &optional default-encoding
769
770 \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
771 \e$BJV$9!#\e(B@refill
772
773 Content-Transfer-Encoding \e$BMs$,B8:_$7$J$$>l9g$O\e(B@var{default-encoding} \e$B$r\e(B
774 \e$BJV$9!#\e(B
775 @end defun
776
777
778
779 @node encoder/decoder, Encoding information, Content-Transfer-Encoding parser, Content-Transfer-Encoding
780 @section \e$BId9f2=!&I|9f2=\e(B
781
782 @defun mime-encode-region start end encoding
783
784 Encode region @var{start} to @var{end} of current buffer using
785 @var{encoding}.
786 @end defun
787
788
789 @defun mime-decode-region start end encoding
790
791 Decode region @var{start} to @var{end} of current buffer using
792 @var{encoding}.
793 @end defun
794
795
796
797 @defun mime-decode-string string encoding
798
799 @var{string} \e$B$r\e(B @var{encoding} \e$B$H$7$FI|9f$7$?7k2L$rJV$9!#\e(B
800 @end defun
801
802
803
804 @defun mime-insert-encoded-file filename encoding
805
806 Insert file @var{FILENAME} encoded by @var{ENCODING} format.
807 @end defun
808
809
810 @defun mime-write-decoded-region start end filename encoding
811
812 Decode and write current region encoded by @var{encoding} into
813 @var{filename}.@refill
814
815 @var{start} and @var{end} are buffer positions.
816 @end defun
817
818
819
820 @node Encoding information, mel-backend, encoder/decoder, Content-Transfer-Encoding
821 @section Other utilities
822
823 @defun mime-encoding-list &optional  SERVICE
824
825 Return list of Content-Transfer-Encoding.@refill
826
827 If @var{service} is specified, it returns available list of
828 Content-Transfer-Encoding for it.
829 @end defun
830
831
832 @defun mime-encoding-alist &optional  SERVICE
833
834 Return table of Content-Transfer-Encoding for completion.@refill
835
836 If @var{service} is specified, it returns available list of
837 Content-Transfer-Encoding for it.
838 @end defun
839
840
841
842 @node mel-backend, generic function for mel-backend, Encoding information, Content-Transfer-Encoding
843 @section How to write encoder/decoder module
844
845 @defmac mel-define-method name args  &rest  body
846
847 Define @var{name} as a method function of (nth 1 (car (last
848 @var{args}))) backend.@refill
849
850 @var{args} is like an argument list of lambda, but (car (last
851 @var{args})) must be specialized parameter.  (car (car (last
852 @var{args}))) is name of variable and (nth 1 (car (last @var{args}))) is
853 name of backend (encoding).@refill
854
855 Example:@refill
856
857 @lisp
858 (mel-define-method mime-write-decoded-region (start end filename
859                                                     (nil "base64"))
860   "Decode and write current region encoded by base64 into FILENAME.
861 START and END are buffer positions."
862   (interactive
863    (list (region-beginning) (region-end)
864          (read-file-name "Write decoded region to file: ")))
865   (let ((str (buffer-substring start end)))
866     (with-temp-buffer
867       (insert (decode-base64-string str))
868       (write-region-as-binary (point-min) (point-max) filename)
869       )))
870 @end lisp
871 @end defmac
872
873
874 @defmac mel-define-method-function spec function
875
876 Set @var{spec}'s function definition to @var{function}.@refill
877
878 First element of @var{spec} is service.@refill
879
880 Rest of @var{args} is like an argument list of lambda, but (car (last
881 @var{args})) must be specialized parameter.  (car (car (last
882 @var{args}))) is name of variable and (nth 1 (car (last @var{args}))) is
883 name of backend (encoding).@refill
884
885 Example:@refill
886
887 @lisp
888 (mel-define-method-function (mime-encode-string string (nil "base64"))
889                             'encode-base64-string)
890 @end lisp
891 @end defmac
892
893
894
895 @node generic function for mel-backend,  , mel-backend, Content-Transfer-Encoding
896 @section How to add encoding/decoding service
897
898 @defmac mel-define-service name &optional  args doc-string
899
900 Define @var{name} as a service for Content-Transfer-Encodings.@refill
901
902 If @var{args} is specified, @var{name} is defined as a generic function
903 for the service.@refill
904
905 Example:@refill
906
907 @lisp
908 (mel-define-service encoded-text-encode-string (string encoding)
909   "Encode STRING as encoded-text using ENCODING.
910 ENCODING must be string.")
911 @end lisp
912 @end defmac
913
914
915
916 @node encoded-word, custom, Content-Transfer-Encoding, Top
917 @chapter Header \e$B$N\e(B network \e$BI=8=\e(B
918 @cindex RFC 2047
919 @cindex Standards Track
920 @cindex RFC 2047
921
922 encoded-word \e$B$O\e(B header \e$B$GHs\e(B ASCII (@ref{ASCII}) \e$BJ8;z$rI=8=$9$k$?$a$N7A<0\e(B
923 \e$B$G!"\e(B@strong{RFC 2047} \e$B$GDj5A$5$l$F$$$^$9!#\e(B@refill
924
925
926 @noindent
927 [RFC 2047]
928 @quotation
929 K. Moore, ``MIME (Multipurpose Internet Mail Extensions) Part Three:
930 Message Header Extensions for Non-ASCII Text'', November 1996, Standards
931 Track (obsolete RFC 1521,1522,1590).
932 @end quotation
933
934 \e$B$^$?!"9T57$N0-$$$3$H$@$H8@$($^$9$,!"\e(Bencoded-word \e$B$rMQ$$$:$KHs\e(B ASCII
935 (@ref{ASCII}) \e$BJ8;z$r\e(B header \e$B$KF~$l$?5-;v$bB8:_$7$^$9!#\e(B@refill
936
937 FLIM \e$B$O$3$l$i$rId9f2=!&I|9f2=$9$k5!G=$rDs6!$7$^$9!#\e(B
938
939
940 @menu
941 * Header encoder/decoder::      Header \e$B$NId9f2=!&I|9f2=\e(B
942 @end menu
943
944 @node Header encoder/decoder,  , encoded-word, encoded-word
945 @section Header \e$B$NId9f2=!&I|9f2=\e(B
946
947 @defun eword-decode-header &optional  code-conversion separator
948
949 Header \e$BCf$N\e(B encoded-word \e$B$rI|9f$9$k!#\e(B@refill
950
951 \e$B$b$7\e(B @var{code-conversion} \e$B$,\e(B @code{nil} \e$B$J$i!"\e(Bencoded-word \e$B$@$1$,I|9f$5\e(B
952 \e$B$l$k!#$b$7!"\e(B@var{code-conversion} \e$B$,\e(B MIME charset (@ref{MIME charset}) 
953 \e$B$J$i!"Hs\e(B ASCII bit patterns \e$B$O$=$N\e(B MIME charset \e$B$H$7$FI|9f$5$l$k!#$3$l0J\e(B
954 \e$B30$N>l9g!"Hs\e(B ASCII bit patterns \e$B$O\e(B@code{default-mime-charset}. \e$B$H$7$FI|\e(B
955 \e$B9f$5$l$k!#\e(B(cf. @ref{entity formatting}) @refill
956
957 \e$B$b$7\e(B @var{separator} \e$B$,\e(B @code{nil} \e$B$G$J$1$l$P!"$=$NCM$,\e(Bheader separator 
958 \e$B$H$7$FMQ$$$i$l$k!#\e(B
959 @end defun
960
961
962 @defun eword-encode-header &optional  code-conversion
963
964 Header \e$B$r\e(B network \e$BI=8=$KId9f2=$9$k!#\e(B@refill
965
966 \e$B3F\e(B field \e$B$O\e(B @code{eword-field-encoding-method-alist} \e$B$G;XDj$5$l$?J}<0$G\e(B
967 \e$BId9f2=$5$l$k!#\e(B
968 @end defun
969
970
971 @defvar eword-field-encoding-method-alist
972
973 Association list to specify field encoding method.  Each element looks
974 like (FIELD . METHOD).@refill
975
976 If METHOD is @code{mime}, the FIELD will be encoded into MIME format
977 (encoded-word).@refill
978
979 If METHOD is @code{nil}, the FIELD will not be encoded.@refill
980
981 If METHOD is a MIME charset, the FIELD will be encoded as the charset
982 when it must be convert into network-code.@refill
983
984 Otherwise the FIELD will be encoded as variable
985 @code{default-mime-charset} when it must be convert into network-code.
986 @end defvar
987
988
989
990 @node custom, Appendix, encoded-word, Top
991 @chapter \e$B0lHL@_Dj\e(B
992
993 @deffn{group} mime
994
995 MIME \e$B4XO"5!G=$K4X$9$k\e(B group.@refill
996
997 @code{mail} \e$B$H\e(B @code{news} \e$B$KB0$9$k!#\e(B
998 @end deffn
999
1000
1001 @defvar mime-temp-directory
1002
1003 MIME \e$B5!G=$K4X$9$k<BAu$,0l;~E*$K;HMQ$9$k\e(B file \e$B$r:n@.$9$k\e(B 
1004 directory.@refill
1005
1006 \e$B4D6-JQ?t\e(B @code{MIME_TMP_DIR}, @code{TM_TMP_DIR}, @code{TMPDIR},
1007 @code{TMP} \e$B$b$7$/$O\e(B @code{TEMP} \e$B$,@_Dj$5$l$F$$$?>l9g!"$=$l$r=i4|CM$H$7$F\e(B
1008 \e$BMQ$$$k!#2?$b@_Dj$5$l$F$$$J$$>l9g!"\e(B@code{"/tmp/"} \e$B$rMQ$$$k!#\e(B
1009 @end defvar
1010
1011
1012
1013 @node Appendix, Concept Index, custom, Top
1014 @chapter \e$BIUO?\e(B
1015
1016
1017 @menu
1018 * Glossary::                    \e$BMQ8l\e(B
1019 * Bug report::                  bug \e$BJs9p$N;EJ}\e(B
1020 * CVS::                         CVS \e$B$K$h$k3+H/\e(B
1021 * History::                     \e$BNr;K\e(B
1022 @end menu
1023
1024 @node Glossary, Bug report, Appendix, Appendix
1025 @section \e$BMQ8l\e(B
1026
1027
1028 @menu
1029 * 7bit::                        
1030 * 8bit::                        
1031 * ASCII::                       
1032 * Base64::                      
1033 * binary::                      
1034 * Coded character set::         Coded character set\e$B!JId9f2=J8;z=89g!K\e(B, Character code\e$B!JJ8;zId9f!K\e(B
1035 * media-type::                  
1036 * message::                     
1037 * MIME::                        
1038 * MIME charset::                
1039 * MTA::                         
1040 * MUA::                         
1041 * Quoted-Printable::            
1042 * RFC 822::                     
1043 * RFC 1036::                    
1044 * RFC 2045::                    
1045 * RFC 2046::                    
1046 * RFC 2048::                    
1047 * RFC 2049::                    
1048 * plain text::                  
1049 * us-ascii::                    
1050 @end menu
1051
1052 @node 7bit, 8bit, Glossary, Glossary
1053 @subsection 7bit
1054
1055 \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@refill
1056
1057\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$V!#\e(B
1058 @refill
1059
1060 \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$H\e(B 
1061 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;zNs\e(B'' 
1062 \e$B$H8F$V!J$3$l$O\e(B ISO 2022 (@ref{ISO 2022}) \e$B$N!V\e(B7 \e$BC10L7O!W$HF1MM!K!#\e(B
1063
1064 \e$BEAE}E*$J\e(B Internet \e$B$N\e(B MTA (@ref{MTA}) \e$B$O\e(B 7bit \e$B$N\e(B data \e$B$rE>Aw$G$-$k$N$G!"\e(B
1065 7bit \e$B$N\e(B data \e$B$O\e(B Quoted-Printable (@ref{Quoted-Printable}) \e$B$d\e(B Base64
1066 (@ref{Base64}) \e$B$H$$$C$?JQ49$r9T$o$J$/$F$b$=$N$^$^E>Aw$G$-$k!#\e(B@refill
1067
1068 \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$N\e(B
1069 \e$BD9$5$,$"$^$j$KD9$$$H!"\e(BMTA \e$B$O$=$N\e(B message \e$B$rE>Aw$9$k$3$H$,$G$-$J$$$+$i$G\e(B
1070 \e$B$"$k!#$A$J$_$K!"\e(BRFC 821 (@ref{RFC 821}) \e$B$O#19T$O2~9TJ8;z$r=|$$$F\e(B 998
1071 byte \e$B0JFb$G$"$k$3$H$r5a$a$F$$$k!#$h$C$F!"$3$l0J>e$N9T$,4^$^$l$k2DG=@-$N\e(B
1072 \e$B$"$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 
1073 encode\e$B$9$kI,MQ$,$"$k!#\e(B
1074
1075
1076 @node 8bit, ASCII, 7bit, Glossary
1077 @subsection 8bit
1078 @cindex binary
1079
1080 \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@refill
1081
1082\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$V!#\e(B
1083 @refill
1084
1085 \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$GI=\e(B
1086 \e$B8=$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$J$k\e(B
1087 \e$BJ8;zNs$N$3$H$r\e(B ``8bit \e$B$NJ8;zNs\e(B'' \e$B$H8F$V!J$3$l$O\e(B ISO 2022 (@ref{ISO 2022}) \e$B$N!V\e(B8 \e$BC10L7O!W$HF1MM!K!#\e(B@refill
1088
1089 iso-8859-1 (@ref{iso-8859-1}) \e$B$d\e(B euc-kr (@ref{euc-kr}) \e$B$H$$$C$?Id9f2=J8\e(B
1090 \e$B;z=89g$O\e(B 8bit \e$B$NJ8;zNs$G$"$k!#\e(B@refill
1091
1092 \e$BEAE}E*$J\e(B Internet \e$B$N\e(B MTA (@ref{MTA}) \e$B$O\e(B 7bit (@ref{7bit}) \e$B$N\e(B data \e$B$7$+E>\e(B
1093 \e$BAw$G$-$J$$$N$G!"$=$&$7$?\e(B MTA \e$B$r7PM3$9$k>l9g!"\e(BQuoted-Printable
1094 (@ref{Quoted-Printable}) \e$B$d\e(B Base64 (@ref{Base64}) \e$B$H$$$C$?JQ49$r9T$o$J$/\e(B
1095 \e$B$F$O$J$i$J$$!#\e(B@refill
1096
1097 \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$F\e(B
1098 \e$B$-$?$N$G!"$=$N$^$^Aw$k$3$H$,$G$-$k>l9g$bA}$($F$-$?!#\e(B@refill
1099
1100 \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$N\e(B
1101 \e$BD9$5$,$"$^$j$KD9$$$H!"\e(BMTA \e$B$O$=$N\e(B message \e$B$rE>Aw$9$k$3$H$,$G$-$J$$$+$i$G\e(B
1102 \e$B$"$k!#$A$J$_$K!"\e(BRFC 821 (@ref{RFC 821}) \e$B$O#19T$O2~9TJ8;z$r=|$$$F\e(B 998
1103 byte \e$B0JFb$G$"$k$3$H$r5a$a$F$$$k!#$h$C$F!"$3$l0J>e$N9T$,4^$^$l$k2DG=@-$N\e(B
1104 \e$B$"$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 
1105 encode\e$B$9$kI,MQ$,$"$k!#\e(B@refill
1106
1107 \e$B$^$?!"$3$&$7$?M}M3$+$i!"#19T$,\e(B 999 byte \e$B0J>e$N9T$,B8:_$9$k2DG=@-$N$"$k\e(B
1108 data \e$B$O\e(B @strong{binary} (@ref{binary}) \e$B$H8F$V$3$H$K$9$k!#\e(B@refill
1109
1110 \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
1111 ``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
1112 \e$B$"$k!#\e(B
1113
1114
1115 @node ASCII, Base64, 8bit, Glossary
1116 @subsection ASCII
1117 @cindex ANSI X3.4:1986
1118 @cindex ASCII
1119
1120 \e$B%"%a%j%+O"K.$G;H$o$l$kJ8;z$rId9f2=$7$?Id9f2=J8;z=89g\e(B (@ref{\e$BId9f2=J8;z=8\e(B \e$B9g\e(B})\e$B!#\e(BA-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\e(B
1121 \e$B$G!"8=:_$O9q:]4p=`HG\e(B (IRV) \e$B$K$J$C$F$$$k!#\e(B
1122
1123
1124 @noindent
1125 [ASCII]
1126 @quotation
1127 ``Coded Character Set -- 7-Bit American Standard Code for Information
1128 Interchange'', ANSI X3.4:1986.
1129 @end quotation
1130
1131
1132
1133 @node Base64, binary, ASCII, Glossary
1134 @subsection Base64
1135 @cindex pad
1136
1137 RFC 2045 (@ref{RFC 2045}) \e$B$GDj5A$5$l$F$$$k\e(B MIME (@ref{MIME}) \e$B$K$*$1$k\e(B 
1138 binary data (@ref{binary}) \e$B$N\e(B network \e$B$G$NJQ49K!$N#1$D!#\e(B@refill
1139
1140 \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 ASCII
1141 (@ref{ASCII}) 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 
1142 @strong{pad} \e$B$H8F$P$l$k5M$aJ*$r$7$FD9$5$rD4@0$9$k!K\e(B@refill
1143
1144 \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
1145 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
1146 \e$B$l$F$$$k!#\e(B
1147
1148
1149 @node binary, Coded character set, Base64, Glossary
1150 @subsection binary
1151 @cindex binary data
1152 @cindex binary
1153
1154 \e$BG$0U$N\e(B byte \e$BNs$r\e(B @strong{binary} \e$B$H8F$V!#\e(B@refill
1155
1156 8bit (@ref{8bit}) \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
1157
1158 \e$B$^$?!"9T$N9=B$$,$"$C$F$b!"\e(B999 byte \e$B0J>e$+$i$J$k9T$,$"$k>l9g$b\e(B binary \e$B$H\e(B
1159 \e$B8F$V$3$H$K$9$k!#\e(B@refill
1160
1161 \e$B$A$J$_$K!"\e(B7bit (@ref{7bit}) \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=8=\e(B
1162 \e$B$G$-$k!#$h$C$F!"\e(B@strong{binary data} \e$B$H8@$C$?>l9g!"G$0U$N\e(B data \e$B$r;X$9$3\e(B
1163 \e$B$H$,$"$k!#\e(B
1164
1165
1166 @node Coded character set, media-type, binary, Glossary
1167 @subsection Coded character set\e$B!JId9f2=J8;z=89g!K\e(B, Character code\e$B!JJ8;zId9f!K\e(B
1168
1169 \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
1170
1171
1172 @node media-type, message, Coded character set, Glossary
1173 @subsection media-type
1174 @cindex x-token
1175 @cindex primary-type/subtype
1176 @cindex message
1177 @cindex multipart
1178 @cindex application
1179 @cindex video
1180 @cindex audio
1181 @cindex image
1182 @cindex text
1183 @cindex subtype
1184 @cindex primary-type
1185
1186 MIME (@ref{MIME}) \e$B$K$*$1$k\e(B entity (@ref{entity}) \e$B$N<oN`!#\e(B
1187 @strong{primary-type} \e$B$H\e(B @strong{subtype} \e$B$+$i$J$k!#\e(BRFC 2046 (@ref{RFC 2046}) \e$B$GDj5A$5$l$F$$$k!#\e(B@refill
1188
1189 primary-type \e$B$OI8=`$G$O\e(B
1190
1191 @itemize @bullet
1192 @item
1193 @strong{text}
1194 @item
1195 @strong{image}
1196 @item
1197 @strong{audio}
1198 @item
1199 @strong{video}
1200 @item
1201 @strong{application}
1202 @item
1203 @strong{multipart} (@ref{multipart})
1204 @item
1205 @strong{message}
1206 @end itemize
1207
1208 @noindent
1209 \e$B$,Dj5A$5$l!"$=$l$>$l$K$O\e(B application/octet-stream, audio/basic,
1210 image/jpeg, multipart/mixed (@ref{multipart/mixed}), text/plain
1211 (@ref{text/plain}), video/mpeg \e$B$J$I$N$5$^$6$^$J\e(B subtype \e$B$,Dj5A$5$l$F$$$k!#\e(B
1212
1213 @noindent
1214 @strong{[\e$BCm0U\e(B]}
1215 @quotation
1216
1217 \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 
1218 @strong{primary-type/subtype} \e$B$H=q$/!#\e(B
1219 @end quotation
1220
1221
1222 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
1223 \e$B$k!#8=:_!"EPO?$5$l$F$$$k$b$N$O\e(B MEDIA TYPES
1224 (ftp://ftp.isi.edu/in-notes/iana/assignments/media-types) \e$B$G;2>H$G$-$k!#\e(B
1225
1226 \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 @strong{x-token} \e$B$rMQ\e(B
1227 \e$B$$$k$3$H$K$h$j!"EPO?$5$l$F$$$J$$$b$N$r;dE*$KMQ$$$k$3$H$b$G$-$k!#$7$+$7!"\e(B
1228 \e$BEvA3$N$3$H$J$,$i!"$3$&$7$?;dE*$J\e(B media-type \e$B$ONJ2r$rF@$?<T$N4V$G$7$+2r<a\e(B
1229 \e$B$G$-$J$$$N$GMxMQ$K$OCm0U$9$k$3$H!#\e(B@refill
1230
1231 (cf. @ref{Content-Type})
1232
1233
1234
1235 @node message, MIME, media-type, Glossary
1236 @subsection message
1237
1238 \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
1239
1240
1241 @node MIME, MIME charset, message, Glossary
1242 @subsection MIME
1243 @cindex Multipurpose Internet Mail Extensions
1244
1245 @strong{Multipurpose Internet Mail Extensions} \e$B$NN,$G!"\e(BInternet \e$B$N\e(B mail 
1246 \e$B$d\e(B news \e$B$G\e(B us-ascii plain text (@ref{us-ascii}) \e$B0J30$NJ8;z$r;H$&$?$a$N\e(B 
1247 RFC 822 (@ref{RFC 822}) \e$B$KBP$9$k3HD%!#\e(B@refill
1248
1249 RFC 2045 \e$B$OKAF,$G<!$N$h$&$K=R$Y$F$$$k!'\e(B@refill
1250
1251 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
1252 \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 
1253 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
1254 \e$B$O$J$5$l$F$$$J$$!#\e(BMultipurpose Internet Mail Extensions, \e$B$"$k$$$O\e(B MIME 
1255 \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
1256 \e$B7A<0$r:FDj5A$7$?!'\e(B
1257
1258 @enumerate
1259 @item
1260 \e$BJ8=q\e(B message body \e$B$K$*$1$k\e(B US-ASCII \e$B0J30$NJ8;z=89g\e(B
1261 @item
1262 \e$BHsJ8=q\e(B message body
1263 @item
1264 \e$BJ#?t$NItJ,$+$i$J$k\e(B message body
1265 @item
1266 US-ASCII \e$B0J30$NJ8;z=89g$+$i$J$kJ8=q\e(B header \e$B>pJs\e(B
1267 @end enumerate
1268
1269
1270 RFC 2045 (@ref{RFC 2045}), RFC 2046 (@ref{RFC 2046}), RFC 2047
1271 (@ref{encoded-word}), RFC 2048 (@ref{RFC 2048}), RFC 2049 (@ref{RFC 2049}) \e$B$GDj5A$5$l$F$$$k!#\e(B
1272
1273
1274 @node MIME charset, MTA, MIME, Glossary
1275 @subsection MIME charset
1276
1277 Content-Type (@ref{Content-Type}) \e$BMs$d\e(B encoded-word (@ref{encoded-word}) 
1278 \e$B$N\e(B charset parameter \e$B$GMQ$$$i$l$kEPO?$5$l$?Id9f2=J8;z=89g\e(B(@ref{Coded character set})\e$B!#\e(B@refill
1279
1280 RFC 2045 (@ref{RFC 2045}) \e$B$GDj5A$5$l$F$$$k!#\e(B@refill
1281
1282 iso-2022-jp \e$B$d\e(B euc-kr \e$B$O$=$N#1$D!#\e(B
1283
1284
1285 @node MTA, MUA, MIME charset, Glossary
1286 @subsection MTA
1287 @cindex Message Transfer Agent
1288
1289 @strong{Message Transfer Agent} \e$B$NN,$G!"\e(Bqmail \e$B$d\e(B sendmail \e$B$J$I$N\e(B mail \e$BG[\e(B
1290 \e$BAw\e(B program \e$B$H\e(B inn \e$B$J$I$N\e(B news server \e$B$NAm>N!#\e(B@refill
1291
1292 (cf. @ref{MUA})
1293
1294
1295
1296 @node MUA, Quoted-Printable, MTA, Glossary
1297 @subsection MUA
1298 @cindex Message User Agent
1299
1300 @strong{Message User Agent} \e$B$NN,$G!"\e(Bmail reader \e$B$H\e(B news reader \e$B$NAm>N!#\e(B
1301 @refill
1302
1303 (cf. @ref{MTA})
1304
1305
1306
1307 @node Quoted-Printable, RFC 822, MUA, Glossary
1308 @subsection Quoted-Printable
1309
1310 RFC 2045 (@ref{RFC 2045}) \e$B$GDj5A$5$l$F$$$k\e(B MIME (@ref{MIME}) \e$B$K$*$1$k\e(B 
1311 binary data (@ref{binary data}) \e$B$N\e(B network \e$B$G$NJQ49K!$N#1$D!#\e(B@refill
1312
1313 `=' \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 
1314 \e$B?J?t$GI=8=$9$k!#$3$N$?$a!"\e(BASCII (@ref{ASCII}) \e$BJ8;zCf?4$N\e(B data \e$B$G$O\e(B 
1315 Base64 (@ref{Base64}) \e$B$KHf$Y$k$H2DFI@-$,9b$/$J$k2DG=@-$,$"$k!#\e(B@refill
1316
1317 \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
1318 \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
1319 \e$BDc$$!#\e(B
1320
1321
1322 @node RFC 822, RFC 1036, Quoted-Printable, Glossary
1323 @subsection RFC 822
1324 @cindex RFC 822
1325 @cindex STD 11
1326 @cindex Internet message
1327 @cindex Internet mail
1328 @cindex message header
1329
1330 Internet mail \e$B$N<g$K\e(B @strong{message header} \e$B$K4X$9$k7A<0$K\e(B
1331 \e$B4X$9$kI8=`$rDj$a$F$$$k\e(B RFC.
1332
1333 @noindent
1334 @strong{[Memo]}
1335 @quotation
1336
1337 news message \e$B$b$3$l$K=`$8$F$$$k$N$G!"\e(B@strong{Internet mail} \e$B$H=q$/$h$j$b!"\e(B
1338 @strong{Internet message} \e$B$H=q$$$?J}$,NI$$$+$b$7$l$J$$!#\e(B
1339 @end quotation
1340
1341
1342
1343 @noindent
1344 [RFC 822]
1345 @quotation
1346 D. Crocker, ``Standard for the Format of ARPA Internet Text Messages'',
1347 August 1982, STD 11.
1348 @end quotation
1349
1350
1351
1352 @node RFC 1036, RFC 2045, RFC 822, Glossary
1353 @subsection RFC 1036
1354 @cindex RFC 1036
1355 @cindex USENET
1356
1357 USENET \e$B$G$N\e(B message \e$B$N7A<0$rDj$a$?\e(B RFC.  RFC 822 (@ref{RFC 822}) \e$B$N\e(B 
1358 subset \e$B$K$J$C$F$$$k!#\e(BInternet \e$B$NI8=`$G$O$J$$$,!"\e(BUSENET \e$B0J30$N\e(B netnews \e$B$G\e(B
1359 \e$B$b$3$l$K=`$8$F$$$k$b$N$,B?$$!#\e(B
1360
1361
1362 @noindent
1363 [USENET: RFC 1036]
1364 @quotation
1365 M. Horton and R. Adams, ``Standard for Interchange of USENET Messages'',
1366 December 1987, (obsolete RFC 850).
1367 @end quotation
1368
1369
1370
1371 @node RFC 2045, RFC 2046, RFC 1036, Glossary
1372 @subsection RFC 2045
1373 @cindex RFC 2045
1374 @cindex Standards Track
1375
1376
1377 @noindent
1378 [RFC 2045]
1379 @quotation
1380 N. Freed and N. Borenstein, ``Multipurpose Internet Mail Extensions
1381 (MIME) Part One: Format of Internet Message Bodies'', November 1996,
1382 Standards Track (obsolete RFC 1521, 1522, 1590).
1383 @end quotation
1384
1385
1386
1387 @node RFC 2046, RFC 2048, RFC 2045, Glossary
1388 @subsection RFC 2046
1389 @cindex RFC 2046
1390 @cindex Standards Track
1391
1392
1393 @noindent
1394 [RFC 2046]
1395 @quotation
1396 N. Freed and N. Borenstein, ``Multipurpose Internet Mail Extensions
1397 (MIME) Part Two: Media Types'', November 1996, Standards Track (obsolete
1398 RFC 1521, 1522, 1590).
1399 @end quotation
1400
1401
1402
1403 @node RFC 2048, RFC 2049, RFC 2046, Glossary
1404 @subsection RFC 2048
1405 @cindex RFC 2048
1406 @cindex Standards Track
1407
1408
1409 @noindent
1410 [RFC 2048]
1411 @quotation
1412 N. Freed, J. Klensin and J. Postel, ``Multipurpose Internet Mail
1413 Extensions (MIME) Part Four: Registration Procedures'', November 1996,
1414 Standards Track (obsolete RFC 1521, 1522, 1590).
1415 @end quotation
1416
1417
1418
1419 @node RFC 2049, plain text, RFC 2048, Glossary
1420 @subsection RFC 2049
1421 @cindex RFC 2049
1422 @cindex Standards Track
1423
1424
1425 @noindent
1426 [RFC 2049]
1427 @quotation
1428 N. Freed and N. Borenstein, ``Multipurpose Internet Mail Extensions
1429 (MIME) Part Five: Conformance Criteria and Examples'', November 1996,
1430 Standards Track (obsolete RFC 1521, 1522, 1590).
1431 @end quotation
1432
1433
1434
1435 @node plain text, us-ascii, RFC 2049, Glossary
1436 @subsection plain text
1437
1438 \e$B=qBN$dAHHG$K4X$9$k>pJs$r;}$?$J$$J8;zId9f\e(B(@ref{Coded character set})\e$B$N$_\e(B
1439 \e$B$GI=8=$5$l$k\e(B text \e$B>pJs!#\e(B(cf. @ref{text/plain})
1440
1441
1442
1443 @node us-ascii,  , plain text, Glossary
1444 @subsection us-ascii
1445 @cindex ASCII
1446 @cindex us-ascii
1447
1448 \e$B%"%a%j%+O"K.$J$I$G;H$o$l$k1Q8l$J$I$rI=8=$9$k$?$a$N\e(B MIME charset
1449 (@ref{MIME charset}) \e$B$N#1$D!#\e(B@refill
1450
1451 ASCII (@ref{ASCII}) \e$B$N$_$+$i$J$j\e(B ISO 2022 \e$B$K$h$kId9f3HD%$O5v$5$l$J$$!#\e(B
1452
1453 Internet message \e$B$K$*$1$kI8=`$NId9f2=J8;z=89g\e(B(@ref{Coded character set})
1454 \e$B$G$"$j!"L@<(E*$K\e(B MIME charset \e$B$,<($5$l$J$$>l9g$O86B'$H$7$F\e(B 
1455 @strong{us-ascii} \e$B$,;H$o$l$k!#\e(B@refill
1456
1457 \e$B$^$?!"\e(BRFC 822 (@ref{RFC 822}) \e$B$K$*$1$k\e(B @strong{ASCII} \e$B$O\e(B us-ascii \e$B$G$"$k!#\e(B
1458
1459
1460 @node Bug report, CVS, Glossary, Appendix
1461 @section bug \e$BJs9p$N;EJ}\e(B
1462
1463 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
1464
1465 @itemize @bullet
1466 @item
1467  \e$BF|K\8l\e(B <bug-tm-ja@@chamonix.jaist.ac.jp>
1468 @item
1469  \e$B1Q8l\e(B <bug-tm-en@@chamonix.jaist.ac.jp>
1470 @end itemize
1471
1472
1473 \e$BC"$7!"$"$^$j$K$b8E$$HG$K4X$9$kJs9p$O4?7^$5$l$^$;$s!#8E$$HG$N\e(B bug \e$B$O!"?7\e(B
1474 \e$B$7$$HG$G$O<#$C$F$$$k$+$b$7$l$^$;$s!#$^$:!":G?7HG$G3NG'$7$F$_$^$7$g$&!#\e(B
1475 @refill
1476
1477 \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
1478 \e$B$$$&>u67$J$N$+$O$5$C$Q$jH=$j$^$;$s!#:GDc8B!"\e(BOS, emacs, APEL, FLIM, SEMI, 
1479 \e$B;H$C$F$$$k\e(B MUA \e$B$N<oN`$*$h$SHG!"@_Dj$r=q$/I,MW$,$"$j$^$9!#$^$?!"\e(Berror \e$B$,\e(B
1480 \e$B5/$C$F$$$k>l9g$O\e(B backtrace \e$B$rAw$k$3$H$b=EMW$G$9!#\e(B(cf. @ref{(emacs)Bugs})
1481
1482 \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
1483 \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
1484 \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
1485 \e$B$F$/$@$5$$!#\e(B
1486
1487 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
1488 \e$BO@$r9T$J$C$F$$$^$9!#\e(Btm ML \e$B$K;22C$7$?$$J}$O\e(B
1489
1490 @itemize @bullet
1491 @item
1492  \e$BF|K\8l\e(B <tm-ja-help@@chamonix.jaist.ac.jp>
1493 @item
1494  \e$B1Q8l\e(B <tm-en-help@@chamonix.jaist.ac.jp>
1495 @end itemize
1496
1497 @noindent
1498 \e$B$K6u$N\e(B mail \e$B$rAw$C$F2<$5$$!#\e(B
1499
1500
1501 @node CVS, History, Bug report, Appendix
1502 @section CVS \e$B$K$h$k3+H/\e(B
1503
1504 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
1505 \e$B?7$N\e(B FLIM \e$B$rF~<j$9$k$3$H$,$G$-$^$9!'\e(B
1506
1507 @example
1508 (0) cvs login
1509
1510     % cvs -d :pserver:anonymous@@chamonix.jaist.ac.jp:/hare/cvs/root \
1511         login
1512
1513     CVS password: [CR] # NULL string
1514
1515 (1) checkout
1516
1517     % cvs -d :pserver:anonymous@@chamonix.jaist.ac.jp:/hare/cvs/root \
1518         checkout [-r TAG] flim
1519 @end example
1520
1521
1522 CVS \e$B$rMQ$$$?3+H/$K;22C$7$?$$J}$O\e(B
1523
1524 @itemize @bullet
1525 @item
1526  <cvs@@chamonix.jaist.ac.jp>
1527 @end itemize
1528
1529 @noindent
1530 \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
1531 \e$B$r1h$($F8fO"Mm$/$@$5$$!#\e(B
1532
1533
1534 @node History,  , CVS, Appendix
1535 @section \e$BNr;K\e(B
1536
1537 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}\e$B$K5/8;$7\e(B
1538 \e$B$^$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 B-encoding 
1539 \e$B@lMQ$N\e(B encoded-word \e$B$NI|9f2=%W%m%0%i%`$G$7$?!#\e(B@refill
1540
1541 \e$B$=$N8e!"<i2,\e(B \e$BCNI'\e(B \e$B$O\e(B @file{mime.el} \e$B$r85$K\e(B@file{tiny-mime.el} \e$B$H$$$&%W%m\e(B
1542 \e$B%0%i%`$r=q$-$^$9!#$3$l$O!"\e(BNemacs \e$B$H\e(B Mule \e$B$GF0:n$9$k\e(B encoded-word \e$B$NId9f\e(B
1543 \e$B2=!&I|9f2=%W%m%0%i%`$G$7$?!#\e(B@file{tiny-mime.el} \e$B$O\e(B B-encoding \e$B$@$1$G$J$/\e(B 
1544 Q-encoding \e$B$b\e(Bsupport \e$B$7!"$^$?!"\e(BMULE \e$B$G07$&$3$H$,$G$-$k$5$^$6$^$J\e(B MIME
1545 charset (@ref{MIME charset}) \e$B$rF1;~$K;H$&$3$H$,$G$-$^$7$?!#$3$N;~!"\e(B
1546 Nemacs \e$B$H\e(B Mule \e$B$NAPJ}$r\e(B support \e$B$9$k$?$a$KMQ$$$i$l$?%F%/%K%C%/$O8e$K\e(B emu
1547 package \e$B$K$^$H$a$i$l$^$9!#\e(B@refill
1548
1549 \e$B$3$N:"!"<i2,\e(B \e$BCNI'\e(B \e$B$O\e(B @file{tiny-mime.el} \e$B$r$5$^$6$^$J\e(B MUA \e$B$G;H$&$?$a$N@_\e(B
1550 \e$BDj=8$bG[I[$7$F$$$^$7$?$,!"$=$l$i$O8e$K\e(B@file{tiny-mime.el} \e$B$H$H$b$K#1$D$N\e(B 
1551 package \e$B$K$^$H$a$i$l!"\e(Btm \e$B$H$$$&L>A0$GG[I[$5$l$^$9!#\e(B@refill
1552
1553 \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
1554 @file{tm-body.el} \e$B$r=q$-$^$9!#$3$l$O!"$9$0$K\e(B@file{tm-view.el} \e$B$H$$$&L>A0\e(B
1555 \e$B$KJQ$o$j$^$7$?$,!"$d$,$F!"$3$l$,\e(B@file{tiny-mime.el} \e$B$KBe$o$C$F!"\e(Btm \e$B$NCf\e(B
1556 \e$B3K$H$J$j$^$9!#\e(B@refill
1557
1558 @file{tm-view.el} \e$B$OEvA3!"\e(BContent-Transfer-Encoding \e$B$r07$&I,MW$,$"$j$^$9!#\e(B
1559 \e$B$3$NL\E*$N$?$a$K!"\e(BMEL \e$B$,@0Hw$5$l$O$8$a$^$7$?!#\e(BBase64 \e$B$K4X$7$F$O\e(B 
1560 @file{tiny-mime.el} \e$B$N\e(B code \e$B$,0\$5$l!"$^$?!"?7$?$K\e(BQuoted-Printable \e$B$N\e(B 
1561 code \e$B$,DI2C$5$l$^$7$?!#$3$l$i$,\e(B@file{mel-b.el} \e$B$H\e(B @file{mel-q.el} \e$B$K$J$j\e(B
1562 \e$B$^$7$?!#\e(B@refill
1563
1564 \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} \e$B$,DI2C$5$l!"\e(B
1565 \e$B$=$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@file{mel-g.el} \e$B$,DI2C$5$l$^\e(B
1566 \e$B$7$?!#\e(B@refill
1567
1568 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} \e$B$N:F<BAu$,9T$o$l!"$3\e(B
1569 \e$B$N2aDx$G!"\e(BSTD 11 \e$B$N\e(B parser \e$B$,=q$+$l$^$7$?!#$3$l$O!"8=:_$N\e(B 
1570 @file{std11.el} \e$B$KEv$?$j$^$9!#$^$?!"$3$N2aDx$G\e(B @file{tiny-mime.el} \e$B$OI|\e(B
1571 \e$B9f2=$r9T$&\e(B @file{tm-ew-d.el} \e$B$HId9f2=$r9T$&\e(B @file{tm-ew-e.el} \e$B$KJ,$1$i$l\e(B
1572 \e$B$^$7$?!#$3$NN><T$,8=:_$N\e(B @file{eword-decode.el} \e$B$H\e(B 
1573 @file{eword-encode.el} \e$B$N@hAD$KEv$?$j$^$9!#\e(B@refill
1574
1575 \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(Btm 
1576 \e$B$O\e(B APEL, MEL, SEMI, EMH, RMAIL-MIME, Gnus-MIME \e$B$J$I$KJ,$1$i$l$^$7$?!#$3\e(B
1577 \e$B$N$&$A$N\e(B MEL \e$B$,\e(B FLIM \e$B$ND>@\$N@hAD$KEv$?$j$^$9!#\e(B@refill
1578
1579 \e$B8e$K!"\e(BAPEL \e$B$+$i\e(B @file{std11.el} \e$B$,0\$5$l!"$^$?!"\e(B@file{mailcap.el},
1580 @file{eword-decode.el} \e$B$*$h$S\e(B @file{eword-encode.el} \e$B$,\e(B SEMI \e$B$+$i0\$5$l!"\e(B
1581 package \e$B$NL>A0$,\e(B FLIM\e$B$H$J$j$^$9!#\e(B@refill
1582
1583 \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
1584 FLIM \e$B$N;^$G$"$k\e(B ``FLIM-FLAM'' \e$B$H$J$C$F$$$^$9!#\e(B
1585
1586
1587 @node Concept Index, Function Index, Appendix, Top
1588 @chapter \e$B35G0:w0z\e(B
1589
1590 @printindex cp
1591
1592 @node Function Index, Variable Index, Concept Index, Top
1593 @chapter \e$B4X?t:w0z\e(B
1594
1595 @printindex fn
1596
1597 @node Variable Index,  , Function Index, Top
1598 @chapter \e$BJQ?t:w0z\e(B
1599
1600 @printindex vr
1601 @bye