tm 7.80.
[elisp/tm.git] / README.eng
index 209e15c..a168c7f 100644 (file)
@@ -1,67 +1,90 @@
 [README for tm (English Version)]
 by MORIOKA Tomohiko <morioka@jaist.ac.jp>
-1994/12/6
+and KOBAYASHI Shuhei <shuhei@cmpt01.phys.tohoku.ac.jp>
+$Id: README.eng,v 7.4 1995/12/06 09:21:07 morioka Exp $
 
 1 What's tm?
 
-Tm is a MIME package for GNU Emacs. Tm has following functions:
+  tm is a MIME package for GNU Emacs. tm has following functions:
 
        - MIME style multilingual header
        - MIME message viewer (mime/viewer-mode)
-       - MIME extenders for mh-e, GNUS and RMAIL
+       - MIME message composer (mime/editor-mode)
+       - MIME extenders for mh-e, GNUS, RMAIL and VM
 
 
 2 Documents
 
-This package includes following documents.
+  This package includes following documents.
 
 (1) English edition
 
-- doc/tm-eng.tex       : tm Reference Manual (LaTeX)
-- doc/tiny-mime-eng.ol : tiny-mime.el Reference Manual (Emacs Outline)
-- doc/tiny-mime-eng.tex        : tiny-mime.el Reference Manual (LaTeX)
+- tm/doc/tm_en.texi    : tm Reference Manual (TeXinfo)
+- tm/doc/tm-view_en.texi: tm-view Reference Manual (TeXinfo)
+- tm/doc/tm-gnus_en.texi: tm-gnus Reference Manual (TeXinfo)
 
 (2) Japanese edition
 
-- doc/tm-jp.tex                : tm Reference Manual (LaTeX)
-- doc/tiny-mime-jp.ol  : tiny-mime.el Reference Manual (Emacs Outline)
-- doc/tiny-mime-jp.tex : tiny-mime.el Reference Manual (LaTeX)
-- doc/signature-jp.ol  : signature.el Reference Manual (Emacs Outline)
-- doc/signature-jp.tex : signature.el Reference Manual (LaTeX)
+- tm/doc/tm_ja.tex      : tm Reference Manual (TeXinfo)
+- tm/doc/tm-view_ja.texi : tm-view Reference Manual (TeXinfo)
+- tm/doc/tm-gnus_ja.texi : tm-gnus Reference Manual (TeXinfo)
+- tm/doc/signature-jp.ol : signature.el Reference Manual (Emacs Outline)
+- tm/doc/signature-jp.tex: signature.el Reference Manual (LaTeX)
 
 
 3 Modules
 
-Tm has following modules:
+  tm has following modules:
 
-       - tiny-mime : MIME header encoder/decoder
        - tm-view : MIME viewer
-       - tm-misc : library module for tm-MUAs
+               - tm-parse.el : MIME message parser
+               - tm-play.el  : MIME content player
+               - tm-ew-d.el : MIME encoded-word decoder
+       - preview filter for tm-view
+               - tm-rich    : for text/enriched and text/richtext
+       - internal methods for tm-view
+               - tm-partial : automatic assembler for message/partial
+               - tm-ftp     : for anonymous ftp
+               - tm-file    : for file extraction
+               - tm-tar     : for tar content
+               - tm-latex   : for LaTeX
+               - tm-html    : for text/html
+       - tm-edit : MIME composer (mime.el and tm-comp.el were merged)
+               - tm-ew-e.el : MIME encoded-word encoder
+       - tm-def  : definition module for tm
+               - tm-nemacs.el : NEmacs depended part of tm
+               - tm-orig.el   : FSF original Emacs and XEmacs
+                                 depended part of tm
+               - tm-mule.el   : Mule depended part of tm
        - tm-MUAs : MIME extender for MUAs
                - tm-mh-e  : tm-MUA for mh-e
                - tm-gnus  : tm-MUA for GNUS
                - tm-rmail : tm-MUA for RMAIL
                - tm-vm    : tm-MUA for vm
-       - tm-setup: set up module for tm-MUAs
+               - tm-mail  : tm-MUA library module for mail-mode
        - mime-setup: set up module for MIME
+               - tm-setup: set up only reading
 
 
 4 Install
 
-4.1 Makefile
+4.1 tm/config.tm
 
-  Edit Makefiles for your environment. In this package, there are
-following Makefiles:
-
-       Makefile :      main Makefile
-       Makefile.18 :   Makefile for Emacs 18 (NEmacs, Mule 1.x)
-       Makefile.19 :   Makefile for Emacs 19 and Mule 2.x
-       Makefile.o19 :  Makefile for original Emacs 19 (XEmacs)
+  Please edit tm/config.tm file.
 
 
 4.2 External methods
 
-  Edit external methods in `methods/' directory for your environment.
+  Please edit external methods in `tm/methods/' directory for your
+environment.
+
+       tm/methods/tm-au        for audio
+       tm/methods/tm-file      for file extraction
+       tm/methods/tm-image     for image
+       tm/methods/tm-mpeg      for MPEG
+       tm/methods/tm-plain     for plain text
+       tm/methods/tm-html      for HTML
+       tm/methods/tmdecode     decoder
 
 
 4.3 make
@@ -76,36 +99,230 @@ following Makefiles:
 
 4.5 Emacs Lisp modules
 
-  Run `make install-18', if you use Emacs 18 (NEmacs, Mule 1.x).
+  Run `make install-18', if you use Emacs 18 (NEmacs, Mule 1.*).
 
-  Run `make install-19', if you use Emacs 19 and Mule 2.x.
+  Run `make install-xemacs', if you use Emacs .. 19.28 (Mule 2.* based
+on), or XEmacs.
 
-  Run `make install-o19', if you use Emacs 19 or XEmacs.
+  Run `make install-19_29', if you use Emacs 19.29 or later (Mule 2.*
+based on).
 
   Or copy *.el to your emacs lisp directory.
 
 
-5 .emacs
+5 tm-MUA
+
+5.1 tm-gnus
+
+  If you use optional GNUS or Gnus, you must edit and make manually.
+
+(1) Please edit tm/gnus/Makefile.
+
+    If you use Emacs 18.* and GNUS 3.*, please edit tm/gnus/g3-path.
+
+    If you use Emacs 18.* and GNUS 4.*, please edit tm/gnus/g4-path.
+
+    If you use Gnus 5.0.*, please edit tm/gnus/g5-path.
+
+    If you use September Gnus, please edit tm/gnus/s-path.
+
+(2) make
+
+  Run `make gnus3', if you use GNUS 3.*.
+
+  Run `make gnus4', if you use GNUS 4.*.
+
+  Run `make gnus5', if you use Gnus 5.0.*.
+
+  Run `make sgnus', if you use September Gnus.
+
+(3) install
+
+  Run `make install-18', if you use Emacs 18.*.
+
+  Run `make install-19', if you use Emacs .. 19.28 or XEmacs.
+
+  Run `make install-19_29', if you use Emacs 19.29 or later.
+
+
+5.1.1 automatic MIME preview support
+
+  tm-gnus provides automatic MIME preview feature for GNUS 3.15 or
+later, Gnus 5.0.*, Gnus 5.1, and September Gnus.
+
+  If you don't want to use automatic MIME preview feature, please
+insert following to ~/.emacs.
+
+       (setq tm-gnus/automatic-mime-preview nil)
+
+  In addition, September Gnus has automatic MIME preview supporting
+feature. Of course, tm-gnus provide this feature for other GNUS and
+Gnus, but it is unnatural.
+
+  When automatic MIME preview mode, GNUS and Gnus do MIME processing
+if a message has a Mime-Version field. If it does not have, GNUS and
+Gnus does not do MIME processing, in default.
+
+  Gnus 5.0.*, 5.1 and September Gnus have a variable
+`gnus-strict-mime'. If you insert
+
+       (setq gnus-strict-mime nil)
+
+Gnus do MIME processing even if a message does not have Mime-Version
+field.
+
+  In September Gnus, if `gnus-strict-mime' is not nil, variable
+`gnus-decode-encoded-word-method' is called. tm-gnus uses it to decode 
+RFC 1522 encoded-word. So it is not necessary to reset
+`gnus-strict-mime'.
+
+
+5.2 tm-mh-e
+
+  If you use optional mh-e, you must edit and make manually.
+
+(1) Please edit mh-e/Makefile
+
+(2) make
+
+  Run `make elc'.
 
-Please insert (load "mime-setup") or (load "tm-setup") in .emacs. If
-you use mime-setup, you should prepare mime.el.
+(3) install
 
-If you want use vm, please insert following in .vm or .emacs:
+  Run `make install-18', if you use Emacs 18.*.
 
-       (load "tm-vm")
+  Run `make install-19', if you use Emacs 19.*.
 
+* 5.3 VM
 
-6 How to use mime/viewer-mode
+  If you use VM, please edit `mk-tm'.
+
+
+6 .emacs
+
+  Please insert (load "mime-setup") in ~/.emacs.
+
+6.1 VM
+
+  If you use vm, please insert (require 'tm-vm) in ~/.vm.
+
+  tm works well with BBDB: If you use VM, please insert
+(require 'tm-vm) *after* (bbdb-insinuate-vm).
+
+
+6.2 setting sample for hilit19
+
+======================================================================
+(cond (window-system
+       (let* ((header-patterns '(("^Subject:.*$" nil msg-subject)
+                                ("^From:.*$" nil msg-from)
+                                ("^--text follows this line--$"
+                                 nil msg-separator)
+                                ("^[A-Za-z][A-Za-z0-9-]+:" nil msg-header)
+                                ))
+             (body-patterns '(("^\\(In article\\|[ \t]*\\w*[]<>}|]\\).*$"
+                               nil msg-quote)))
+             (message-patterns (append header-patterns body-patterns))
+             )
+        (hilit-set-mode-patterns 'msg-header header-patterns)
+        (hilit-set-mode-patterns 'msg-body body-patterns)
+        (hilit-set-mode-patterns 'mime/viewer-mode
+                                 message-patterns
+                                 'hilit-rehighlight-message)
+        )
+       (add-hook 'mime-viewer/content-header-filter-hook
+                (function hilit-rehighlight-buffer-quietly))
+       (add-hook 'mime-viewer/plain-text-preview-hook
+                (function hilit-rehighlight-buffer-quietly))
+       ))
+======================================================================
+
+6.3 setting sample for browse
+
+  If you have browse-url.el (included in Gnus 5.*, September Gnus and
+Emacs 19.30 or later), you can use URL button in
+mime/viewer-mode. Following is setting sample:
+
+======================================================================
+(setq browse-url-browser-function
+      (if (eq window-system 'x)
+         'browse-url-netscape
+       'browse-url-w3))
+(autoload browse-url-browser-function "browse-url"
+  "Ask a WWW browser to show a URL." t)
+======================================================================
+
+
+7 How to use mime/viewer-mode
 
 In tm-MUAs, you can use mime/viewer-mode if you press `v' key (in VM,
-`Z' key) in Summary mode. mime/viewer-mode has following functions:
-
-       q       quit from mime/viewer-mode
-       u       move to the upper content
-       p       move to the previous content
-       n       move to the next content
-       SPC     scroll up
-       M-SPC   scroll down
-       v       play the content
-       e       extract as file the content
-       C-c C-p print the content
+`Z' key) in Summary mode. Or automatic MIME previewed buffer's
+major-mode is mime/viewer-mode. mime/viewer-mode has following
+functions:
+
+       q         quit from mime/viewer-mode
+       u         move to upper content
+       p         move to previous content
+       n         move to next content
+       SPC       scroll up or move to next content
+       M-SPC     scroll down or move to previous content
+       DEL       scroll down or move to previous content
+       RET       move to next line
+       M-RET     move to previous line
+       v         play current content
+       e         extract as file current content
+       C-c C-p   print current content
+       button-2  move to point under the mouse cursor and play
+                 current content or browse URL
+
+
+8 Bug report
+
+If you write bug-reports and/or propositions for improvement, please
+post them to following news groups:
+
+       fj.editor.emacs         (Japanese or English)
+       fj.editor.mule          (Japanese or English; if you use Mule)
+       gnu.emacs.help          (English)
+
+       fj.news.reader.gnus     (Japanese or English; about GNUS and Gnus)
+       gnu.emacs.gnus          (English; about GNUS and Gnus)
+
+       gnu.emacs.vm.info       (English; about tm-vm)
+
+or send to tm ML:
+
+       bug-tm-en@chamonix.jaist.ac.jp  (English)
+       bug-tm-ja@chamonix.jaist.ac.jp  (Japanese)
+
+Via tm ML, You can report bugs of tm, obtain the latest release of tm
+package, and discuss the future enhancements to tm. To join tm ML,
+send a mail to
+
+       tm-admin@chamonix.jaist.ac.jp           (Japanese or English)
+       tm-eng-admin@chamonix.jaist.ac.jp       (English)
+
+Since the user registration is manually done, please write the mail
+body in human-recognizable language (^_^).
+
+
+9 How to get new version
+
+tm is available from following anonymous ftp site:
+
+       ftp://ftp.jaist.ac.jp/pub/GNU/elisp/mime/       (Japan)
+
+and its mirrors:
+
+       ftp://ftp.nis.co.jp/pub/gnu/emacs-lisp/tm/      (Japan)
+       ftp://ftp.nisiq.net/pub/gnu/emacs-lisp/tm/      (US)
+
+
+10 TODO
+
+- automatic MIME preview support for another MUA
+- better XEmacs support (e.g. inline image)
+- development of internal method for message/external-body based on
+  tm-ftp
+- development good MIME composer
+- etc.