1 [README for tm (English Version)]
2 by MORIOKA Tomohiko <morioka@jaist.ac.jp>
3 and KOBAYASHI Shuhei <shuhei-k@jaist.ac.jp>
4 $Id: README.en,v 7.18 1996/04/27 15:32:23 morioka Exp $
8 tm is a MIME package for GNU Emacs. tm has following functions:
10 - MIME style multilingual header
11 - MIME message viewer (mime/viewer-mode)
12 - MIME message composer (mime/editor-mode)
13 - MIME extenders for mh-e, GNUS, RMAIL and VM
18 This package includes following documents.
22 - tm/doc/tm_en.texi : tm Reference Manual (TeXinfo)
23 - tm/doc/tm-gnus_en.texi: tm-gnus Reference Manual (TeXinfo)
24 - tm/doc/tm-mh-e_en.texi: tm-mh-e Reference Manual (TeXinfo)
28 - tm/doc/tm_ja.tex : tm Reference Manual (TeXinfo)
29 - tm/doc/tm-gnus_ja.texi : tm-gnus Reference Manual (TeXinfo)
30 - tm/doc/tm-mh-e_ja.texi : tm-mh-e Reference Manual (TeXinfo)
31 - tm/doc/signature-jp.ol : signature.el Reference Manual (Emacs Outline)
32 - tm/doc/signature-jp.tex: signature.el Reference Manual (LaTeX)
37 tm has following modules:
39 - tm-view : MIME viewer
40 - tm-parse.el : MIME message parser
41 - tm-play.el : MIME content player
42 - tm-ew-d.el : MIME encoded-word decoder
43 - preview filter for tm-view
44 - tm-rich : for text/enriched and text/richtext
45 - internal methods for tm-view
46 - tm-partial : automatic assembler for message/partial
47 - tm-ftp : for anonymous ftp
48 - tm-file : for file extraction
49 - tm-tar : for tar content
50 - tm-latex : for LaTeX
51 - tm-html : for text/html
53 - tm-edit : MIME composer (mime.el and tm-comp.el were merged)
54 - tm-ew-e.el : MIME encoded-word encoder
55 - tm-def : definition module for tm
56 - tm-MUAs : MIME extender for MUAs
57 - tm-mh-e : tm-MUA for mh-e
58 - tm-gnus : tm-MUA for GNUS
59 - tm-rmail : tm-MUA for RMAIL
60 - tm-vm : tm-MUA for vm
61 - tm-mail : tm-MUA library module for mail-mode
62 - mime-setup: set up module for MIME
63 - tm-setup: set up only reading
68 4.1 edit tm/TM-CFG (optional)
70 You can edit tm/TM-CFG file.
72 In default, tm is installed into /usr/local/. If you want to change,
73 please modify the variable `PREFIX'.
76 4.2 tm-gnus (optional)
78 If you use optional GNUS or Gnus, which is not included in Emacs
79 distribution, you must edit following files before make.
81 If you use Emacs 18.* and GNUS 3.*, please edit tm/gnus/g3-path.
83 If you use Emacs 18.* and GNUS 4.*, please edit tm/gnus/g4-path.
85 If you use Gnus 5.0.*, please edit tm/gnus/g5-path.
87 If you use September Gnus, please edit tm/gnus/s-path.
90 4.3 edit external methods (optional)
92 You can edit external methods in `tm/methods/' directory for your
95 tm/methods/tm-au for audio
96 tm/methods/tm-file for file extraction
97 tm/methods/tm-image for image
98 tm/methods/tm-mpeg for MPEG
99 tm/methods/tm-plain for plain text
100 tm/methods/tm-html for HTML
101 tm/methods/tmdecode decoder
103 In default, tmdecode uses `mmencode' command. If you don't have
104 metamail package, please modify tmdecode to use decode-b instead of
112 You can specify Emacs command name, for example if you want to use
113 `mule' as Emacs command:
115 % make all EMACS=mule
122 You can specify Emacs command name, for example if you want to use
123 `xemacs' as Emacs command:
125 % make install EMACS=xemacs
130 Please insert `(load "mime-setup")' in ~/.emacs.
133 6.1 automatic MIME preview support
135 tm-gnus provides automatic MIME preview feature for GNUS 3.15 or
136 later, Gnus 5.0.*, Gnus 5.1, and September Gnus.
138 If you don't want to use automatic MIME preview feature, please
139 insert following to ~/.emacs.
141 (setq tm-gnus/automatic-mime-preview nil)
143 In addition, September Gnus has automatic MIME preview supporting
144 feature. Of course, tm-gnus provides this feature for other GNUS and
145 Gnus, but it is unnatural.
147 When automatic MIME preview mode, GNUS and Gnus do MIME processing
148 if a message has a Mime-Version field. If it does not have, GNUS and
149 Gnus does not do MIME processing, in default.
151 Gnus 5.0.*, 5.1 and September Gnus have a variable
152 `gnus-strict-mime'. If you insert
154 (setq gnus-strict-mime nil)
156 Gnus do MIME processing even if a message does not have Mime-Version
159 In September Gnus, if `gnus-strict-mime' is not nil, variable
160 `gnus-decode-encoded-word-method' is called. tm-gnus uses it to decode
161 RFC 1522 encoded-word. So it is not necessary to reset
167 If you use vm, please insert `(require 'tm-vm)' in ~/.vm.
169 tm works well with BBDB: If you use VM, please insert
170 (require 'tm-vm) *after* (bbdb-insinuate-vm).
175 If you have PGP and Mailcrypt package, you can use PGP on
176 MIME. Currently, 2 drafts (draft-elkins-pem-pgp-02.txt and
177 draft-kazu-pgp-mime-00.txt) are proposed, so tm provides both way.
179 For decoding, please insert following into ~/.emacs:
181 ======================================================================
188 ======================================================================
190 tm-pgp.el is a internal method modules to support PGP.
192 For encoding, tm-edit provides 2 mechanism. One is for signing or
193 encrypting for message as application/pgp. There are two command
194 `mime-editor/set-sign' and `mime-editor/set-encrypt'. They set a
195 message is signed, encrypted or not.
197 Another one is for content. There are 2 kinds of enclosure for PGP:
198 ``signed'' and ``encrypted''. Their enclosure are bound to key and
199 menu. If you use this mechanism, please specify 2 variables:
200 `mime-editor/signing-type' and `mime-editor/encrypting-type'. They
201 requires following values:
203 pgp-elkins processed as draft-elkins-pem-pgp-02.txt
204 pgp-kazu processed as draft-kazu-pgp-mime-00.txt
207 If you use ``signed'' and ``encrypted'' as draft-elkins-pem-pgp-02.txt,
208 please insert following into ~/.emacs:
210 ======================================================================
211 (setq mime-editor/signing-type 'pgp-elkins)
212 (setq mime-editor/encrypting-type 'pgp-elkins)
213 ======================================================================
215 If you use ``signed'' and ``encrypted'' as draft-kazu-pgp-mime-00.txt,
216 please insert following into ~/.emacs:
218 ======================================================================
219 (setq mime-editor/signing-type 'pgp-kazu)
220 (setq mime-editor/encrypting-type 'pgp-kazu)
221 ======================================================================
224 6.4 setting sample for hilit19
226 ======================================================================
229 (let* ((csubject-patterns '(("^\\[.+\\]$" nil msg-subject)))
230 (header-patterns '(("^Subject:.*$" nil msg-subject)
231 ("^From:.*$" nil msg-from)
232 ("^--text follows this line--$"
234 ("^[A-Za-z][A-Za-z0-9-]+:" nil msg-header)
236 (body-patterns '(("^\\(In article\\|[ \t]*\\w*[]<>}|]\\).*$"
238 (message-patterns (append ;;csubject-patterns
242 (hilit-set-mode-patterns 'msg-header header-patterns)
243 (hilit-set-mode-patterns 'msg-body body-patterns)
244 (hilit-set-mode-patterns 'mime/viewer-mode
246 'hilit-rehighlight-message)
248 (add-hook 'mime-viewer/content-header-filter-hook
250 (if (not (eq mime::preview/original-major-mode
251 'gnus-original-article-mode))
252 (hilit-rehighlight-buffer-quietly)
254 (add-hook 'mime-viewer/plain-text-preview-hook
256 (if (not (eq mime::preview/original-major-mode
257 'gnus-original-article-mode))
258 (hilit-rehighlight-buffer-quietly)
261 ======================================================================
264 6.5 setting sample for browse-url
266 If you have browse-url.el (included in Gnus 5.*, September Gnus and
267 Emacs 19.30 or later), you can use URL button in
268 mime/viewer-mode. Following is setting sample:
270 ======================================================================
271 (setq browse-url-browser-function
272 (if (eq window-system 'x)
275 (autoload browse-url-browser-function "browse-url"
276 "Ask a WWW browser to show a URL." t)
277 ======================================================================
280 7 How to use mime/viewer-mode
282 In tm-MUAs, you can use mime/viewer-mode if you press `v' key (in VM,
283 `Z' key) in Summary mode. Or automatic MIME previewed buffer's
284 major-mode is mime/viewer-mode. mime/viewer-mode has following
287 q quit from mime/viewer-mode
288 u move to upper content
289 p move to previous content
290 n move to next content
291 SPC scroll up or move to next content
292 M-SPC scroll down or move to previous content
293 DEL scroll down or move to previous content
294 RET move to next line
295 M-RET move to previous line
296 < move to beginning of message
297 > move to end of message
298 v play current content
299 e extract as file current content
300 C-c C-p print current content
301 f display X-Face in current message
302 button-2 move to point under the mouse cursor and play
303 current content or browse URL
308 If you write bug-reports and/or propositions for improvement, please
309 post them to following news groups:
311 fj.editor.emacs (Japanese or English)
312 fj.editor.mule (Japanese or English; if you use Mule)
313 gnu.emacs.help (English)
315 fj.news.reader.gnus (Japanese or English; about GNUS and Gnus)
316 gnu.emacs.gnus (English; about GNUS and Gnus)
318 gnu.emacs.vm.info (English; about tm-vm)
322 bug-tm-en@chamonix.jaist.ac.jp (English)
323 bug-tm-ja@chamonix.jaist.ac.jp (Japanese)
325 Via tm ML, You can report bugs of tm, obtain the latest release of tm
326 package, and discuss the future enhancements to tm. To join tm ML,
329 tm-admin@chamonix.jaist.ac.jp (Japanese or English)
330 tm-eng-admin@chamonix.jaist.ac.jp (English)
332 Since the user registration is manually done, please write the mail
333 body in human-recognizable language (^_^).
336 9 How to get new version
338 tm is available from following anonymous ftp site:
340 ftp://ftp.jaist.ac.jp/pub/GNU/elisp/mime/ (Japan)
344 ftp://ftp.nis.co.jp/pub/gnu/emacs-lisp/tm/ (Japan)
345 ftp://ftp.nisiq.net/pub/gnu/emacs-lisp/tm/ (US)
350 - MUA specific key bind system for mime/viewer-mode
351 - better identification calculus system as successor of atype system
352 - development of internal method for message/external-body based on
354 - better automatic MIME preview support