+\e$B!X\e(Btm \e$B$K$*$1$kJ8;z\e(B code \e$B$N<h$j07$$$K$D$$$F!Y\e(B
+by \e$B<i2,\e(B \e$BCNI'\e(B
+1996\e$BG/\e(B7\e$B7n\e(B18\e$BF|\e(B
+
+* charset \e$B<h$j07$$$K4X$9$k4pK\86B'\e(B
+
+ tm \e$B$G$O86B'$H$7$F\e(B MIME \e$B$GDj$a$i$l$?\e(B charset \e$B5!9=$K4p$E$$$FJ8;z\e(B code
+\e$B$r<h$j07$&!#$3$l$r<B8=$9$k$?$a$K!"\e(Bmessage \e$B$rI=<($9$k$?$a$N\e(B buffer
+(preview buffer; cooked buffer) \e$B$NB>$K@8$N!JB($A!"\e(Bcode \e$BJQ49$5$l$F$*$i\e(B
+\e$B$:\e(B network code \e$B$N$^$^$N!K\e(Bmessage \e$B$,F~$C$?\e(B buffer (original article
+buffer, raw buffer) \e$B$rMQ$$$k$3$H$H$9$k!#$3$N>r7o$,K~$?$5$l$l$P!"\e(Bbase64
+\e$B$d\e(B quoted-printable \e$BEy$N\e(B encode \e$B$r9T$J$C$F$$$J$$>l9g$G$b!"#1$D$N\e(B
+message \e$B$KJ#?t$NJ8;z\e(B code \e$B$r:.:_$5$;$k$3$H$,$G$-$k!#\e(B
+
+ \e$B$7$+$7$J$,$i!"8=<B$K$O4v$D$+$NLdBj$,B8:_$9$k!##1$D$OHs\e(B MIME message
+\e$B$N<h$j07$$$G$"$j!"$b$&0l$D$O>e5-$N$h$&$JJ}K!$r$H$k$3$H$,:$Fq$J\e(B MUA \e$B$r\e(B
+\e$BMxMQ$9$k>l9g$G$"$k!#Hs\e(B MIME message \e$B$KBP$7$F$O!"\e(Btm \e$B$O\e(B default \e$B$N\e(B
+charset \e$B$r2>Dj$9$k$3$H$GBP=h$7$F$$$k!#8e<T$NLdBj$K4X$7$F$O\e(B MUA \e$BKh$K\e(B
+code \e$BJQ49\e(B program \e$B$r@_Dj$7!"\e(Braw buffer \e$B$r:n@.$9$k$3$H$,:$Fq$J\e(B MUA \e$B$N>l\e(B
+\e$B9g!"\e(B7bit, 8bit, binary \e$B$N$h$&$J\e(B encode \e$B$5$l$F$$$J$$\e(B message \e$B$N\e(B charset
+\e$B$K$h$k\e(B code \e$BJQ49$r$d$a$k$h$&$K$9$k$3$H$GBP=h$7$F$$$k!#\e(B
+
+ \e$B0J2<!"<B:]$N5!9=$K4X$7$F@bL@$9$k!#\e(B
+
+
+* \e$BJ8;z\e(B code \e$B$N<h$j07$$$K4X$9$k\e(B layer \e$B9=B$\e(B
+
+ tm \e$B$O\e(B
+
+[[E
+ (4) user interface layer (tm)
+ (3) non-interactive MIME feature layer (tm)
+ (2) MIME encoding layer (MEL) / utility function layer (tl)
+ (1) emu API layer
+ (0) (API of emacs variants)
+]]E
+
+\e$B$H$$$AX9=B$$K$J$C$F$$$k$,!"J8;z\e(B code \e$B$N<h$j07$$$bF1MM$G$"$k!#\e(B
+
+ \e$BBh#1AX$G$"$k\e(B emu API \e$B$GA4$F$N\e(B emacs variant \e$B$GMxMQ2DG=$J4pK\4X?t$rDs\e(B
+\e$B6!$7!"Bh#3AX$G\e(B tm-view \e$B$GMxMQ$9$k$?$a$N4pK\E*$J5!G=$r<B8=$7!"Bh#4AX$G\e(B
+\e$B$=$N3&LL$rDj5A$9$k!#\e(B
+
+
+* \e$BJ8;z\e(B code \e$B$K4X$9$k\e(B emu API \e$B$N5!G=\e(B
+
+ EMACS \e$B$K$O!"85Mh!"J8;z$H$$$&35G0$OB8:_$7$J$+$C$?!#$h$C$F!"$=$l$r07$&\e(B
+\e$B$?$a$N5!G=$OB8:_$7$J$+$C$?!#\e(B
+
+ emacs \e$B$N@$3&$KJ8;z\e(B code \e$B$H$$$&35G0$r;}$A9~$s$@$N$O\e(B NEmacs \e$B$G$"$k!JB?\e(B
+\e$BJ,\e(B(^_^;\e$B!K!#\e(BNEmacs \e$B$O\e(B `JIS', `EUC', `Shift JIS'\e$B!J$*$h$SL5JQ49!K$H$$$\e(B
+\e$B<oN`$N!X4A;z\e(B code\e$B!Y$rF3F~$7$?!#$=$7$F!"$3$l$r?tCM$GI=8=$7$?!#\e(B
+
+ NEmacs \e$B$OF|K\8l!J$N\e(B subset\e$B!K$7$+07$&I,MW$,$J$+$C$?$N$G9b!9#3<oN`$NJ8\e(B
+\e$B;z\e(B code \e$B$,;H$($l$P==J,$G$"$C$?$,!"$3$l$rB?8@8l2=$7$?\e(B MULE \e$B$G$O$h$jB??t\e(B
+\e$B$NJ8;z\e(B code \e$B$,07$&$3$H$,MW5a$5$l!"$^$?!"\e(Buser \e$B$,J8;z\e(B code \e$B$rDj5A$G$-$k\e(B
+\e$B$3$H$bI,MW$G$"$C$?!#$3$N$?$a!"?tCM$G$O$J$/!"@hF,$HKvHx$K\e(B `*' \e$B$rIU$1$?\e(B
+\e$B<+8JI>2A7A<0$NDj?t$GI=8=$5$l$k\e(B coding-system \e$B$H$$$&35G0$,F3F~$5$l$?!#\e(B
+
+ XEmacs \e$B$K\e(B mule \e$B5!G=$rF3F~$7$h$&$H$7$??MC#$O<+8JI>2A7A<0$NDj?t$NBe$o\e(B
+\e$B$j$K\e(B coding-system \e$B$rI=$9?7$?$J7?$rF3F~$9$k$3$H$K$7$?!#$^$?!"$3$N7?$K\e(B
+\e$BBP1~$9$kL>A0$r\e(B symbol \e$B$GM?$($?!#$3$N$?$a!"\e(Bcoding-system \e$B$rI=$9BgNL$NDj\e(B
+\e$B?t$O0lA]$5$l$?!#\e(B
+
+ \e$B$3$N$h$&$K!"8=B8$9$k\e(B emacs variants \e$B$N4V$G$OJ8;z\e(B code \e$B$NI=8=K!$O$5$^\e(B
+\e$B$6$^$G$"$k!#$b$H$b$H!"\e(Bemu \e$B$O$3$NJ,Ln$G$b$C$H$b5!G=$N9b$$\e(B MULE \e$B$r$*<jK\\e(B
+\e$B$K$3$l$N5!G=$r\e(B emulate \e$B$9$k4X?t$r3F\e(B emacs variant \e$B$KBP$7$FDj5A$9$kJ}K!\e(B
+\e$B$r:N$C$?$,!"\e(BMULE \e$B$r85$K\e(B EMACS/MULE \e$BE}9gHG$d\e(B XEmacs/mule \e$B$,@8$^$l$k$K=>\e(B
+\e$B$$!"\e(Bcoding-system \e$B5!G=$r$=$N$^$^;H$&$N$OF@:v$G$O$J$$$HH=CG$9$k$K;j$C$?!#\e(B
+\e$BBe$o$j$K$h$jCj>]EY$N9b$$\e(B MIME charset \e$B$K4X$9$k\e(B API \e$B$rMQ0U$9$k$3$H$K$7\e(B
+\e$B$?!#\e(B
+
+ MIME charset \e$B$OJ8;z\e(B code \e$B$rI=$9$b$N$G$"$j!"\e(BMULE \e$B$G$$$&$H$3$m$N\e(B
+leading-char \e$B$d\e(B EMACS/MULE \e$B$d\e(B XEmacs/mule \e$B$G$$$&$H$3$m$N\e(B charset \e$B$KAj\e(B
+\e$BEv$9$k$b$N$G$O$J$/!"\e(Bmule \e$B$N\e(B coding-system \e$B$KAjEv$9$k5!G=$G$"$k!#<B:]!"\e(B
+mule \e$B$N\e(B coding-system \e$B$NL>A0$H\e(B MIME charset \e$B$NL>A0$O6&DL$9$k$b$N$b>/$J\e(B
+\e$B$/$J$$!#\e(B
+
+ MIME charset \e$B$NI=8=$N;EJ}$H$7$F!"\e(Bemu API \e$B$G$O\e(B XEmacs/mule \e$B$HF1MM!"\e(B
+symbol \e$B$rMQ$$$k$3$H$K$7$?!#\e(BMULE \e$B$N$h$&$JJQ?t$r;H$&$HB+G{$K4X$9$k\e(B check
+\e$B$,I,MW$G$"$k$,!"\e(Bsymbol \e$B$G$O$3$N$h$&$J\e(B check \e$B$OITMW$G$"$k!#$^$?!">-MhE*\e(B
+\e$B$K!"\e(BXEmacs/mule \e$B$NJ}K!$KE}9g$5$l$k$3$H$r4|BT$9$k0UL#$b$"$k!#<B:]!"\e(B
+XEmacs/mule \e$B$H\e(B emu API \e$B$N4V$N\e(B gap \e$B$O>/$J$/!">-Mh!"A4$F$N\e(B MIME charset
+\e$B$,\e(B XEmacs/mule \e$B$N\e(B coding-system \e$B$H$7$FDj5A$5$l$l$P!"\e(Bemu \e$B$H$7$F$3$l$rMQ\e(B
+\e$B0U$9$kI,MW$O$J$/$J$k$@$m$&!#\e(B
+
+ \e$B$5$F!"0J2<$G$O<B:]$N5!G=$r2r@b$9$k!#\e(B
+
+[\e$BJQ?t\e(B] charsets-mime-charset-alist
+
+ Key \e$BIt$K\e(B charset \e$B$N\e(B list, value \e$BIt$K\e(B mime-charset \e$B$r$H$kO"A[%j\e(B
+ \e$B%9%H!#4X?t\e(B charsets-to-mime-charset \e$B$d4X?t\e(B
+ detect-mime-charset-region \e$B$,$3$NJQ?t$r;2>H$9$k!#\e(B
+
+[\e$BJQ?t\e(B] default-mime-charset
+
+ \e$BJQ?t\e(B charsets-mime-charset-alist \e$B$GDj5A$5$l$F$$$J$$\e(B charset \e$B$N\e(B
+ list \e$B$KBP$7$F$D$1$k\e(B MIME charset \e$B$r<($9!#4X?t\e(B
+ charsets-to-mime-charset \e$B$d4X?t\e(B detect-mime-charset-region \e$B$,\e(B
+ \e$B$3$NJQ?t$r;2>H$9$k!#\e(B
+
+[\e$B4X?t\e(B] charsets-to-mime-charset CHARSETS
+
+ charset \e$B$N\e(B list `CHARSETS' \e$B$KBP1~$9$k\e(B MIME charset \e$B$rJV$9!#\e(B
+
+[\e$B4X?t\e(B] detect-mime-charset-region start end
+
+ `START' \e$B$H\e(B `END' \e$B$G0O$^$l$?NN0h$KBP1~$9$k\e(B MIME charset \e$B$rJV$9!#\e(B
+
+[\e$B4X?t\e(B] encode-mime-charset-region START END CHARSET
+
+ `START' \e$B$H\e(B `END' \e$B$G0O$^$l$?NN0h$r\e(B MIME charset `CHARSET' \e$B$G\e(B
+ encode \e$B$9$k!#\e(B
+
+[\e$B4X?t\e(B] encode-mime-charset-string STRING CHARSET
+
+ \e$BJ8;zNs\e(B `STRING' \e$B$r\e(B MIME charset `CHARSET' \e$B$G\e(B encode \e$B$9$k!#\e(B
+
+[\e$B4X?t\e(B] decode-mime-charset-string STRING CHARSET
+
+ \e$BJ8;zNs\e(B `STRING' \e$B$r\e(B MIME charset `CHARSET' \e$B$G\e(B decode \e$B$9$k!#\e(B
+
+
+* \e$BJ8;z\e(B code \e$B$K4X$9$k\e(B tm \e$B$N<BAu\e(B
+
+ \e$B$b$7!"AGD>$K\e(B charset \e$B$r<B8=$9$k$@$1$J$i\e(B emu API \e$B$r$=$N$^$^;H$($PNI$$\e(B
+\e$B$N$@$,!"<B:]$K$O\e(B VM \e$B$d\e(B RMAIL\e$B!J$*$h$S@N$N\e(B GNUS, Gnus\e$B!K$H$$$C$?\e(B raw
+buffer \e$B$r<B8=$7$K$/$$\e(B MUA \e$B$G$O\e(B charset \e$B$KBP1~$9$k$3$H$,:$Fq$G$"$k!#$3\e(B
+\e$B$N$?$a!"\e(Btm-view \e$B$O$3$N$h$&$J\e(B MUA \e$B$G$O=c?h$J0UL#$G$N\e(B raw buffer \e$B$N<B8=\e(B
+\e$B$rD|$a\e(B original article buffer \e$BCf$K4{$K\e(B charset \e$B$K0M$i$:$K\e(B code \e$BJQ49$7\e(B
+\e$B$?\e(B message \e$B$rF~$l$k$3$H$rG'$a$F$$$k!#\e(B
+
+ \e$B$h$C$F!"0J2<$N#2<oN`$N\e(B code \e$BJQ494X?t$r;H$$J,$1$kI,MW$,$"$k!#\e(B
+
+[\e$B4X?t\e(B] mime-charset/decode-buffer charset &optional encoding
+
+ current buffer \e$B$r\e(B MIME charset `charset' \e$B$GFbIt\e(B code \e$B$KJQ49$9\e(B
+ \e$B$k!#$3$N4X?t$O\e(B `encoding' \e$B$K0M$i$:I,$:\e(B code \e$BJQ49$r9T$J$&!#\e(B
+
+[\e$B4X?t\e(B] mime-charset/maybe-decode-buffer charset &optional encoding
+
+ `encoding' \e$B$,\e(B nil, "7bit", "8bit", "binary" \e$B0J30$N;~!"B($A!"\e(B
+ ASCII printable \e$B$J\e(B encode \e$B$,;\$5$l$F$$$k;~$N$_!"<B:]$K!"\e(B
+ current buffer \e$B$r\e(B MIME charset `charset' \e$B$GFbIt\e(B code \e$B$KJQ49$9\e(B
+ \e$B$k!#$=$l0J30$N;~$O!"2?$b$7$J$$!#\e(B
+
+
+* \e$BJ8;z\e(B code \e$B$K4X$9$k\e(B tm \e$B$N3&LL\e(B
+
+ MUA \e$B$K$h$C$FJ8;z\e(B code \e$B$r;H$$J,$1$k$?$a$K\e(B tm \e$B$O$3$3$G=R$Y$k$h$&$J3&LL\e(B
+\e$B$rDs6!$9$k!#\e(B
+
+[\e$BJQ?t\e(B] mime-viewer/code-converter-alist
+
+ \e$B$3$NJQ?t$O\e(B key \e$BIt$r\e(B major-mode, value \e$BIt$r\e(B code \e$BJQ494X?t$H$9$k\e(B
+ \e$BO"A[\e(B list \e$B$G$"$k!#$3$l$rMQ$$$F3F\e(B MUA \e$BKh$N\e(B code \e$BJQ494X?t$r@_Dj\e(B
+ \e$B$9$k!#\e(Bcode \e$BJQ494X?t$OA4@a$G=R$Y$?<BAu$rMQ$$$k$3$H!#\e(B
+
+[\e$BJQ?t\e(B] mime::article/code-converter
+
+ method \e$B$GMQ$$$i$l$k\e(B code \e$BJQ494X?t$r;XDj$9$k$?$a$N\e(B original
+ article buffer \e$B$N\e(B buffer local \e$BJQ?t$G$"$k!#JQ?t\e(B
+ `mime-viewer/code-converter-alist' \e$B$h$j$b9b$$M%@hEY$G;2>H$5$l\e(B
+ \e$B$k!#\e(B
+
+[\e$B4X?t\e(B] mime-preview/decode-text-buffer charset encoding
+
+ MIME charset `charset', MIME encoding `encoding' \e$B$GId9f2=$5$l\e(B
+ \e$B$?\e(B current buffer \e$B$r\e(B decode \e$B$9$k!#\e(Bcode \e$BJQ49$OJQ?t\e(B
+ `mime::article/code-converter' \e$B$*$h$S\e(B
+ `mime-viewer/code-converter-alist' \e$B$r;2>H$7$FF@$i$l$?4X?t$K$h$C\e(B
+ \e$B$F<B9T$5$l$k!#\e(B
+
+
+* \e$BJ8;z\e(B code \e$B4X78$N4X?t$N;H$$J}$N;X?K\e(B
+
+ tm-view \e$B$N\e(B method \e$B$,$"$k\e(B content \e$B$r$"$k\e(B charset, encoding \e$B$K=>$C$F\e(B
+decode \e$B$9$k>l9g$O4X?t\e(B mime-preview/decode-text-buffer \e$B$rMQ$$$k$3$H$H$9\e(B
+\e$B$k!#\e(B
+
+ tm-view \e$B$N\e(B method \e$B$K$*$$$F!"$"$k\e(B content \e$B$KBP$7$F:F5"E*$K\e(B preview
+buffer \e$B$r:n@.$9$k$h$&$J>l9g$G!"JQ?t\e(B mime::article/code-converter \e$B$r@_\e(B
+\e$BDj$9$kI,MW$,$"$k>l9g$O!"4X?t\e(B mime-charset/decode-buffer \e$B$*$h$S\e(B
+mime-charset/maybe-decode-buffer \e$B$rMQ$$$k$3$H$H$9$k!#\e(B
+
+ \e$B$=$l0J30$N>l9g$K$*$$$F!"<B:]$K\e(B code \e$BJQ49$r9T$J$&$h$&$J>l9g$O!"\e(Bemu
+API \e$B$N5!G=$rMQ$$$k$3$H$H$9$k!#\e(B