\documentstyle[a4j]{jarticle}
\setcounter{secnumdepth}{6}
\setcounter{tocdepth}{6}
\topsep=0.1cm
\parsep=0.1cm
\itemsep=0.0cm
\begin{document}
\title{
tm-body 説明書}
\author{
守岡 知彦\\
}
\date{
1994年7月14日}
\maketitle
\medskip

\section{install}
\medskip
\par
README に従って install を行なって下さい。
\medskip

\subsection{tiny-mime の install}
\medskip
\par
tiny-mime.el を Emacs の変数 load-path で指定された directory に
copy します。
\medskip
\medskip

\subsection{tm-body の install}
\medskip

\subsubsection{$*$.el を copy する}
\medskip
\par
tm-body.el, tl-list.el, tl-header.el を Emacs の変数 load-path で指
定された directory に copy します。
\medskip
\medskip

\subsubsection{method を copy する}
\medskip
\par
methods/ に入っている、各 Content-Type に対応する method を、自分の
環境に合わせて修正し、path の通った directory に copy します。
\medskip
\medskip

\subsubsection{decode-b.c を compile する}
\medskip
\par
Base64 decoder である decode-b.c を gcc で compile します。
\medskip
{\baselineskip=10pt
\begin{verbatim}
        % gcc -O decode-b.c -o decode-b
\end{verbatim}}
\medskip
\par
そして、出来上がった decode-b を path の通った directory に copy し
ます。
\medskip
\par
但し、他の decoder（例えば、metamail 附属の mmencode など）があれば、
method 中の decode-b をその decoder で置き換えても構いません。例えば、
decode-b $<$ を mmencode -b -u で置き換えてみて下さい。
\medskip
\medskip

\section{カスタマイズ}
\medskip
\par
.emacs に以下のようなものを入れて、各 Content-Type に対応する method
を指定することができます。
\medskip
{\baselineskip=10pt
\begin{verbatim}
----------------------------------------------------------------------
(setq mime/content-decoding-method-alist
  '(("audio/basic" . "tm-au")
    ("image/gif"   . "tm-image")
    ("image/jpeg"  . "tm-image")
    ("image/x-pic" . "tm-image")
    ("video/mpeg"  . "tm-mpeg")
    ("application/octet-stream" . "tm-file")
    ("text/x-latex" . "tm-latex")
    ))
----------------------------------------------------------------------
\end{verbatim}}
\medskip
\par
各 method は shell script で書きます。tm-body.el から渡される引数は
以下の通りです。
\medskip
~\\
\begin{center}
\begin{tabular}{|c|l|}
\hline
引数 & \multicolumn{1}{|c|}{                           値                                    }\\
\hline\hline
 \$1  & decode 前の file 名                                              \\
 \$2  & Content-Type (type/sub-type)                                     \\
 \$3  & encoding \{7bit / quoted-printable / base64 / 8bit / binary / ...\}\\
 \$4  & decoding-mode \{play / extract / print\}                           \\
 \$5  & file 名                                                          \\
\hline
\end{tabular}\\
\end{center}
\medskip
\par
また、message/partial だけは tm-body.el 自身で復元します。
\medskip
\medskip

\section{制限}
\medskip
\par
message/external-body に関しては現在のところサポートしていません。
\medskip
\par
附属の BASE64 decoder である decode-b.c はいい加減な作りなので、動か
なかったら、短いプログラムなので、意を汲んで修正して下さい。(\verb+^+\_\verb+^+;
\medskip
\par
また、metamail 附属の mmencode を使って decode しても良いでしょう。
\medskip
\par
また、Quoted-Printable の decoder は附属しませんので、mmencode を使っ
て下さい。
\end{document}
