1. xemacs
  2. mule-ucs


mule-ucs / lisp /

Filename Size Date modified Message
80.6 KB
2.4 KB
4.5 KB
14.8 KB
5.1 KB
19.3 KB
3.3 KB
9.9 KB
16.7 KB
3.9 KB
56.6 KB
14.2 KB
6.0 KB
7.9 KB
1.3 KB
2.7 KB
27.1 KB
3.6 KB
2.9 KB
5.1 KB
3.1 KB
9.3 KB
15.9 KB
Mule-UCS(Universal enCoding System)
Written by MIYASHITA Hisashi <himi@m17n.org>

       About any question, problem, suggesions, and so on,
       please discuss at MULE ML <mule@m17n.org>
                      or MULE Japanese ML <mule-ja@m17n.org>.

       reviced on 2001/4/13.

o ... License

  Mule-UCS is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.

  You should have received a copy of the GNU General Public License
along with Mule-UCS; see the file COPYING.  If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.

o ... Introduction

  Mule-UCS is an Emacs Lisp library to define encoding/decoding schemes by
rather simple translation rules.

  Emacs prepares encoding/decoding schemes in the following 2 mechanisms.

  (A) ... built-in ISO/IEC 2022 encoder/decoder
  (B) ... Code Conversion Language(CCL) engine

  Although (A) provides powerful encoding/decoding schemes as to ISO/IEC 2022,
we cannot utilize this for any other encoding schemes.
(B) is a simple register machine.  However, CCL is an arcane language
because it is mysterious and obscure:-P.

  Mule-UCS provides flexible and complehensible encoding mechanism to Emacs.
Currently, Mule-UCS generates CCL program from the translation rule, but
in the future, Mule-UCS may support another conversion engine on Emacs.

  And we prepared 3 predefined conversions for Mule-UCS.

  (1) ... Unicode(UTF-7/8/16) support.
  (2) ... Big5 <-> CNS conversion support.
  (3) ... JIS X 0213 support. (Kawabata-san contributed almost all of the works.)

  These are included in this package.

  This version supports Emacs 20.6 or later; XEmacs 21.2.37 or later; and
Meadow 1.12 Beta 1 or later.
If your Emacs have Mule 4.1(AOI) or later features, you can utilize UTF-8/16
autodetection facility.  You can upgrade your Emacs to Mule 4.1 by applying
the patch(emacs-20.7-mule-4.1.patch.txt) included in this package.

This manual corresponds to Mule-UCS 0.84 (KOUGETSUDAI).


  If your Emacs is earlier than 20.6, it contains the fatal bug
on CCL interpreter, Please update to 20.6, which is bug fixed-version
of 20.5.

  Owing to this bug, Emacs may cause wrong
encoding or decoding if the encoded or decoded data was
too much.  This problem is NOT limited to Mule-UCS.

  However, also on Emacs 20.6, its CCL interpretor have some faults on
MapMultiple instruction.  Therefore, Mule-UCS CCL manager(MUCS-CCL)
disables some features if it detects the faults on MapMultiple
instruction.  Without such features, you cannot use COMPOSITE(`|') and
AND(`&') operations in translation rules.  But you will use other
features correctly.  If you'd like to use such features, please
apply the patch, which is put in the top directory of Mule-UCS and
named `emacs-20.7-mule-4.1.patch.txt', to your Emacs.
This patch is maintained by Satoshi Yatagawa <yatagawa@cc.teu.ac.jp>.
For detail, please refer to http://www.teu.ac.jp/nsit/~yatagawa/comp/emacs/
I appreciate his contribution.
By applying this patch, not only this problem is fixed, but also
Emacs will have Mule 4.1 features, which mainly consist of
UTF-8/16 automatic detection facility.

  I ask Emacs developpers to correct this problem and to adopt Mule 4.1
features in the future versions of Emacs.  That will be applied to
Emacs 21.

  If you use Meadow, please update to 1.13 Beta 1 or later.
They have no known faults on CCL also on MapMultiple instruction.


o ... Installation.

  Since Mule-UCS is only an Emacs Lisp library, you have only to
byte-compile *.el files and install them to the location refered by

  You can use mucs-comp.el at the top directory.
Enter the following command line:

  emacs(xemacs) -q --no-site-file -batch -l mucs-comp.el

If you use Meadow, enter the following:

  Meadow95(NT) -q --no-site-file -batch -l mucs-comp.el

And then, you will obtain byte-compiled emacs-lisp files.
Finally, you should install lisp directory to your site-lisp directory.(*1)

Please read README.Unicode if you want to use Unicode.

o ... and then...

  If you want to configure your own encoding, please read another
  documentations.(Not yet written. sorry.)