tm 7.67.
[elisp/tm.git] / tiny-mime-eng.tex
1 \documentstyle[a4j]{jarticle}
2 \setcounter{secnumdepth}{6}
3 \setcounter{tocdepth}{6}
4 \topsep=0.1cm
5 \parsep=0.1cm
6 \itemsep=0.0cm
7 \begin{document}
8 \title{tiny-mime manual (English Version)}
9 \author{Morioka Tomohiko}
10 \date{1994/8/4}
11 \maketitle
12 \medskip
13
14 \section{Overview}
15 \medskip
16 \par
17 tiny-mime is a multilingual MIME style message header
18 encoder/decoder based on RFC 1522 for Mule, NEmacs, and NEpoch. I
19 modified Mr.Enami's ISO-2022-JP Base64 MIME header decoder and make
20 it. Mr.Enami's program can decode only ISO-2022-JP Base64 header. But,
21 current tiny-mime has following functions:
22 \medskip
23 \begin{itemize}
24 \item unfolding at decoding
25 \item encoding/decoding multilingual character sets, such as,
26 ISO-2022-JP, ISO-2022-JP-2, ISO-2022-CN, ISO-2022-KR, ISO-8859-*,
27 US-ASCII, EUC-KR
28 \item B and Q-encoding
29 \medskip
30 \medskip
31 \end{itemize}
32
33 \section{character set and encoding}
34 \medskip
35
36 \subsection{Mule}
37 \medskip
38 \par
39 Mule can use multilingual text, so in Mule, tiny-mime supports
40 ISO-2022-JP, ISO-2022-JP-2, US-ASCII, ISO-8859-1..9, ISO-2022-CN,
41 ISO-2022-KR, EUC-KR, et al.
42 \medskip
43 \par
44 Additionally, you can add or change encoding/decoding for character
45 sets by function mime/set-charset-and-encoding.
46 \medskip
47
48 \subsection{NEmacs and NEpoch}
49 \medskip
50 \par
51 NEmacs can use Japanese and English only, so in NEmacs, tiny-mime
52 supports encoding/decoding only ISO-2022-JP and US-ASCII.
53 \medskip
54 \par
55 And decoding ISO-8859-* encoded-words if they includes only ASCII.
56 \medskip
57 \medskip
58
59 \section{How to use tiny-mime.el (simple way)}
60 \medskip
61
62 \subsection{decoding}
63 \medskip
64 {\baselineskip=10pt
65 \begin{verbatim}
66   Please load tiny-mime.el, and do following command on the buffer
67 which you want to decode.
68 \end{verbatim}}
69 \medskip
70 {\list{}{\leftmargin=8ex}\item[]
71 \par
72 M-x mime/decode-message-header
73 \endlist}
74 \medskip
75 {\baselineskip=10pt
76 \begin{verbatim}
77   And you can decode region by
78 \end{verbatim}}
79 \medskip
80 {\baselineskip=10pt
81 \begin{verbatim}
82         M-x mime/decode-region
83 \end{verbatim}}
84 \medskip
85
86 \subsection{encoding}
87 \medskip
88 {\baselineskip=10pt
89 \begin{verbatim}
90   Please load tiny-mime.el, and do following command on the buffer
91 which you want to encode.
92 \end{verbatim}}
93 \medskip
94 {\list{}{\leftmargin=8ex}\item[]
95 \par
96 M-x mime/encode-message-header
97 \endlist}
98 \medskip
99 \medskip
100 \medskip
101
102 \section{variables}
103 \medskip
104
105 \subsection{mime/no-encoding-header-fields}
106 \medskip
107 \par
108 You can specify list of fields which you don't want to
109 encode. Default value is ("X-Nsubject").
110 \medskip
111 \begin{description}
112 \item[example:]don't encode Subject and X-Nsubject fields
113 \medskip
114 \end{description}
115 {\baselineskip=10pt
116 \begin{verbatim}
117 ----------------------------------------------------------------------
118 (setq mime/no-encoding-header-fields '("X-Nsubject" "Subject"))
119 ----------------------------------------------------------------------
120 \end{verbatim}}
121 \medskip
122 \medskip
123
124 \section{How to add or change character sets}
125 \medskip
126 \par
127 In Mule, you can add or change character sets by function
128 mime/set-charset-and-encoding.
129 \medskip
130 \begin{description}
131 \item[Function:]mime/set-charset-and-encoding lc cs charset encoding
132 \medskip
133 \begin{description}
134 \item[lc:]leading-char
135 \item[cs:]coding-system. Please specify nil if you don't want to use
136 coding-system for 1 octet character.
137 \item[charset:]MIME character set
138 \item[encoding:]encoding method for encoder
139 \medskip
140 \medskip
141 \end{description}
142 \end{description}
143 \begin{description}
144 \item[example 1:]encode EUC-KR B encoding for KS C5601-1987 characters
145 \medskip
146 \par
147 (mime/set-charset-and-encoding lc-kr *euc-kr* "EUC-KR" "B")
148 \medskip
149 \medskip
150 \item[example 2:]encode/decode koi8-r Q encoding
151 \medskip
152 \par
153 (mime/set-charset-and-encoding lc-prv11 nil "KOI8-R" "Q")
154 \medskip
155 \item[{[}WARNING{]}]In this version, handling for private character is very ad
156 hoc.  (\verb+^+\_\verb+^+; I want to improve.
157 \end{description}
158 \end{document}