elisp-vcs/flim-1.14.9/mime-ja.sgml

1423 lines
44 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype sinfo system>
<head>
<title>FLIM 1.14 MIME $B5!G=@bL@=q(B
<author>$B<i2,(B $BCNI'(B <mail>morioka@jaist.ac.jp</mail>
<date>1999-01-27
<toc>
</head>
<body>
<abstract>
<p>
This file documents MIME features of FLIM, a fundamental library to
process Internet Messages for GNU Emacsen.
<p>
GNU Emacsen $BMQ$N(B Internet Message $B=hM}$N$?$a$N4pAC(B library $B$G$"$k(B FLIM
$B$N(B MIME $B5!G=$K4X$7$F@bL@$7$^$9!#(B
</abstract>
<h1> FLIM $B$C$F2?!)(B
<node> Introduction
<p>
FLIM $B$O(B Internet Message $B$NI=8=$dId9f2=$K4X$9$k4pACE*$J5!G=$rDs6!$9$k(B
$B$?$a$N(B library $B$G$9!#(B
<h1> FLIM $B$N(B MIME $B5!G=$N;H$$J}(B
<node> How to use
<p>
FLIM $B$NDs6!$9$k(B MIME $B5!G=$r;H$&$?$a$K$O(B
<lisp>
(require 'mime)
</lisp>
<noindent>$B$rI>2A$7$F$/$@$5$$!#(B
<h1> Message $B$H(B Entity
<node> Entity
<p>
<dref>RFC 2045</dref> $B$K$h$l$P!"!V(BEntity $B$H$$$&8l$O!"(Bmessage, $B$b$7$/$O!"(B
multipart entity $B$N(B body $BCf$N#1$D$NItJ,$N!"(BMIME $B$GDj5A$5$l$?(B header
field $B$HFbMF$r;X$9!W$H$J$C$F$$$^$9!#$3$3$G$O!"(BMIME $B$GDj5A$5$l$?(B header
field $B0J30$NA4$F$N(B header $B$H(B body $B$r;X$98l$H$7$F(B
<concept>entity</concept>$B$rMQ$$$k$3$H$K$7$^$9!#(B
<p>
RFC 2045 $B$NDj5A$O!"(BMIME message $B$,(B entity $B$r@a$H$9$kLZ9=B$$G$"$k$3$H$r(B
$B<($7$F$$$^$9!#$D$^$j!"(BMIME $B$O(B message $B$rLZ9=B$$K3HD%$7$?Lu$G$9!#(B
<p>
FLIM $B$O(B entity $B$N>pJs$rI=8=$9$k$?$a$K(B<concept>mime-entity</concept> $B9=(B
$BB$BN$rMQ$$$^$9!#0J2<$G$OC1$K(B mime-entity $B$H8F$V$3$H$K$7$^$9!#(B
<h2> Entity $B$N@8@.(B
<node> Entity creation
<p>
<defun name="mime-open-entity">
<opts> type location
<p>
Entity $B$r3+$$$F!"$=$l$rJV$7$^$9!#(B
<p>
<var>type</var> $B$O(B representation-type $B$G$9!#(B <cf node="mm-backend">
<p>
<var>location</var> $B$O(B entity $B$N0LCV$G$9!#;XDjJ}K!$O(B
representation-type $B$K0M$C$FJQ$o$j$^$9!#(B
</defun>
<defun name="mime-parse-buffer">
<opts> buffer type
<p>
<var>buffer</var> $B$r(B message $B$H$7$F9=J82r@O$7!"$=$N7k2L$N(B mime-entity
$B$r(B <var>buffer</var> $B$N(B<code>mime-message-structure</code> $B$K3JG<$9$k!#(B
<p>
<var>buffer</var> $B$,>JN,$5$l$?>l9g!"8=:_$N(B buffer $B$r9=J82r@O$9$k!#(B
<p>
<var>type</var> $B$,;XDj$5$l$?>l9g!"$=$NCM$r@8@.$5$l$k(B mime-entity $B$NI=(B
$B>]7?$H$7$FMQ$$$k!#>JN,$5$l$?>l9g$O(B <var>buffer</var> $B$H$J$k!#(B<cf
node="mm-backend">
</defun>
<h2> Entity $B3,AX(B
<node> Entity hierarchy
<p>
MIME message $B$O(B entity $B$rC10L$H$9$kLZ9=B$$K$J$C$F$$$^$9!#(B
<p>
$B$3$NLZ$K$*$$$F:,$H$J$k@a$O(B message $BA4BN$rI=$9(B entity $B$G$9!#$3$3$G$O!"(B
$B$3$l$r(B <concept>root-entity</concept> $B$b$7$/$O(B
<concept>message</concept> $B$H8F$S$^$9!#(B
<p>
root-entity $B0J30$N(B entity $B$O?F$r;}$A$^$9!#$^$?!"(Bentity $B$O;R6!$r;}$D$+(B
$B$bCN$l$^$;$s!#$3$N?F;R4X78$r9M$($k$3$H$G(B entity $B$NAjBP4X78$r07$&$3$H$,(B
$B$G$-$^$9!#(B
<p>
$B0lJ}!"(Bentity $B$N(B message $B$K$*$1$k0LCV$r9M$($k$3$H$b$G$-$^$9!#(B
<p>
entity $B$O$3$NLZ$K$*$1$k@a$H$J$j$^$9$,!"$3$NLZ$K$O?<$5$HF1$8?<$5$NCf$N(B
$B=gHV$K=>$C$FHV9f$,IU$1$k$3$H$,$G$-$^$9!#B($A!"(B
<verb>
$B(#(!(!(!($(B
$B("(B nil $B("(B
$B(&(!(((!(%(B
$B(#(!(!(!(!(!(!(!(!(!(+(!(!(!(!(!(!(!(!(!($(B
$B(#(*($(B $B(#(*($(B $B(#(*($(B
$B("#0("(B $B("#1("(B $B("#2("(B
$B(&(((%(B $B(&(((%(B $B(&(((%(B
$B("(B $B(#(!(!(!(!(+(!(!(!(!($(B $B("(B
$B(#(!(*(!($(#(!(*(!($(#(!(*(!($(#(!(*(!($(#(!(*(!($(B
$B("(B $B#0(B.$B#0("("(B $B#1(B.$B#0("("(B $B#1(B.$B#1("("(B $B#1(B.$B#2("("(B $B#2(B.$B#0("(B
$B(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%(&(!(!(!(%(B
</verb>
<p>
<noindent>$B$N$h$&$K?<$5(B n $B$N@a$K$OD9$5(B n $B$N@0?tNs$N@aHV9f$,?6$l$^$9!#$3$l(B
$B$r(B <concept>entity-number</concept> $B$H8F$S$^$9!#(Bentity-number $B$O(B S $B<0$H(B
$B$7$F$O(B <code>(1 2 3)</code> $B$N$h$&$J@0?t$N%j%9%H$H$7$FI=8=$5$l$^$9!#(B
<p>
mime-entity $B$G$O!"$3$l$HF1MM$N(B <concept>node-id</concept> $B$rMQ$$$^$9!#(B
node-id $B$O$A$g$&$I(B entity-number $B$r5U$K$7$?%j%9%H$G!"(Bentity-number
1.2.3 $B$KBP1~$9$k(B node-id $B$O(B <code>(3 2 1)</code> $B$G$9!#(B
<p>
$BA0=R$N$h$&$K!"(BMIME message $B$O(B entity $B$rC10L$H$7$?LZ9=B$$K$J$C$F$$$k$N$G!"(B
$B$3$N:,$G$"$k(B message $BA4BN$b(B mime-entity $B$GI=8=$9$k$3$H$,$G$-!"(Bbuffer
local $BJQ?t(B <code>mime-message-structure</code> $B$K3JG<$9$k$3$H$K$7$^$9!#(B
<p>
<code>mime-message-structure</code> $B$r5/E@$K(B entity-number $B$d(B node-id
$B$G<($5$l$k(B entity $B$r<h$j=P$9$3$H$,$G$-$^$9!#(B
<defvar name="mime-message-structure">
<p>
$B8=:_$N(B buffer $B$K$*$1$k(B message $BA4BN$N(B mime-entity $B9=B$BN$r3JG<$9$k(B
buffer local $BJQ?t!#(B
</defvar>
<defun name="mime-entity-children">
<args> entity
<p>
<var>entity</var> $B$K4^$^$l$k(B entity $B$N(B list $B$rJV$9!#(B
</defun>
<defun name="mime-entity-parent">
<args> entity <opts> message
<p>
<var>entity</var> $B$N?F$N(B entity $B$rJV$9!#(B
<p>
<var>message</var> $B$,;XDj$5$l$?>l9g!"$3$l$r:,$H8+Jo$9!#(B
</defun>
<defun name="mime-root-entity-p">
<args> entity
<p>
<var>entity</var> $B$,:,!JB($A!"(Bmessage $BA4BN!K$G$"$k>l9g$K!"(B
$BHs(B-<code>nil</code> $B$rJV$9!#(B
</defun>
<defun name="mime-entity-node-id">
<args> entity
<p>
<var>entity</var> $B$N(B node-id $B$rJV$9!#(B
</defun>
<defun name="mime-entity-number">
<args> entity
<p>
<var>entity</var> $B$N(B entity-number $B$rJV$9!#(B
</defun>
<h2> Entity $B$N8!:w(B
<node> Entity Search
<p>
<defun name="mime-find-entity-from-number">
<args> entity-number <opts> message
<p>
<var>message</var> $B$+$i!"(B<var>enity-number</var> $B$N(B entity $B$rJV$7$^$9!#(B
<p>
<var>message</var> $B$,;XDj$5$l$F$$$J$$>l9g$O!"(B
<code>mime-message-structrue</code> $B$,;H$o$l$^$9!#(B
</defun>
<defun name="mime-find-entity-from-node-id">
<args> entity-node-id <opts> message
<p>
<var>message</var> $B$+$i!"(B<var>entity-node-id</var> $B$N(B entity $B$rJV$7$^(B
$B$9!#(B
<p>
<var>message</var> $B$,;XDj$5$l$F$$$J$$>l9g$O!"(B
<code>mime-message-structure</code> $B$,;H$o$l$^$9!#(B
</defun>
<defun name="mime-find-entity-from-content-id">
<args> cid <opts> message
<p>
<var>message</var> $B$+$i!"(B<var>cid</var> $B$N(B entity $B$rJV$7$^$9!#(B
<p>
<var>message</var> $B$,;XDj$5$l$F$$$J$$>l9g$O!"(B
<code>mime-message-structure</code> $B$,;H$o$l$^$9!#(B
</defun>
<h2> Entity $B$NB0@-(B
<node> Entity Attributes
<p>
<defun name="mime-entity-content-type">
<args> entity
<p>
<var>entity</var> $B$N(B content-type $B$rJV$9!#(B<cf
node="mime-content-type">
</defun>
<defun name="mime-entity-content-disposition">
<args> entity
<p>
<var>entity</var> $B$N(B content-disposition $B$rJV$9!#(B<cf
node="mime-content-disposition">
</defun>
<defun name="mime-entity-filename">
<args> entity
<p>
<var>entity</var> $B$N(B file $BL>$rJV$9!#(B
</defun>
<defun name="mime-entity-encoding">
<args> entity <opts> default-encoding
<p>
<var>entity</var> $B$N(B content-transfer-encoding $B$rJV$9!#(B<cf
node="Content-Transfer-Encoding">
<p>
$B$b$7!"(B<var>entity</var> $B$K(B Content-Transfer-Encoding $BMs$,B8:_$7$J$$>l(B
$B9g$O!"(B<var>default-encoding</var> $B$rJV$9!#$3$l$,;XDj$5$l$J$$>l9g$O!"(B
<code>"7bit"</code> $B$rMQ$$$k!#(B
</defun>
<defun name="mime-entity-cooked-p">
<args> entity
<p>
<var>entity</var> $B$NFbMF$,4{$K%3!<%IJQ49$5$l$F$$$k>l9g$O(B nil $B$GL5$$CM(B
$B$rJV$9!#(B
</defun>
<h2> Entity header $B$N>pJs(B
<node> Entity-header
<p>
<defun name="mime-fetch-field">
<args> field-name <opts> entity
<p>
<var>entity</var> $B$N(B header $BCf$N(B <var>field-name</var> $BMs$N(B body $B$rJV$9!#(B
<p>
$B7k2L$NJ8;zNs$O(B network $BI=8=$N$^$^$G$"$k!#(B
<p>
<var>entity</var> $B$,>JN,$5$l$?>l9g$O!"(B
<code>mime-message-structure</code> $B$NCM$rMQ$$$k!#(B
<p>
<var>field-name</var> $BMs$,B8:_$7$J$$>l9g$O(B <code>nil</code> $B$rJV$9!#(B
</defun>
<defun name="mime-read-field">
<args> field-name <opts> entity
<p>
<var>entity</var> $B$N(B header $BCf$N(B <var>field-name</var> $BMs$r9=J82r@O$7$?(B
$B7k2L$rJV$9!#(B
<p>
$B7k2L$N7A<0$OMsKh$K0[$J$k!#Hs9=B$2=Ms$N>l9g$OJ8;zNs$rJV$7!"9=B$2=Ms$N>l9g(B
$B$O$=$N7A<0$K=>$C$?(B list $B$rJV$9!#(B
<p>
$B7k2LCf$NJ8;zNs$O(B Emacs $B$NFbItI=8=$KJQ49$5$l$k!#(B
<p>
<var>entity</var> $B$,>JN,$5$l$?>l9g$O!"(B
<code>mime-message-structure</code> $B$NCM$rMQ$$$k!#(B
<p>
<var>field-name</var> $BMs$,B8:_$7$J$$>l9g$O(B nil $B$rJV$9!#(B
</defun>
<h2> Entity $B$NJ8;zI=8=(B
<node> entity formatting
<p>
<defun name="mime-insert-header">
<args> entity <opts> invisible-fields visible-fields
<p>
$B8=:_0LCV$K(B <var>entity</var> $B$NI|9f$7$?(B header $B$rA^F~$9$k!#(B
<p>
<var>invisible-fields</var> $B$H(B <var>visible-fields</var> $B$O@55,I=8=$N(B
list $B$G!"$=$l$>$l!"I=<($7$?$/$J$$(B field $BL>$HI=<($7$?$$MsL>$rI=8=$7$?$b$N(B
$B$G$"$k!#(B
<p>
<var>invisible-fields</var> $B$NMWAG$N$I$l$+$K(B match $B$7!"$+$D!"(B
<var>visible-fields</var> $B$NMWAG$N$I$l$K$b(B match $B$7$J$$Ms$OI=<($5$l$J(B
$B$$!#(B
<p>
<dref>encoded-word</dref> $B$OI|9f$5$l$k!#!X@8$NHs(B us-ascii $BJ8;z!Y$O(B
<code>default-mime-charset</code> $B$H$7$F2r<a$5$l$k!#(B
</defun>
<defun name="mime-insert-text-content">
<args> entity
<p>
point $B$NA0$K(B <var>entity</var> $B$r(B text entity $B$H$7$FA^F~$7$^$9!#(B
<p>
<var>entity</var> $B$NFbMF$O(B <dref>MIME charset</dref> $B$H$7$FI|9f2=$5$l(B
$B$^$9!#(B<var>entity</var> $B$N(B Content-Type field $B$K(B charset paramter $B$,L5(B
$B$$$H!"(B<code>default-mime-charset</code> $B$,=i4|CM$H$7$F;H$o$l$^$9!#(B
</defun>
<defvar name="default-mime-charset">
<p>
$BE,@Z$J(B <dref>MIME charset</dref> $B$,8+$D$+$i$J$+$C$?>l9g$KMQ$$$i$l$k(B
MIME charset.
<p>
$BK\Mh$O(B APEL $B$NJQ?t$G$"$k!#(B
</defvar>
<h2> Entity $B$NFbMF(B
<node> Entity-content
<p>
<defun name="mime-entity-content">
<args> entity
<p>
<var>entity</var> $B$NFbMF$N(B byte $BNs$rJV$9!#(B
</defun>
<defun name="mime-insert-entity-content">
<args> entity
<p>
point $B$N0LCV$K(B <var>entity</var> $B$NFbMF$rA^F~$7$^$9!#(B
</defun>
<defun name="mime-write-entity-content">
<args> entity filename
<p>
<var>entity</var> $B$NFbMF$r(B <var>filename</var> $B$K=q$-9~$_$^$9!#(B
</defun>
<h2> Entity $B$N%M%C%H%o!<%/I=8=(B
<node> Entity-network-representation
<p>
<defun name="mime-insert-entity">
<args> entity
<p>
<var>entity</var> $B$N(B header $B$H(B body $B$r(B point $B$N$H$3$m$KA^F~$7$^$9!#(B
</defun>
<defun name="mime-write-entity">
<args> entity filename
<p>
<var>entity</var> $B$NI=8=$r(B <var>filename</var> $B$K=q$-9~$_$^$9!#(B
</defun>
<defun name="mime-write-entity-body">
<args> entity filename
<p>
<var>entity</var> $B$N(B body $B$r(B <var>filename</var> $B$K=q$-9~$_$^$9!#(B
</defun>
<h2> Entity $B$N(B buffer $B$K$h$kI=8=(B
<node> Entity buffer
<p>
<defun name="mime-entity-buffer">
<args> entity
<p>
<var>entity</var> $B$,B8:_$9$k(B buffer $B$rJV$9!#(B
</defun>
<defun name="mime-entity-point-min">
<args> entity
<p>
<var>entity</var> $B$,B8:_$9$k(B buffer $B$K$*$1$k!"(B<var>entity</var> $B$,@j$a$k(B
$BNN0h$N@hF,0LCV$rJV$9!#(B
</defun>
<defun name="mime-entity-point-max">
<args> entity
<p>
<var>entity</var> $B$,B8:_$9$k(B buffer $B$K$*$1$k!"(B<var>entity</var> $B$,@j$a$k(B
$BNN0h$NKvHx0LCV$rJV$9!#(B
</defun>
<defun name="mime-entity-header-start">
<args> entity
<p>
<var>entity</var> $B$,B8:_$9$k(B buffer $B$K$*$1$k!"(Bheader $B$,@j$a$kNN0h$N@hF,(B
$B0LCV$rJV$9!#(B
</defun>
<defun name="mime-entity-header-end">
<args> entity
<p>
<var>entity</var> $B$,B8:_$9$k(B buffer $B$K$*$1$k!"(Bheader $B$,@j$a$kNN0h$NKvHx(B
$B0LCV$rJV$9!#(B
</defun>
<defun name="mime-entity-body-start">
<args> entity
<p>
<var>entity</var> $B$,B8:_$9$k(B buffer $B$K$*$1$k!"(Bbody $B$,@j$a$kNN0h$N@hF,0L(B
$BCV$rJV$9!#(B
</defun>
<defun name="mime-entity-body-end">
<args> entity
<p>
<var>entity</var> $B$,B8:_$9$k(B buffer $B$K$*$1$k!"(Bbody $B$,@j$a$kNN0h$NKvHx0L(B
$BCV$rJV$9!#(B
</defun>
<h2> Entity $B$NI=8=$H<B8=(B
<node> mm-backend
<p>
Entity $B$OCj>]2=$5$l$?%G!<%?I=8=$G!"<B:]$N%G!<%?I=8=$H$7$F$OMQES$K1~$8$F(B
$B$5$^$6$^$J$b$N$,MxMQ$G$-$k$h$&$K@_7W$5$l$F$$$^$9!#(B
<p>
$B$3$3$G!"(Bentity $B$,$I$&$$$&<oN`$NI=8=$r9T$C$F$$$k$+$r<($9$N$,(B
<concept>representation-type</concept> $B$G!"(Bentity $B$r@8@.$9$k;~$K$O$3$l$r(B
$B;XDj$7$^$9!#(B<cf node="Entity Creation">
<p>
$BA0@a$^$G$K=R$Y$FMh$?(B entity $B$KBP$9$k=hM}$O!"(Bentity $B$KBP$7$F$=$N=hM}$r0M(B
$BMj$9$k$3$H$K$h$C$F<B8=$5$l$F$$$^$9!#(BEntity $B$O<+J,$N(B
representation-type $B$rCN$C$F$*$j!"$=$N(B representation-type $B$K1~$8$F<B:](B
$B$N=hM}$r9T$&4X?t$r8F$S=P$7$^$9!#$3$N$h$&$J4X?t$r(B <concept>entity $B=hM}(B
method</concept> $B$H8F$S$^$9!#$^$?!"(Brepresentation-type $BKh$K$3$N$h$&$J4X(B
$B?t$r$^$H$a$?$b$N$r(B <concept>mm-backend</concept> $B$H8F$S$^$9!#(B
<p>
mm-backend $B$O(B representation-type $B$NL>A0$N@hF,$K(B <code>mm</code> $B$H$$$&(B
$B@\F,<-$rIU$1$?4X?tL>$+$i$J$k(B module $B$G!"$=$N(B module $BL>$OF1MM$K(B
representation-type $B$NL>A0$N@hF,$K(B <code>mm</code> $B$rIU$1$?$b$N$K$J$C$F(B
$B$$$^$9!#$3$N(B module $B$O(B representation-type $B$N(B entity $B$,:G=i$K@8@.$5$l$k(B
$B;~$K<+F0E*$K(B require $B$5$l$^$9!#(B
<h3> Entity $B$X$NJX$j(B
<node> Request for entity
<p>
<defun name="mime-entity-send">
<args> entity message <rest> args
<p>
<var>entity</var> $B$K(B <var>message</var> $B$rAw$k!#(B
<p>
<var>args</var> $B$O(B <var>message</var> $B$N0z?t$G$"$k!#(B
</defun>
<h3> mm-backend $B$N:n$jJ}(B
<node> mm-backend module
<p>
<defmacro name="mm-define-backend">
<args> type
<opts> parents
<p>
<var>type</var> $B$r(B mm-backend $B$H$7$FDj5A$7$^$9!#(B
<p>
<var>PARENTS</var> $B$,;XDj$5$l$F$$$k>l9g$O!"(B<var>type</var> $B$O(B prents
$B$r7Q>5$7$^$9!#$=$l$>$l$N(B parent $B$O(B representation-type $B$G$"$kI,MW$,$"(B
$B$j$^$9!#(B
<p>
$BNc(B:
<p>
<lisp>
(mm-define-backend chao (generic))
</lisp>
</defmacro>
<defmacro name="mm-define-method">
<args> name args <rest> body
<p>
<var>name</var> $B$r(B (nth 1 (car <var>args</var>)) backend $B$N(B method $B4X(B
$B?t$H$7$FDj5A$7$^$9!#(B
<p>
<var>args</var> $B$O(B lambda $B$N0z?t%j%9%H$N$h$&$J$b$N$G$9$,!"(B(car
<var>args</var>) $B$O;XDj$5$l$?(B parameter $B$G$"$kI,MW$,$"$j$^$9!#(B(car
(car <var>args</var>)) $B$OJQ?t$NL>A0$G!"(B(nth 1 (car <var>args</var>))
$B$O(B backend $B$NL>A0(B (representation-type) $B$G$9!#(B
<p>
$BNc(B:
<p>
<lisp>
(mm-define-method entity-cooked-p ((entity chao)) nil)
</lisp>
</defmacro>
<h1> Content-Type $BMs$N>pJs(B
<node> Content-Type
<p>
<concept>Content-Type $BMs(B</concept> $B$O(B <dref>media-type</dref> $B$d(B MIME
charset $B$H$$$C$?(B <dref>entity</dref> $B$NFbMF$N<oN`$dI=8=7A<0$J$I$r5-=R(B
$B$9$k$?$a$N$b$N$G!"(B<dref>RFC 2045</dref> $B$GDj5A$5$l$F$$$^$9!#(B
<memo>
<p>
$BNr;KE*$K$O(B RFC 1049 $B$G(B Content-Type $BMs$,Ds0F$5$l$F$$$k!#C"$7!"(BMIME $B$N(B
media-type $B$N$h$&$J(B type $B$H(B subtype $B$N6hJL$O$J$/!"(BMIME charset $B$N$h$&(B
$B$JJ8;zId9f$N<oN`$rI=8=$9$k$3$H$b$G$-$J$$!#(B
</memo>
<p>
FLIM $B$O(B Content-Type $BMs$r9=J82r@O$9$k4X?t$H(B Content-Type $BMs$N2r@O7k2L$r(B
$B3JG<$9$k9=B$BN(B <concept>mime-content-type</concept> $B$rDs6!$7$^$9!#(B
<h2> Content-Type $BMs$N7A<0(B
<node> Content-Type field
<p>
Content-Type $BMs$N7A<0$O0J2<$N$h$&$KDj5A$5$l$F$$$^$9!'(B
<quote>
``Content-Type'' ``:'' <concept>type</concept> ``/''
<concept>subtype</concept> *( ``;'' <concept>parameter</concept> )
</quote>
<p>
$BNc$($P!"(B
<quote>
<verb>
Content-Type: image/jpeg
</verb>
</quote>
<noindent>
$B$d(B
<quote>
<verb>
Content-Type: text/plain; charset=iso-2022-jp
</verb>
</quote>
<noindent>
$B$J$I$N$h$&$KMQ$$$i$l$^$9!#(B
<p>
$B$3$3$G!"(B`type' $B$H(B `subtype' $B$O(B entity $B$N7A<0$r<($9$b$N$G!"N><T$rAm>N$7(B
$B$F!"(B`media-type' $B$H8F$V$3$H$K$7$^$9!#>e5-$NNc$K$*$1$k(B `image/jpeg' $B$d(B
`text/plain' $B$O(B media-type $B$N#1$D$G$9!#(B
<memo>
<p>
Content-Type $BMs$N$J$$(B entity $B$O(B
<quote>
<verb>
Content-Type: text/plain; charset=us-ascii
</verb>
</quote>
<noindent>
$B$H$7$F2r<a$5$l$k!#(B<cf node="us-ascii">
</memo>
<h2> mime-content-type $B9=B$BN(B
<node> mime-content-type
<p>
<define type="Structure" name="mime-content-type">
<p>
Content-Type $BMs$N>pJs$r3JG<$9$k$?$a$N9=B$BN!#(B
<p>
$B$3$N9=B$BN$r;2>H$9$k$K$O(B <code>mime-content-type-$BMWAGL>(B</code> $B$H$$$&L>(B
$BA0$N;2>H4X?t$rMQ$$$k!#(B
<p>
$B$3$N9=B$BN$NMWAG$O0J2<$NDL$j$G$"$k!'(B
<vl>
<dt>primary-type<dd>media-type $B$N<g7?(B (symbol).
</dd>
<dt>subtype<dd>media-type $B$NI{7?(B (symbol).
</dd>
<dt>parameters<dd>Content-Type $BMs$N(B parameter ($BO"A[(B list).
</dd>
</vl>
</define>
<defun name="make-mime-content-type">
<args> type subtype
<opts> parameters
<p>content-type $B$N@8@.;R!#(B
</defun>
<defun name="mime-content-type-parameter">
<args> content-type parameter
<p>
<var>content-type</var> $B$N(B <var>parameter</var> $B$NCM$rJV$9!#(B
</defun>
<h2> Content-Type $BMs$N2r@O4o(B
<node> Content-Type parser
<p>
<defun name="mime-parse-Content-Type">
<args> string
<p>
<var>string</var> $B$r(B content-type $B$H$7$F2r@O$7$?7k2L$rJV$9!#(B
</defun>
<defun name="mime-read-Content-Type">
<p>
$B8=:_$N(B buffer $B$N(B Content-Type $BMs$rFI$_<h$j!"2r@O$7$?7k2L$rJV$9!#(B
<p>
Content-Type $BMs$,B8:_$7$J$$>l9g$O(B nil $B$rJV$9!#(B
</defun>
<h2> Content-Type $B$K4X$9$kM-MQ$J4X?t(B
<node> Content-Type utility
<p>
<defun name="mime-type/subtype-string">
<args> type <opts> subtype
<p>
<var>type</var> $B$H(B <var>subtype</var> $B$+$i(B type/subtype $B7A<0$NJ8;zNs$rJV(B
$B$9!#(B
</defun>
<h1> Content-Disposition $BMs$N>pJs(B
<node> Content-Disposition
<p>
<concept>Content-Disposition $BMs(B</concept> $B$O(B entity $B$NI=<($d(B file $BL>$J$I(B
$B$NB0@-$K$J$I$K4X$9$k>pJs$r5-=R$9$k$?$a$N$b$N$G$9!#(B
<rfc number="2183" type="Standards Track"
author="S. Dorner, K. Moore and R. Troost"
title="Communicating Presentation Information in
Internet Messages: The Content-Disposition Header"
date="August 1997">
<p>
FLIM $B$O(B Content-Disposition $BMs$r9=J82r@O$9$k4X?t$H(B Content-Disposition
$BMs$N2r@O7k2L$r3JG<$9$k9=B$BN(B
<concept>mime-content-disposition</concept> $B$rDs6!$7$^$9!#(B
<h2> mime-content-disposition $B9=B$BN(B
<node> mime-content-disposition
<p>
<define type="Structure" name="mime-content-disposition">
<p>
Content-Disposition $BMs$N2r@O7k2L$r<}$a$k$?$a$N9=B$BN!#(B
<p>
$B$3$N9=B$BN$r;2>H$9$k$K$O(B <code>mime-content-disposition-$BMWAGL>(B</code> $B$H(B
$B$$$&L>A0$N;2>H4X?t$rMQ$$$k!#(B
<p>
$B$3$N9=B$BN$NMWAG$O0J2<$NDL$j$G$"$k!'(B
<vl>
<dt>disposition-type<dd>disposition-type (symbol).
</dd>
<dt>parameters<dd>Content-Disposition $BMs$N(B parameter ($BO"A[(B list).
</dd>
</vl>
</define>
<defun name="mime-content-disposition-parameter">
<args> content-disposition parameter
<p>
<var>content-disposition</var> $B$N(B <var>parameter</var> $B$NCM$rJV$9!#(B
</defun>
<defun name="mime-content-disposition-filename">
<args> content-disposition
<p>
<var>content-disposition</var> $B$N(B filename $B$NCM$rJV$9!#(B
</defun>
<h2> Content-Disposition $BMs$N2r@O4o(B
<node> Content-Disposition parser
<p>
<defun name="mime-parse-Content-Disposition">
<args> string
<p>
<var>string</var> $B$r(B content-disposition $B$H$7$F2r@O$7$?7k2L$rJV$9!#(B
</defun>
<defun name="mime-read-Content-Disposition">
<p>
$B8=:_$N(B buffer $B$N(B Content-Disposition $BMs$rFI$_<h$j!"2r@O$7$?7k2L$rJV$9!#(B
<p>
Content-Disposition $BMs$,B8:_$7$J$$>l9g$O(B nil $B$rJV$9!#(B
</defun>
<h1> $BId9f2=K!(B
<node> Content-Transfer-Encoding
<p>
<concept>Content-Transfer-Encoding $BMs(B</concept> $B$O(B entity $B$NId9f2=K!$r5-(B
$B=R$9$k$?$a$N$b$N$G$9!#(B
<p>
FLIM $B$G$O(B Content-Transfer-Encoding $BMs$r9=J82r@O$9$k4X?t$rDs6!$7$^$9!#$3(B
$B$l$i$N4X?t$O(B Content-Transfer-Encoding $BMs$N>pJs$OJ8;zNs$GI=8=$7$^$9!#(B
<p>
$B$^$?!"(BContent-Transfer-Encoding $B$K4p$E$$$FId9f2=!&I|9f2=$r9T$&4X?t$bDs(B
$B6!$5$l$^$9!#(B
<h2> Content-Transfer-Encoding $BMs$N2r@O4o(B
<node> Content-Transfer-Encoding parser
<p>
<defun name="mime-parse-Content-Transfer-Encoding">
<args> string
<p>
<var>string</var> $B$r(B content-transfer-encoding $B$H$7$F2r@O$7$?7k2L$rJV$9!#(B
</defun>
<defun name="mime-read-Content-Transfer-Encoding">
<opts>default-encoding
<p>
$B8=:_$N(B buffer $B$N(B Content-Transfer-Encoding $BMs$rFI$_<h$j!"2r@O$7$?7k2L$r(B
$BJV$9!#(B
<p>
Content-Transfer-Encoding $BMs$,B8:_$7$J$$>l9g$O(B
<var>default-encoding</var> $B$rJV$9!#(B
</defun>
<h2> $BId9f2=!&I|9f2=(B
<node> encoder/decoder
<p>
<defun name="mime-encode-region">
<args> start end encoding
<p>
$B8=:_$N(B buffer $B$N(B <var>start</var> $B$+$i(B <var>end</var> $B$^$G$N(B region $B$r(B
<var>encoding</var> $B$r;H$C$FId9f2=$7$^$9!#(B
</defun>
<defun name="mime-decode-region">
<args> start end encoding
<p>
$B8=:_$N(B buffer $B$N(B <var>start</var> $B$+$i(B <var>end</var> $B$^$G$N(B region $B$r(B
<var>encoding</var> $B$r;H$C$FI|9f2=$7$^$9!#(B
</defun>
<defun name="mime-decode-string">
<args> string encoding
<p>
<var>string</var> $B$r(B <var>encoding</var> $B$H$7$FI|9f$7$?7k2L$rJV$9!#(B
</defun>
<defun name="mime-insert-encoded-file">
<args> filename encoding
<p>
<var>ENCODING</var> format $B$GId9f2=$5$l$?(B file <var>FILENAME</var> $B$r(B
$BA^F~$9$k!#(B
</defun>
<defun name="mime-write-decoded-region">
<args> start end filename encoding
<p>
<var>encoding</var> $B$GId9f2=$5$l$?8=:_$N(B region $B$rI|9f2=$7$F(B
<var>filename</var>$B$K=q$-9~$_$^$9!#(B
<p>
<var>start<var> $B$H(B <var>end</var> $B$O(B buffer $B$N0LCV$G$9!#(B
</defun>
<h2> $BB>$N(B utility
<node> Encoding information
<p>
<defun name="mime-encoding-list">
<opts> SERVICE
<p>
Content-Transfer-Encoding $B$N(B list $B$rJV$7$^$9!#(B
<p>
<var>service</var> $B$,;XDj$5$l$F$$$k$H!"$=$l$KBP$9$k(B
Content-Transfer-Encoding $B$rJV$7$^$9!#(B
</defun>
<defun name="mime-encoding-alist">
<opts> SERVICE
<p>
$BJd40$N$?$a$N(B Content-Transfer-Encoding $B$NI=$rJV$7$^$9!#(B
<p>
<var>service</var> $B$,;XDj$5$l$F$$$k>l9g$O$=$l$KBP$9$k(B
Content-Transfer-Encoding $B$N(B list $B$rJV$7$^$9!#(B
</defun>
<h2> $BId9f2=(B/$BI|9f2=(B module $B$N=q$-J}(B
<node> mel-backend
<p>
<defmacro name="mel-define-method">
<args> name args <rest> body
<p>
<var>name</var> $B$r(B (nth 1 (car (last <var>args</var>))) backend $B$N(B
method $B4X?t$H$7$FDj5A$7$^$9!#(B
<p>
<var>args</var> $B$O(B lambda $B$N0z?t(B list $B$H;w$F$$$^$9$,!"(B(car (last
<var>args</var>)) $B$O;XDj$5$l$?(B parameter $B$G$"$kI,MW$,$"$j$^$9!#(B(car
(car (last <var>args</var>))) $B$OJQ?t$NL>A0$G!"(B(nth 1 (car (last
<var>args</var>))) $B$O(B backend $B$NL>A0(B (encoding) $B$G$9!#(B
<p>
$BNc(B:
<p>
<lisp>
(mel-define-method mime-write-decoded-region (start end filename
(nil "base64"))
"Decode and write current region encoded by base64 into FILENAME.
START and END are buffer positions."
(interactive
(list (region-beginning) (region-end)
(read-file-name "Write decoded region to file: ")))
(let ((str (buffer-substring start end)))
(with-temp-buffer
(insert (decode-base64-string str))
(write-region-as-binary (point-min) (point-max) filename)
)))
</lisp>
</defmacro>
<defmacro name="mel-define-method-function">
<args> spec function
<p>
<var>spec</var> $B$N4X?tDj5A$r(B <var>function</var> $B$K@_Dj$7$^$9!#(B
<p>
<var>spec</var> $B$N:G=i$NMWAG$O(B service $B$G$9!#(B
<p>
<var>args</var> $B$N;D$j$O(B lambda $B$N0z?t(B list $B;w$F$$$^$9$,!"(B(car (last
<var>args</var>)) $B$O;XDj$5$l$?(B parameter $B$G$"$kI,MW$,$"$j$^$9!#(B(car
(car (last <var>args</var>))) $B$OJQ?t$NL>A0$G!"(B(nth 1 (car (last
<var>args</var>))) $B$O(B backend $B$NL>A0(B (encoding) $B$G$9!#(B
<p>
$BNc(B:
<p>
<lisp>
(mel-define-method-function (mime-encode-string string (nil "base64"))
'encode-base64-string)
</lisp>
</defmacro>
<h2> $BId9f2=(B/$BI|9f2=(B service $B$rDI2C$9$kJ}K!(B
<node> generic function for mel-backend
<p>
<defmacro name="mel-define-service">
<args> name
<opts> args doc-string
<p>
<var>name</var> $B$r(B Content-Transfer-Encoding $B$N(B service $B$H$7$FDj5A$7$^(B
$B$9!#(B
<p>
<var>args</var> $B$,;XDj$5$l$F$$$k$H!"(B<var>name</var> $B$O(B service $B$N(B
generic function $B$H$7$FDj5A$5$l$^$9!#(B
<p>
$BNc(B:
<p>
<lisp>
(mel-define-service encoded-text-encode-string (string encoding)
"Encode STRING as encoded-text using ENCODING.
ENCODING must be string.")
</lisp>
</defmacro>
<h1> Header $B$N(B network $BI=8=(B
<node> encoded-word
<p>
encoded-word $B$O(B header $B$GHs(B <dref>ASCII</dref> $BJ8;z$rI=8=$9$k$?$a$N7A(B
$B<0$G!"(B<concept>RFC 2047</concept> $B$GDj5A$5$l$F$$$^$9!#(B
<p>
<rfc number="2047" type="Standards Track" author="K. Moore"
title="MIME (Multipurpose Internet Mail Extensions) Part
Three: Message Header Extensions for Non-ASCII Text"
date="November 1996" obsolete="1521,1522,1590">
<p>
$B$^$?!"9T57$N0-$$$3$H$@$H8@$($^$9$,!"(Bencoded-word $B$rMQ$$$:$KHs(B
<dref>ASCII</dref> $BJ8;z$r(B header $B$KF~$l$?5-;v$bB8:_$7$^$9!#(B
<p>
FLIM $B$O$3$l$i$rId9f2=!&I|9f2=$9$k5!G=$rDs6!$7$^$9!#(B
<h2> Header $B$NId9f2=!&I|9f2=(B
<node> Header encoder/decoder
<p>
<defun name="eword-decode-header">
<opts> code-conversion separator
<p>
Header $BCf$N(B encoded-word $B$rI|9f$9$k!#(B
<p>
$B$b$7(B <var>code-conversion</var> $B$,(B <code>nil</code> $B$J$i!"(Bencoded-word
$B$@$1$,I|9f$5$l$k!#$b$7!"(B<var>code-conversion</var> $B$,(B <dref>MIME
charset</dref> $B$J$i!"Hs(B ASCII bit patterns $B$O$=$N(B MIME charset $B$H$7$F(B
$BI|9f$5$l$k!#$3$l0J30$N>l9g!"Hs(B ASCII bit patterns $B$O(B
<code>default-mime-charset</code>. $B$H$7$FI|9f$5$l$k!#(B<cf node="entity
formatting">
<p>
$B$b$7(B <var>separator</var> $B$,(B <code>nil</code> $B$G$J$1$l$P!"$=$NCM$,(B
header separator $B$H$7$FMQ$$$i$l$k!#(B
</defun>
<defun name="eword-encode-header">
<opts> code-conversion
<p>
Header $B$r(B network $BI=8=$KId9f2=$9$k!#(B
<p>
$B3F(B field $B$O(B <code>mime-field-encoding-method-alist</code> $B$G;XDj$5$l(B
$B$?J}<0$GId9f2=$5$l$k!#(B
</defun>
<defvar name="mime-field-encoding-method-alist">
<p>
Field $B$rId9f2=$9$kJ}K!$r;XDj$9$kO"A[(B list$B!#3F(B element $B$O(B (FIELD
. METHOD) $B$NMM$K$J$C$F$$$k!#(B
<p>
METHOD $B$,(B <code>mime</code> $B$G$"$l$P!"(BFIELD $B$O(B MIME format $B$KId9f2=$5(B
$B$l$k(B (encoded-word)$B!#(B
<p>
METHOD $B$,(B <code>nil</code> $B$G$"$l$P!"(BFIELD $B$OId9f2=$5$l$J$$!#(B
<p>
METHOD $B$,(B MIME charset $B$G$"$l$P!"(BFIELD $B$O%M%C%H%o!<%/%3!<%I$KJQ49$7$J(B
$B$1$l$P$J$i$J$$$H$-$K(B charset $B$KId9f2=$5$l$k!#(B
<p>
$B$=$&$G$J$1$l$P!"(BFIELD $B$O%M%C%H%o!<%/%3!<%I$KJQ49$7$J$1$l$P$J$i$J$$$H$-(B
$B$K(B $BJQ?t(B <code>default-mime-charset</code> $B$GId9f2=$5$l$k(B
</defvar>
<h1> $B0lHL@_Dj(B
<node> custom
<p>
<define type="group" name="mime">
<p>
MIME $B4XO"5!G=$K4X$9$k(B group.
<p>
<code>mail</code> $B$H(B <code>news</code> $B$KB0$9$k!#(B
</define>
<h1> $BIUO?(B
<node> Appendix
<h2> $BMQ8l(B
<node> Glossary
<h3> 7bit
<node> 7bit
<p>
$B$3$3$G$O(B 0 $B$+$i(B 127 $B$N@0?t$r;X$9!#(B
<p>
0 $B$+$i(B 127 $B$N@0?t$NNs$GI=8=$G$-$k$h$&$J(B data $B$r(B ``7bit $B$N(B data'' $B$H8F(B
$B$V!#(B
<p>
$B$^$?!"(B0 $B$+$i(B 31 $B$*$h$S(B 127 $B$GI=8=$5$l$k@)8fJ8;z$H(B 32 $B$GI=8=$5$l$k6uGr(B
$B$H(B 33 $B$+$i(B 126 $B$GI=8=$5$l$k?^7AJ8;z$+$i$J$kJ8;zNs$N$3$H$r(B ``7bit $B$NJ8(B
$B;zNs(B'' $B$H8F$V!J$3$l$O(B <dref>ISO 2022</dref> $B$N!V(B7 $BC10L7O!W$HF1MM!K!#(B
<p>
$BEAE}E*$J(B Internet $B$N(B <dref>MTA</dref> $B$O(B 7bit $B$N(B data $B$rE>Aw$G$-$k$N$G!"(B
7bit $B$N(B data $B$O(B <dref>Quoted-Printable</dref> $B$d(B <dref>Base64</dref>
$B$H$$$C$?JQ49$r9T$o$J$/$F$b$=$N$^$^E>Aw$G$-$k!#(B
<p>
$B$7$+$7!"(B7bit $B$G$"$l$P$I$s$J(B data $B$G$bNI$$$H$O$$$($J$$!#$J$<$J$i!"#19T(B
$B$ND9$5$,$"$^$j$KD9$$$H!"(BMTA $B$O$=$N(B message $B$rE>Aw$9$k$3$H$,$G$-$J$$$+(B
$B$i$G$"$k!#$A$J$_$K!"(B<dref>RFC 821</dref> $B$O#19T$O2~9TJ8;z$r=|$$$F(B 998
byte $B0JFb$G$"$k$3$H$r5a$a$F$$$k!#$h$C$F!"$3$l0J>e$N9T$,4^$^$l$k2DG=@-(B
$B$N$"$k(B data, $BNc$($P!"(BPostscript $B$N(B data $B$J$I$O(B Quoted-Printable $BEy$G(B
encode$B$9$kI,MQ$,$"$k!#(B
<h3> 8bit
<node> 8bit
<p>
$B$3$3$G$O(B 0 $B$+$i(B 255 $B$N@0?t$r;X$9!#(B
<p>
0 $B$+$i(B 255 $B$N@0?t$NNs$GI=8=$G$-$k$h$&$J(B data $B$r(B ``8bit $B$N(B data'' $B$H8F(B
$B$V!#(B
<p>
$B$^$?!"(B0 $B$+$i(B 31, 127 $B$*$h$S(B 128 $B$+$i(B 159 $B$GI=8=$5$l$k@)8fJ8;z$H(B 32 $B$G(B
$BI=8=$5$l$k6uGr$H(B 33 $B$+$i(B 126 $B$H(B 160 $B$+$i(B 255 $B$GI=8=$5$l$k?^7AJ8;z$+$i(B
$B$J$kJ8;zNs$N$3$H$r(B ``8bit $B$NJ8;zNs(B'' $B$H8F$V!J$3$l$O(B <dref>ISO
2022</dref> $B$N!V(B8 $BC10L7O!W$HF1MM!K!#(B
<p>
<dref>iso-8859-1</dref> $B$d(B <dref>euc-kr</dref> $B$H$$$C$?Id9f2=J8;z=89g(B
$B$O(B 8bit $B$NJ8;zNs$G$"$k!#(B
<p>
$BEAE}E*$J(B Internet $B$N(B <dref>MTA</dref> $B$O(B <dref>7bit</dref> $B$N(B data $B$7(B
$B$+E>Aw$G$-$J$$$N$G!"$=$&$7$?(B MTA $B$r7PM3$9$k>l9g!"(B
<dref>Quoted-Printable</dref> $B$d(B <dref>Base64</dref> $B$H$$$C$?JQ49$r9T(B
$B$o$J$/$F$O$J$i$J$$!#(B
<p>
$B$7$+$7!":G6a$G$O(B 8bit $B$NJ8;zNs$r$=$N$^$^DL$9$3$H$,$G$-$k(B MTA $B$bEP>l$7(B
$B$F$-$?$N$G!"$=$N$^$^Aw$k$3$H$,$G$-$k>l9g$bA}$($F$-$?!#(B
<p>
$B$7$+$7!"(B8bit $B$G$"$l$P$I$s$J(B data $B$G$bNI$$$H$O$$$($J$$!#$J$<$J$i!"#19T(B
$B$ND9$5$,$"$^$j$KD9$$$H!"(BMTA $B$O$=$N(B message $B$rE>Aw$9$k$3$H$,$G$-$J$$$+(B
$B$i$G$"$k!#$A$J$_$K!"(B<dref>RFC 821</dref> $B$O#19T$O2~9TJ8;z$r=|$$$F(B 998
byte $B0JFb$G$"$k$3$H$r5a$a$F$$$k!#$h$C$F!"$3$l0J>e$N9T$,4^$^$l$k2DG=@-(B
$B$N$"$k(B data, $BNc$($P!"(BPostscript $B$N(B data $B$J$I$O(B Quoted-Printable $BEy$G(B
encode$B$9$kI,MQ$,$"$k!#(B
<p>
$B$^$?!"$3$&$7$?M}M3$+$i!"#19T$,(B 999 byte $B0J>e$N9T$,B8:_$9$k2DG=@-$N$"$k(B
data $B$O(B <a node="binary"><concept>binary</concept></a> $B$H8F$V$3$H$K$9(B
$B$k!#(B
<p>
$B$A$J$_$K!"(B7bit $B$GI=8=$G$-$k(B data $B$O(B 8bit $B$G$bI=8=$G$-$k!#$h$C$F!"(B
``8bit'' $B$H8@$C$?>l9g!"#19T$,(B 998 byte $B0J2<$NG$0U$N(B data $B$r;X$9$3$H$,(B
$B$"$k!#(B
<h3> ASCII
<node> ASCII
<p>
$B%"%a%j%+O"K.$G;H$o$l$kJ8;z$rId9f2=$7$?(B<dref>$BId9f2=J8;z=89g(B</dref>$B!#(B
A-Z, a-z $B$N(B Latin $BJ8;z$H?t;z!"4v$D$+$N5-9f$+$i$J$k!#(BISO 646 $B$N0l$D$G!"(B
$B8=:_$O9q:]4p=`HG(B (IRV) $B$K$J$C$F$$$k!#(B
<standard abbrev="ASCII" title-en="Coded Character Set -- 7-Bit
American Standard Code for Information Interchange"
number="ANSI X3.4" year="1986">
<h3> Base64
<node> Base64
<p>
<dref>RFC 2045</dref> $B$GDj5A$5$l$F$$$k(B <dref>MIME</dref> $B$K$*$1$k(B <a
node="binary">binary data</a> $B$N(B network $B$G$NJQ49K!$N#1$D!#(B
<p>
$B!X(B64 $B?J?t!Y$H$$$&0UL#$G!"(B3 byte $B$N(B data $B$r(B 0 $B$+$i(B 63 $B$N?t$rI=$9(B
<dref>ASCII</dref> 4 $BJ8;z$KJQ49$9$kJ}K!!#!J$b$7!"(B4 $BJ8;z$K$J$i$J$1$l$P(B
<concept>pad</concept> $B$H8F$P$l$k5M$aJ*$r$7$FD9$5$rD4@0$9$k!K(B
<p>
$B$3$N(B 65 $B<oN`$NJ8;z$O(B ASCII $B$H(B EBCDIC $B$N6&DLItJ,$+$iA*$P$l$F$*$j!"(B
Internet $B0J30$N(B network $B$r7PM3$9$k>l9g$G$b0BA4$KE>Aw$G$-$k$h$&$K@_7W$5(B
$B$l$F$$$k!#(B
<h3> binary
<node> binary
<p>
$BG$0U$N(B byte $BNs$r(B <concept>binary</concept> $B$H8F$V!#(B
<p>
<dref>8bit</dref> $B$H0[$J$k$N$O(B data $B$K9T$N9=B$$r2>Dj$7$J$$$3$H$G$"$k!#(B
<p>
$B$^$?!"9T$N9=B$$,$"$C$F$b!"(B999 byte $B0J>e$+$i$J$k9T$,$"$k>l9g$b(B binary
$B$H8F$V$3$H$K$9$k!#(B
<p>
$B$A$J$_$K!"(B<dref>7bit</dref> $B$d(B 8bit $B$GI=8=$G$-$k(B data $B$O(B binary $B$G$bI=(B
$B8=$G$-$k!#$h$C$F!"(B<concept>binary data</concept> $B$H8@$C$?>l9g!"G$0U$N(B
data $B$r;X$9$3$H$,$"$k!#(B
<h3> Coded character set$B!JId9f2=J8;z=89g!K(B, Character code$B!JJ8;zId9f!K(B
<node> Coded character set
<p>
$BJ8;z$H(B byte $BNs$H#1BP#1$KBP1~IU$1$k[#Kf$G$J$$5,B'$N=89g!#(B
<h3> media-type
<node> media-type
<p>
<dref>MIME</dref> $B$K$*$1$k(B <dref>entity</dref> $B$N<oN`!#(B
<concept>primary-type</concept> $B$H(B <concept>subtype</concept> $B$+$i$J$k!#(B
<dref>RFC 2046</dref> $B$GDj5A$5$l$F$$$k!#(B
<p>
primary-type $B$OI8=`$G$O(B
<ul>
<li><concept>text</concept>
</li>
<li><concept>image</concept>
</li>
<li><concept>audio</concept>
</li>
<li><concept>video</concept>
</li>
<li><concept>application</concept>
</li>
<li><a node="multipart"><concept>multipart</concept></a>
</li>
<li><concept>message</concept>
</ul>
<noindent>
$B$,Dj5A$5$l!"$=$l$>$l$K$O(B application/octet-stream, audio/basic,
image/jpeg, <dref>multipart/mixed</dref>, <dref>text/plain</dref>,
video/mpeg $B$J$I$N$5$^$6$^$J(B subtype $B$,Dj5A$5$l$F$$$k!#(B
<memo title="$BCm0U(B">
<p>
$B$3$3$G$O!"(Btext/plain $B$J$I$N(B type/subtype $B$NAH$r$7$P$7$P(B
<concept>primary-type/subtype</concept> $B$H=q$/!#(B
</memo>
<p>
media-type $B$O!"(BRFC 2046 $B$GDj5A$5$l$F$$$k$b$N$K2C$($F!"EPO?$9$k$3$H$b$G(B
$B$-$k!#8=:_!"EPO?$5$l$F$$$k$b$N$O(B <a
href="ftp://ftp.isi.edu/in-notes/iana/assignments/media-types">MEDIA
TYPES</a> $B$G;2>H$G$-$k!#(B
<p>
$B$^$?!"(Btype $B$b$7$/$O(B subtype $B$K!"A0$K(B `x-' $B$rIU$1$?(B
<concept>x-token</concept> $B$rMQ$$$k$3$H$K$h$j!"EPO?$5$l$F$$$J$$$b$N$r(B
$B;dE*$KMQ$$$k$3$H$b$G$-$k!#$7$+$7!"EvA3$N$3$H$J$,$i!"$3$&$7$?;dE*$J(B
media-type $B$ONJ2r$rF@$?<T$N4V$G$7$+2r<a$G$-$J$$$N$GMxMQ$K$OCm0U$9$k$3(B
$B$H!#(B
<p>
<cf node="Content-Type">
<h3> message
<node> message
<p>
$B$3$3$G$O(B mail $B$H(B news $B5-;v$NAm>N$H$7$FMQ$$$k!#(B
<h3> MIME
<node> MIME
<p>
<concept>Multipurpose Internet Mail Extensions</concept> $B$NN,$G!"(B
Internet $B$N(B mail $B$d(B news $B$G(B <a node="us-ascii">us-ascii plain text</a>
$B0J30$NJ8;z$r;H$&$?$a$N(B <dref>RFC 822</dref> $B$KBP$9$k3HD%!#(B
<p>
RFC 2045 $B$OKAF,$G<!$N$h$&$K=R$Y$F$$$k!'(B
<p>
STD 11, RFC 822 $B$O!"(BUS-ASCII message header $B$K4X$7$FHs>o$K>\:Y$K5,Dj$7(B
$B$?(B message $BI=8=(B protocol $B$rDj5A$7$F$$$k!#$7$+$7!"$=$l$OC1$K(B flat $B$J(B
US-ASCII text $B$N$_$KN1$^$j!"(Bmessage $B$NFbMF$d(B message body $B$K4X$9$k5,Dj(B
$B$O$J$5$l$F$$$J$$!#(BMultipurpose Internet Mail Extensions, $B$"$k$$$O(B MIME
$B$HAm>N$5$l$k!"$3$N0lO"$NJ8=q$O!"0J2<$N;v$r2DG=$H$9$k$?$a$K(B message $B$N(B
$B7A<0$r:FDj5A$7$?!'(B
<ol>
<li>$BJ8=q(B message body $B$K$*$1$k(B US-ASCII $B0J30$NJ8;z=89g(B
</li>
<li>$BHsJ8=q(B message body
</li>
<li>$BJ#?t$NItJ,$+$i$J$k(B message body
</li>
<li>US-ASCII $B0J30$NJ8;z=89g$+$i$J$kJ8=q(B header $B>pJs(B
</ol>
<p>
<dref>RFC 2045</dref>, <dref>RFC 2046</dref>, <a
node="encoded-word">RFC 2047</a>, <dref>RFC 2048</dref>, <dref>RFC
2049</dref> $B$GDj5A$5$l$F$$$k!#(B
<h3> MIME charset
<node> MIME charset
<p>
<dref>Content-Type</dref> $BMs$d(B <dref>encoded-word</dref> $B$N(B charset
parameter $B$GMQ$$$i$l$kEPO?$5$l$?(B<a node="Coded character set">$BId9f2=J8(B
$B;z=89g(B</a>$B!#(B
<p>
<dref>RFC 2045</dref> $B$GDj5A$5$l$F$$$k!#(B
<p>
iso-2022-jp $B$d(B euc-kr $B$O$=$N#1$D!#(B
<h3> MTA
<node> MTA
<p>
<concept>Message Transfer Agent</concept> $B$NN,$G!"(Bqmail $B$d(B sendmail $B$J(B
$B$I$N(B mail $BG[Aw(B program $B$H(B inn $B$J$I$N(B news server $B$NAm>N!#(B
<p>
<cf node="MUA">
<h3> MUA
<node> MUA
<p>
<concept>Message User Agent</concept> $B$NN,$G!"(Bmail reader $B$H(B news
reader $B$NAm>N!#(B
<p>
<cf node="MTA">
<h3> Quoted-Printable
<node> Quoted-Printable
<p>
<dref>RFC 2045</dref> $B$GDj5A$5$l$F$$$k(B <dref>MIME</dref> $B$K$*$1$k(B
<dref>binary data</dref> $B$N(B network $B$G$NJQ49K!$N#1$D!#(B
<p>
`=' $B$d@)8fJ8;z$d(B 128 $B0J>e$NJ8;z$J$I$O(B `=AF' $B$N$h$&$K(B `=' $B$N8e$KB3$/(B 16
$B?J?t$GI=8=$9$k!#$3$N$?$a!"(B<dref>ASCII</dref> $BJ8;zCf?4$N(B data $B$G$O(B
<dref>Base64</dref> $B$KHf$Y$k$H2DFI@-$,9b$/$J$k2DG=@-$,$"$k!#(B
<p>
$B$7$+$7$J$,$i!"(BEBCDIC $B$K$OB8:_$7$J$$J8;z$rMxMQ$9$k>l9g!"(BEBCDIC $B$rMxMQ$7(B
$B$F$$$k(B network $B$G$O0BA4$KE>Aw$9$k$3$H$,$G$-$:!"(BBase64 $B$KHf$Y$F0BA4@-$O(B
$BDc$$!#(B
<h3> RFC 822
<node> RFC 822
<p>
Internet mail $B$N<g$K(B <concept>message header</concept> $B$K4X$9$k7A<0$K(B
$B4X$9$kI8=`$rDj$a$F$$$k(B RFC.
<memo>
<p>
news message $B$b$3$l$K=`$8$F$$$k$N$G!"(B<concept>Internet mail</concept>
$B$H=q$/$h$j$b!"(B<concept>Internet message</concept> $B$H=q$$$?J}$,NI$$$+$b(B
$B$7$l$J$$!#(B
</memo>
<rfc number="822" type="STD 11" author="D. Crocker" title="Standard
for the Format of ARPA Internet Text Messages"
date="August 1982">
<h3> RFC 1036
<node> RFC 1036
<p>
USENET $B$G$N(B message $B$N7A<0$rDj$a$?(B RFC. <dref>RFC 822</dref> $B$N(B
subset $B$K$J$C$F$$$k!#(BInternet $B$NI8=`$G$O$J$$$,!"(BUSENET $B0J30$N(B netnews
$B$G$b$3$l$K=`$8$F$$$k$b$N$,B?$$!#(B
<rfc name="USENET" number="1036" author="M. Horton and R. Adams"
title="Standard for Interchange of USENET Messages"
date="December 1987" obsolete="850">
<h3> RFC 2045
<node> RFC 2045
<p>
<rfc number="2045" type="Standards Track" author="N. Freed and
N. Borenstein" title="Multipurpose Internet Mail
Extensions (MIME) Part One: Format of Internet Message
Bodies" date="November 1996" obsolete="1521, 1522,
1590">
<h3> RFC 2046
<node> RFC 2046
<p>
<rfc number="2046" type="Standards Track" author="N. Freed and
N. Borenstein" title="Multipurpose Internet Mail
Extensions (MIME) Part Two: Media Types"
date="November 1996" obsolete="1521, 1522, 1590">
<h3> RFC 2048
<node> RFC 2048
<p>
<rfc number="2048" type="Standards Track" author="N. Freed, J. Klensin
and J. Postel" title="Multipurpose Internet Mail
Extensions (MIME) Part Four: Registration Procedures"
date="November 1996" obsolete="1521, 1522, 1590">
<h3> RFC 2049
<node> RFC 2049
<p>
<rfc number="2049" type="Standards Track" author="N. Freed and
N. Borenstein" title="Multipurpose Internet Mail
Extensions (MIME) Part Five: Conformance Criteria and
Examples" date="November 1996" obsolete="1521, 1522,
1590">
<h3> plain text
<node> plain text
<p>
$B=qBN$dAHHG$K4X$9$k>pJs$r;}$?$J$$(B<a node="Coded character set">$BJ8;zId9f(B
</a>$B$N$_$GI=8=$5$l$k(B text $B>pJs!#(B<cf node="text/plain">
<h3> us-ascii
<node> us-ascii
<p>
$B%"%a%j%+O"K.$J$I$G;H$o$l$k1Q8l$J$I$rI=8=$9$k$?$a$N(B <dref>MIME
charset</dref> $B$N#1$D!#(B
<p>
<dref>ASCII</dref> $B$N$_$+$i$J$j(B ISO 2022 $B$K$h$kId9f3HD%$O5v$5$l$J$$!#(B
<p>
Internet message $B$K$*$1$kI8=`$N(B<a node="Coded character set">$BId9f2=J8(B
$B;z=89g(B</a>$B$G$"$j!"L@<(E*$K(B MIME charset $B$,<($5$l$J$$>l9g$O86B'$H$7$F(B
<concept>us-ascii</concept> $B$,;H$o$l$k!#(B
<p>
$B$^$?!"(B<dref>RFC 822</dref> $B$K$*$1$k(B <concept>ASCII</concept>
$B$O(B us-ascii $B$G$"$k!#(B
<h2> bug $BJs9p$N;EJ}(B
<node> Bug report
<p>
FLIM $B$N%P%0$r8+$D$1$?$i!"0J2<$N(B address $B$K(B mail $B$rAw$C$F$/$@$5$$!'(B
<ul>
<li> $B1Q8l(B <mail>emacs-mime-en@m17n.org</mail>
<li> $BF|K\8l(B <mail>emacs-mime-ja@m17n.org</mail>
</ul>
<p>
$BC"$7!"$"$^$j$K$b8E$$HG$K4X$9$kJs9p$O4?7^$5$l$^$;$s!#8E$$HG$N(B bug $B$O!"(B
$B?7$7$$HG$G$O<#$C$F$$$k$+$b$7$l$^$;$s!#$^$:!":G?7HG$G3NG'$7$F$_$^$7$g$&!#(B
<p>
$B$=$l$+$i!"E,@Z$JJs9p$r$7$^$7$g$&!#C1$K!V$&$^$/F0$+$J$$!W$H8@$o$l$F$b$I(B
$B$&$$$&>u67$J$N$+$O$5$C$Q$jH=$j$^$;$s!#:GDc8B!"(BOS, emacs, APEL, FLIM,
SEMI, $B;H$C$F$$$k(B MUA $B$N<oN`$*$h$SHG!"@_Dj$r=q$/I,MW$,$"$j$^$9!#$^$?!"(B
error $B$,5/$C$F$$$k>l9g$O(B backtrace $B$rAw$k$3$H$b=EMW$G$9!#(B<cf
file="emacs" node="Bugs">
<p>
$B$^$?!"(Bbug $B$OBgDqJ#?t$N?M$,Ax6x$9$k$b$N$G$9!J$=$&$G$J$1$l$P!"(Bbug $B$G$O$J(B
$B$$2DG=@-$,$"$j$^$9!K!#$@$+$i!":n<T$KD>@\(B mail $B$rAw$k$H:n<T$OF1$8(B mail
$B$r2?DL$b=q$/1)L\$K$J$j$^$9!#$@$+$i!"I,$:(B bug $BJs9p$O>e5-$N(B address $B$KAw$C(B
$B$F$/$@$5$$!#(B
<p>
EMACS-MIME ML $B$G$O(B FLIM $B$N%P%0>pJs$N8r49$d:G?7HG$NG[I[!"(BFLIM $B$N2~NI$K(B
$B4X$9$k5DO@$r9T$J$C$F$$$^$9!#(BEMACS-MIME ML $B$K;22C$7$?$$J}$O(B
<ul>
<li> $B1Q8l(B <mail>emacs-mime-en-ctl@m17n.org</mail>
<li> $BF|K\8l(B <mail>emacs-mime-ja-ctl@m17n.org</mail>
</ul>
<noindent>
$B$K6u$N(B mail $B$rAw$C$F2<$5$$!#(B
<h2> CVS $B$K$h$k3+H/(B
<node> CVS
<p>
FLIM $B$N(B file $B$O(B CVS $B$r;H$C$F4IM}$5$l$F$$$^$9!#$3$N$?$a!"0J2<$NJ}K!$G:G(B
$B?7$N(B FLIM $B$rF~<j$9$k$3$H$,$G$-$^$9!'(B
<verb>
(0) cvs login
% cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/root login
CVS password: [CR] # NULL string
(1) checkout
% cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/root \
checkout [-r TAG] flim
</verb>
<p>
CVS $B$rMQ$$$?3+H/$K;22C$7$?$$J}$O(B
<ul>
<li> <mail>cvs@cvs.m17n.org</mail>
</ul>
<noindent>
$B$^$G!"%"%+%&%s%HL>$H(B ssh $B$N8x3+80$rAw$C$F$/$@$5$$!#(Bssh $B7PM3$G$O!"(B
cvsroot $B$O(B :ext:cvs@cvs.m17n.org:/cvs/root $B$H$J$j$^$9!#(B
<h2> $BNr;K(B
<node> History
<p>
FLIM $B$N(B code $B$N:G8E$NItJ,$O(B $B1]JB(B $B;LCR(B $B;a$,=q$$$?(B <file>mime.el</file>
$B$K5/8;$7$^$9!#$3$N>.$5$J(B program $B$O(B Nemacs $B$GF0:n$9$k(B iso-2022-jp $B$N(B
B-encoding $B@lMQ$N(B encoded-word $B$NI|9f2=%W%m%0%i%`$G$7$?!#(B
<p>
$B$=$N8e!"<i2,(B $BCNI'(B $B$O(B <file>mime.el</file> $B$r85$K(B
<file>tiny-mime.el</file> $B$H$$$&%W%m%0%i%`$r=q$-$^$9!#$3$l$O!"(BNemacs
$B$H(B Mule $B$GF0:n$9$k(B encoded-word $B$NId9f2=!&I|9f2=%W%m%0%i%`$G$7$?!#(B
<file>tiny-mime.el</file> $B$O(B B-encoding $B$@$1$G$J$/(B Q-encoding $B$b(B
support $B$7!"$^$?!"(BMULE $B$G07$&$3$H$,$G$-$k$5$^$6$^$J(B <dref>MIME
charset</dref> $B$rF1;~$K;H$&$3$H$,$G$-$^$7$?!#$3$N;~!"(BNemacs $B$H(B Mule $B$N(B
$BAPJ}$r(B support $B$9$k$?$a$KMQ$$$i$l$?%F%/%K%C%/$O8e$K(B emu package $B$K$^$H(B
$B$a$i$l$^$9!#(B
<p>
$B$3$N:"!"<i2,(B $BCNI'(B $B$O(B <file>tiny-mime.el</file> $B$r$5$^$6$^$J(B MUA $B$G;H$&(B
$B$?$a$N@_Dj=8$bG[I[$7$F$$$^$7$?$,!"$=$l$i$O8e$K(B
<file>tiny-mime.el</file> $B$H$H$b$K#1$D$N(B package $B$K$^$H$a$i$l!"(Btm $B$H$$(B
$B$&L>A0$GG[I[$5$l$^$9!#(B
<p>
$B<i2,(B $BCNI'(B $B$O$d$,$F!"(BMIME message $B$r1\Mw$9$k$?$a$N%W%m%0%i%`$G$"$k(B
<file>tm-body.el</file> $B$r=q$-$^$9!#$3$l$O!"$9$0$K(B
<file>tm-view.el</file> $B$H$$$&L>A0$KJQ$o$j$^$7$?$,!"$d$,$F!"$3$l$,(B
<file>tiny-mime.el</file> $B$KBe$o$C$F!"(Btm $B$NCf3K$H$J$j$^$9!#(B
<p>
<file>tm-view.el</file> $B$OEvA3!"(BContent-Transfer-Encoding $B$r07$&I,MW$,(B
$B$"$j$^$9!#$3$NL\E*$N$?$a$K!"(BMEL $B$,@0Hw$5$l$O$8$a$^$7$?!#(BBase64 $B$K4X$7(B
$B$F$O(B <file>tiny-mime.el</file> $B$N(B code $B$,0\$5$l!"$^$?!"?7$?$K(B
Quoted-Printable $B$N(B code $B$,DI2C$5$l$^$7$?!#$3$l$i$,(B
<file>mel-b.el</file> $B$H(B <file>mel-q.el</file> $B$K$J$j$^$7$?!#(B
<p>
$B$^$?!"8e$K!"<i2,(B $BCNI'(B $B$K$h$C$F(B uuencode $BMQ$N(B <file>mel-u.el</file> $B$,(B
$BDI2C$5$l!"$=$N8e$K!">.NS(B $B=$J?(B $B;a$K$h$C$F(B x-gzip64 $BMQ$N(B
<file>mel-g.el</file> $B$,DI2C$5$l$^$7$?!#(B
<p>
tm $B$G$O8e$K!"<i2,(B $BCNI'(B $B$K$h$C$F(B <file>tiny-mime.el</file> $B$N:F<BAu$,9T(B
$B$o$l!"$3$N2aDx$G!"(BSTD 11 $B$N(B parser $B$,=q$+$l$^$7$?!#$3$l$O!"8=:_$N(B
<file>std11.el</file> $B$KEv$?$j$^$9!#$^$?!"$3$N2aDx$G(B
<file>tiny-mime.el</file> $B$OI|9f2=$r9T$&(B <file>tm-ew-d.el</file> $B$HId(B
$B9f2=$r9T$&(B <file>tm-ew-e.el</file> $B$KJ,$1$i$l$^$7$?!#$3$NN><T$,8=:_$N(B
<file>eword-decode.el</file> $B$H(B <file>eword-encode.el</file> $B$N@hAD$K(B
$BEv$?$j$^$9!#(B
<p>
$B8e$K!"<i2,(B $BCNI'(B $B$i$K$h$C$F(B tm $B$NA4LL=q$-49$(:n6H$,9T$o$l!"$3$N2aDx$G!"(B
tm $B$O(B APEL, MEL, SEMI, EMH, RMAIL-MIME, Gnus-MIME $B$J$I$KJ,$1$i$l$^$7$?!#(B
$B$3$N$&$A$N(B MEL $B$,(B FLIM $B$ND>@\$N@hAD$KEv$?$j$^$9!#(B
<p>
$B8e$K!"(BAPEL $B$+$i(B <file>std11.el</file> $B$,0\$5$l!"$^$?!"(B
<file>mailcap.el</file>, <file>eword-decode.el</file> $B$*$h$S(B
<file>eword-encode.el</file> $B$,(B SEMI $B$+$i0\$5$l!"(Bpackage $B$NL>A0$,(B FLIM
$B$H$J$j$^$9!#(B
<p>
$B$3$ND>A0$+$iEDCf(B $BE/(B $B;a$,$h$j(B RFC $B$KCi<B$J<BAu$r=q$-;O$a!"$3$l$O!"8=:_!"(B
FLIM $B$N;^$G$"$k(B ``FLIM-FLAM'' $B$H$J$C$F$$$^$9!#(B
<h1> $B35G0:w0z(B
<node> Concept Index
<cindex>
<h1> $B4X?t:w0z(B
<node> Function Index
<findex>
<h1> $BJQ?t:w0z(B
<node> Variable Index
<vindex>
</body>