;; -*- coding: utf-8; -*- [README for SEMI kernel package (English Version)] What's SEMI? ============ SEMI is a library to provide MIME feature for GNU Emacs. MIME is a proposed internet standard for including content and headers other than (ASCII) plain text in messages. RFC 2045 : Internet Message Bodies RFC 2046 : Media Types RFC 2047 : Message Header Extensions RFC 2048 : MIME Registration Procedures RFC 2049 : MIME Conformance SEMI has the following features: - MIME message viewer (mime-view-mode) (RFC 2045 .. 2049) - MIME message composer (mime-edit-mode) (RFC 2045 .. 2049) MIME message viewer and composer also support following features: - filename handling by Content-Disposition field (RFC 1806) - PGP/MIME security Multiparts (RFC 2015) - application/pgp (draft-kazu-pgp-mime-00.txt; obsolete) - text/richtext (RFC 1521; obsolete; preview only) - text/enriched (RFC 1896) - External method configuration by mailcap (RFC 1524) Notice that this package does not contain MIME extender for any MUAs. They are released as separated packages. Required environment ==================== SEMI supports XEmacs 21.1 or later, and GNU Emacs 20.4 or later. SEMI does not support anything older than GNU Emacs 19.28 or XEmacs 19.14. In addition, SEMI does not word with byte-indexing Mule implementations, such as Mule 1, Mule 2 and GNU Emacs 20.1/20.2. SEMI also does not support Emacs 19.29 to 19.34, XEmacs 19.15 or XEmacs 20.2, but SEMI may work with them. SEMI requires APEL (10.7 or later) and FLIM (1.14.2 or later) package. Please install them before installing it. APEL package is available at: http://git.chise.org/elisp/dist/apel/ and FLIM package is available at: http://git.chise.org/elisp/dist/flim/flim-1.14/ Installation ============ (a) run in expanded place If you don't want to install other directories, please do only following: % make You can specify the emacs command name, for example % make EMACS=xemacs If `EMACS=...' is omitted, EMACS=emacs is used. (b) make install If you want to install other directories, please do following: % make install You can specify the emacs command name, for example % make install EMACS=xemacs If `EMACS=...' is omitted, EMACS=emacs is used. You can specify the prefix of the directory tree for Emacs Lisp programs and shell scripts, for example: % make install PREFIX=~/ If `PREFIX=...' is omitted, the prefix of the directory tree of the specified emacs command is used (perhaps /usr/local). For example, if PREFIX=/usr/local and EMACS 19.34 is specified, it will create the following directory tree: /usr/local/share/emacs/19.34/site-lisp/ --- emu /usr/local/share/emacs/site-lisp/apel/ --- APEL /usr/local/share/emacs/site-lisp/flim/ --- FLIM /usr/local/share/emacs/site-lisp/semi/ --- SEMI You can specify site-lisp directory, for example % make install LISPDIR=~/share/emacs/lisp If `LISPDIR=...' is omitted, site-lisp directory of the specified emacs command is used (perhaps /usr/local/share/emacs/site-lisp or /usr/local/lib/xemacs/site-lisp). If the emu modules (included in APEL package) have been installed in the non-standard directory, you should specify where they will be found, for example: % make install VERSION_SPECIFIC_LISPDIR=~/elisp (c) install as a XEmacs package If you want to install to XEmacs package directory, please do following: % make install-package You can specify the emacs command name, for example % make install-package XEMACS=xemacs-21 If `XEMACS=...' is omitted, XEMACS=xemacs is used. You can specify the package directory, for example: % make install PACKAGEDIR=~/.xemacs If `PACKAGEDIR=...' is omitted, the first existing package directory is used. Notice that XEmacs package system requires XEmacs 21.0 or later. (a,b,c) You can specify other optional settings by editing the file ${archive}/SEMI-CFG. Please read ${archive}/README.en and comments in ${archive}/SEMI-CFG. Initialization ============== (a) load-path If you are using Emacs or Mule, please add directory of emu, apel, flim and semi to load-path. If you install by default setting, you can write subdirs.el for example: -------------------------------------------------------------------- (normal-top-level-add-to-load-path '("apel" "flim" "semi")) -------------------------------------------------------------------- If you are using XEmacs, there are no need of setting about load-path. (b) mime-setup Please insert the following into your ~/.emacs: (load "mime-setup") Documentation ============= To get started, please read ${archive}/README.en. RFC's 822, 1524, 1806, 1847, 1896, 2015, 2045, 2046, 2047, 2048 and 2049 are available via anonymous ftp: ftp://ftp.merit.edu/internet/documents/rfc/ Mailing lists ============= If you write bug-reports and/or suggestions for improvement, please send them to the Emacs-MIME Mailing Lists: emacs-mime-en@lists.chise.org (English) emacs-mime-ja@lists.chise.org (Japanese) Via the Emacs-MIME ML, you can report SEMI bugs, obtain the latest release of SEMI, and discuss future enhancements to SEMI. To join the Emacs-MIME ML, please see the descriptions of the following pages: http://lists.chise.org/mailman/listinfo/emacs-mime-en (English) http://lists.chise.org/mailman/listinfo/emacs-mime-ja (Japanese) Git based development ===================== The SEMI development sources can be accessed via Git repository. You can get the latest SEMI sources by the following: % git clone http://git.chise.org/git/elisp/semi.git Or you can view the SEMI repository via WWW at: http://git.chise.org/gitweb/?p=elisp/semi.git If you would like to join Git based development, please declare it in the Emacs-MIME mailing list at first. We hope you will join the open development. Authors ======= Original authors MORIOKA Tomohiko (the author of mime-view and various parts of SEMI) UMEDA Masanobu (the author of mime.el of emacs-mime-tools. mime.el is the origin of mime-edit.el of SEMI) Other authors Shuhei KOBAYASHI (a major author of signature.el and a lot of codes) MASUTANI Yasuhiro (anonymous ftp codes of mime-play.el) OKABE Yasuo (a major author of mime-partial.el and signature.el) Steinar Bang Steven L. Baur Kevin Broadey Alastair Burt Eric Ding Thierry Emery Simon Josefsson Jens Lautenbacher Carsten Leonhardt Pekka Marjola Hisashi Miyashita Kazuhiro Ohta Alexandre Oliva François Pinard Artur Pioro Dan Rich (contribute to evolve mime-image.el with XEmacs) Katsumi Yamaoka