On 20 Nov 2004, Christophe Rhodes wrote:
Helmut Eller e9626484@stud3.tuwien.ac.at writes:
I added support for multibyte coding systems. The new magic variable is slime-net-coding-system. Currently there are 3 possible values for the coding system: iso-8859-1-unix, utf-8-unix, and emacs-mule-unix. At startup, Emacs tells the Lisp implementation which coding system to use and same encoding is used for the rest of the session. Not all Lisps implementations support all coding systems. The situations is as follows:
CMUCL, OpenMCL: support only iso-8859-1-unix. SBCL, CLISP: can be used with iso-8859-1-unix or utf-8-unix. Allegro: supports all three.
Thank you. What Lisp support do you need to support other external formats? A lisp-side understanding of the emacs multibyte system?
If so, where is emacs-mule-unix documented?
`emacs-mule' is an internal coding system -- *not* something that you really want to use for communications between (X)Emacs and another process.
One key reason for this is that this encoding has been known to change from version to version of Emacs itself -- as the needs of the internal data storage system change, at least under XEmacs. I believe that GNU Emacs has done the same, notably with the addition of some Unicode support around the 21.3 release.
Supporting utf-8 is good, and is available (for many characters) through the mule-ucs package, or internal support, under recent Emacs and XEmacs versions.
This package provides a CCL based tool for translating utf-8 into the internal Mule encoding and vice-versa, insulating you from the details of the internal coding.
Supporting the various 8-bit ISO encodings (other than 8859-1) is probably also nice, but not that necessary with utf-8 support.
If you really want something that isn't Unicode, but that does support a variety of coding systems at once, one of the real ISO-2022 encodings is what you want -- something standard that allows selecting the active character set, without the random variation of the internal Mule encoding.
Regards, Daniel