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.28 1997/01/30 11:40:09 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, Gnus, RMAIL and VM
18 This package includes the following documents.
23 - tm/doc/tm-en.sgml : tm Reference Manual
24 - tm/doc/tm-view-en.sgml : tm-view Reference Manual
25 - tm/doc/tm-edit-en.sgml : tm-edit Reference Manual
26 - tm-mh-e/tm-mh-e-en.sgml : tm-mh-e Reference Manual
27 - gnus-mime/gnus-mime-en.sgml : gnus-mime Reference Manual
30 - tm/doc/tm-en.texi : tm Reference Manual
31 - tm/doc/tm-view-en.texi : tm-view Reference Manual
32 - tm/doc/tm-edit-en.texi : tm-edit Reference Manual
33 - tm-mh-e/tm-mh-e-en.texi : tm-mh-e Reference Manual
34 - gnus-mime/gnus-mime-en.texi : gnus-mime Reference Manual
35 - tm-vm/tm-vm_en.texi : tm-vm Reference Manual
38 - tm/doc/tm-en.info : tm Reference Manual
39 - tm/doc/tm-view-en.info : tm-view Reference Manual
40 - tm/doc/tm-edit-en.info : tm-edit Reference Manual
41 - tm-mh-e/tm-mh-e-en.info : tm-mh-e Reference Manual
42 - gnus-mime/gnus-mime-en.info : gnus-mime Reference Manual
43 - tm-vm/tm-vm_en.info : tm-vm Reference Manual
48 - tm/doc/tm-ja.sgml : tm Reference Manual
49 - tm/doc/tm-view-ja.sgml : tm-view Reference Manual
50 - tm/doc/tm-edit-ja.sgml : tm-edit Reference Manual
51 - tm-mh-e/tm-mh-e-ja.sgml : tm-mh-e Reference Manual
52 - gnus-mime/gnus-mime-ja.sgml : gnus-mime Reference Manual
55 - tm/doc/tm-ja.texi : tm Reference Manual
56 - tm/doc/tm-view-ja.texi : tm-view Reference Manual
57 - tm/doc/tm-edit-ja.texi : tm-edit Reference Manual
58 - tm-mh-e/tm-mh-e-ja.texi : tm-mh-e Reference Manual
59 - gnus-mime/gnus-mime-ja.texi : gnus-mime Reference Manual
62 - tm/doc/tm-ja.info : tm Reference Manual
63 - tm/doc/tm-view-ja.info : tm-view Reference Manual
64 - tm/doc/tm-edit-ja.info : tm-edit Reference Manual
65 - tm-mh-e/tm-mh-e-ja.info : tm-mh-e Reference Manual
66 - gnus-mime/gnus-mime-ja.info : gnus-mime Reference Manual
69 - tm/doc/signature-jp.ol : signature.el Reference Manual (Emacs Outline)
70 - tm/doc/signature-jp.tex: signature.el Reference Manual (LaTeX)
71 - tm/doc/tm-charset_ja.ol: How to use character codes in tm (Emacs Outline)
72 - tm/doc/tm-charset_ja.tex: How to use character codes in tm (LaTeX)
77 tm has following modules:
79 - tm-view : MIME viewer
80 - tm-parse.el : MIME message parser
81 - tm-play.el : MIME content player
82 - tm-ew-d.el : MIME encoded-word decoder
83 - preview filter for tm-view
84 - tm-text : for text/*
85 - tm-image : for image/* and X-Face
86 - internal methods for tm-view
87 - tm-partial : automatic assembler for message/partial
88 - tm-ftp : for anonymous ftp
89 - tm-file : for file extraction
90 - tm-tar : for tar content
91 - tm-latex : for LaTeX
92 - tm-html : for text/html
94 - tm-edit : MIME composer (mime.el and tm-comp.el were merged)
95 - tm-ew-e.el : MIME encoded-word encoder
96 - tm-edit-mc.el : tm-edit interface for Mailcrypt
97 - tm-edit-tipgp.el : tm-edit interface for TinyPgp.el
98 - tm-def : definition module for tm
99 - tm-MUAs : MIME extender for MUAs
100 - tm-mh-e : tm-MUA for mh-e
101 - gnus-mime : tm-MUA for Gnus
102 - tm-gnus : tm-MUA for GNUS
103 - tm-rmail : tm-MUA for RMAIL
104 - tm-vm : tm-MUA for vm
105 - tm-mail : tm-MUA library module for mail-mode
106 - mime-setup: set up module for MIME
107 - tm-setup: set up only reading
112 4.1 edit tm/TM-CFG (optional)
114 You can edit tm/TM-CFG file.
116 By default, tm is installed into /usr/local/. If you want to change this,
117 please modify the variables `PREFIX' and `EXEC_PREFIX'.
120 4.2 edit external methods (optional)
122 You can edit external methods in `tm/methods/' directory for your
125 tm/methods/tm-au for audio
126 tm/methods/tm-file for file extraction
127 tm/methods/tm-image for image
128 tm/methods/tm-mpeg for MPEG
129 tm/methods/tm-plain for plain text
130 tm/methods/tm-html for HTML
131 tm/methods/tmdecode decoder
133 By default, tmdecode uses the `mmencode' command, which is part of
134 the metamail package (available by anonymous ftp from
135 ftp://thumper.bellcore.com/pub/nsb). If you don't have the metamail
136 package, please modify tmdecode to use decode-b instead of mmencode.
143 You can specify the Emacs command name, for example if you want to use
144 `mule' as the Emacs command:
146 % make all EMACS=mule
153 You can specify the Emacs command name, for example if you want to use
154 `xemacs' as the Emacs command:
156 % make install EMACS=xemacs
161 Please insert `(load "mime-setup")' in ~/.emacs.
166 gnus-mime provides automatic MIME preview feature for Gnus.
168 If you don't want to use automatic MIME preview feature, please
171 (setq gnus-show-mime nil)
173 In addition, Gnus 5.2 is designed to support automatic MIME preview
174 feature. Of course, gnus-mime provides this feature for Gnus 5.0.*
175 and Gnus 5.1.*, but it is unnatural.
177 When automatic MIME preview mode, Gnus do MIME processing if a
178 message has a Mime-Version field. If it does not have one, Gnus does
179 not do MIME processing, in default.
181 Gnus 5.0.*, 5.1 and Gnus 5.2 have a variable `gnus-strict-mime'. If
184 (setq gnus-strict-mime nil)
186 Gnus does MIME processing even if a message does not have a
189 In Gnus 5.2, if `gnus-strict-mime' is not nil, variable
190 `gnus-decode-encoded-word-method' is called. gnus-mime uses it to
191 decode RFC 2047 encoded-words. So it is not necessary to reset
197 tm-gnus provides automatic MIME preview feature for GNUS 3.15 or
200 If you don't want to use automatic MIME preview feature, please
203 (setq tm-gnus/automatic-mime-preview nil)
208 If you use vm, please insert `(require 'tm-vm)' in ~/.vm.
210 tm works well with BBDB: If you use VM, please insert
211 (require 'tm-vm) *after* (bbdb-insinuate-vm).
216 If you have the PGP and Mailcrypt packages, you can use PGP with
217 MIME. Currently, PGP/MIME (RFC 2015) and draft-kazu-pgp-mime-00.txt
218 are proposed, so tm provides both ways.
220 For decoding, please insert the following into ~/.emacs:
222 ======================================================================
229 ======================================================================
231 tm-pgp.el is an internal method module to support PGP.
233 For encoding, tm-edit provides 2 mechanisms. One is for signing or
234 encrypting for message as application/pgp. There are two commands,
235 `mime-editor/set-sign' and `mime-editor/set-encrypt'. They set a
236 message as signed, encrypted or not.
238 Another one is for content. There are 2 kinds of enclosures for PGP:
239 ``signed'' and ``encrypted''. Their enclosure are bound to key and
240 menu. If you use this mechanism, please specify 2 variables:
241 `mime-editor/signing-type' and `mime-editor/encrypting-type'. They
242 requires following values:
244 pgp-elkins processed as PGP/MIME (RFC 2015)
245 pgp-kazu processed as draft-kazu-pgp-mime-00.txt
248 If you use ``signed'' and ``encrypted'' as PGP/MIME, please insert
251 ======================================================================
252 (setq mime-editor/signing-type 'pgp-elkins)
253 (setq mime-editor/encrypting-type 'pgp-elkins)
254 ======================================================================
256 If you use ``signed'' and ``encrypted'' as draft-kazu-pgp-mime-00.txt,
257 please insert into ~/.emacs:
259 ======================================================================
260 (setq mime-editor/signing-type 'pgp-kazu)
261 (setq mime-editor/encrypting-type 'pgp-kazu)
262 ======================================================================
265 6.5 code sample for hilit19
267 ======================================================================
270 (let* ((csubject-patterns '(("^\\[.+\\]$" nil msg-subject)))
271 (header-patterns '(("^Subject:.*$" nil msg-subject)
272 ("^From:.*$" nil msg-from)
273 ("^--text follows this line--$"
275 ("^[A-Za-z][A-Za-z0-9-]+:" nil msg-header)
277 (body-patterns '(("^\\(In article\\|[ \t]*\\w*[]<>}|]\\).*$"
279 (message-patterns (append ;;csubject-patterns
283 (hilit-set-mode-patterns 'msg-header header-patterns)
284 (hilit-set-mode-patterns 'msg-body body-patterns)
285 (hilit-set-mode-patterns 'mime/viewer-mode
287 'hilit-rehighlight-message)
289 (add-hook 'mime-viewer/content-header-filter-hook
291 (if (not (eq mime::preview/original-major-mode
292 'gnus-original-article-mode))
293 (hilit-rehighlight-buffer-quietly)
295 (add-hook 'mime-viewer/plain-text-preview-hook
297 (if (not (eq mime::preview/original-major-mode
298 'gnus-original-article-mode))
299 (hilit-rehighlight-buffer-quietly)
302 ======================================================================
305 6.6 code sample for browse-url
307 If you have browse-url.el (included in Gnus 5.*, September Gnus and
308 Emacs 19.30 or later), you can use URL button in
309 mime/viewer-mode. Sample code follows:
311 ======================================================================
312 (setq browse-url-browser-function
313 (if (eq window-system 'x)
316 (autoload browse-url-browser-function "browse-url"
317 "Ask a WWW browser to show a URL." t)
318 ======================================================================
321 7 How to use mime/viewer-mode
323 In tm-MUAs, you can use mime/viewer-mode if you press the `v' key (in
324 VM, `Z' key) in Summary mode. Or automatic MIME previewed buffer's
325 major-mode is mime/viewer-mode. mime/viewer-mode has following
328 q quit from mime/viewer-mode
329 u move to upper content
330 p move to previous content
331 n move to next content
332 SPC scroll up or move to next content
333 M-SPC scroll down or move to previous content
334 DEL scroll down or move to previous content
335 RET move to next line
336 M-RET move to previous line
337 < move to beginning of message
338 > move to end of message
339 v play current content
340 e extract as file current content
341 C-c C-p print current content
342 f display X-Face in current message
343 button-2 move to point under the mouse cursor and play
344 current content or browse URL
349 If you write bug-reports and/or propositions for improvement, please
352 bug-tm-en@chamonix.jaist.ac.jp (English)
353 bug-tm-ja@chamonix.jaist.ac.jp (Japanese)
355 Via tm ML, You can report bugs of tm, obtain the latest release of tm
356 package, and discuss the future enhancements to tm. To join tm ML,
359 tm-ja-admin@chamonix.jaist.ac.jp (Japanese)
360 tm-en-admin@chamonix.jaist.ac.jp (English)
362 Since the user registration is manually done, please write the mail
363 body in human-recognizable language (^_^).
366 9 How to get the latest version
368 tm is available from following anonymous ftp site:
370 ftp://ftp.jaist.ac.jp/pub/GNU/elisp/mime/ (Japan)
374 ftp://ftp.nis.co.jp/pub/gnu/emacs-lisp/tm/ (Japan)
375 ftp://ftp.nisiq.net/pub/gnu/emacs-lisp/tm/ (US)
380 - Window configuration is broken after combining partial messages or
381 playing other internal methods.
382 - Automatic combining method for message/partial is not implemented
388 - better method selecting system as successor of atype system
389 - development of internal method for message/external-body based on
391 - better automatic MIME preview support