On December 2, 2005 at 10:51AM +0000, fx (at gnu.org) wrote: > > BTW, the current mule-ucs startup is for various reasons: > > > > * un-define is needed for utf-* on emacs21/xemacs21 > > There isn't a problem just loading `un-define'. That doesn't redefine > decode-char/encode-char. (I should have said that is probably only a > problem in Emacs, since XEmacs doesn't have those functions.) > However, the package loads `unicode', which does cause the trouble. > That should certainly not be necessary if you only want mule-ucs for > the coding systems it defines. (I haven't heard of anyone apart from > himi who understands it well enough to do anything else :-/.)
`jisx0213' requires `mucs', and `mucs' redefines {en,de}code-char and causes problems, such as (decode-char 'ucs #x00B7) -> nil. Loading `unicode' prevents it. However, your report mentions that loading `unicode' is not a complete solution. > > * loading un-define after other packages might cause problems > > In what way? I can't think how it would cause problems (apart from > possible conflict with ucs-tables, but that could happen anyway). At least, bitmap-mule on emacs20 failed if un-define wasn't loaded early in startup. However, emacs20 is no longer exists in Debian... > > * loading ucs-tables after un-define might cause problems > > It is actually preloaded in the current Emacs. (Loading it after the > Debian mule-ucs startup might fail, since it uses decode-char.) Ah, right. > > * unify-8859-on-encoding-mode is usefull even if un-define is loaded > > I thought that mule-ucs managed to do essentially the same thing, > though I've forgotten the details. However, I think they will give > inconsistent results with the find-coding-systems-... functions. I felt that unify-8859-on-encoding-mode's unification for iso-8859-* is a good thing than mule-ucs's unification. > > * unify-8859-on-decoding-mode conflicts with un-define > > [Just for my information, what is the conflict? I don't know whether > I ever looked at that when I did ucs-tables.] mule-ucs's unification seems to depend on legacy charset (such as latin-iso8859-*). However, unify-8859-on-decoding-mode prefer mule-unicode-* rather than the legacy charset. So, if unify-8859-on-decoding-mode is enabled, mule-ucs is unusable for me. > > * setting utf-8 coding-priority is needed to prefer mule-ucs > > That can be done (and undone) at any time. You are right. I thought that prefering mule-ucs's utf-8 than emacs's mule-utf-8 is better for users if un-define is enabled in startup. > The most important thing is that loading the package should not > clobber {en,de}code-char (or other Emacs functions -- I haven't > checked for others). I agree with it. BTW, next release of Emacs (22.1) supports utf-* (includes CJK), mule-ucs is proving troublesome, and the mule-ucs upstream development is not active. I cannot recommend mule-ucs at this time. Anyway, I'll reconsider the mule-ucs startup. Thanks, -- Tatsuya Kinoshita
pgpPVmyxpZ83g.pgp
Description: PGP signature