From: Bruno Haible <bruno@cl...> - 2005-02-26 15:31:35
> UTF-8 is hard-wired in modules/i18n/gettext.c in many many places.
> when should it be replaced with *MISC-ENCODING*?
do_gettext, do_ngettext: should stay UTF-8.
I18N:SET-LOCALE: should be replaced with ASCII.
I18N:LOCALE-CONV, res_to_obj: should be replaced with *MISC-ENCODING*.
GetLocaleInfo: Probably should not use LOCALE_USE_CP_ACP, since the doc says
"The ANSI string returned by the ANSI version of this function is
translated from Unicode to ANSI based on the default ANSI code page for
the LCID. However, if LOCALE_USE_CP_ACP is specified, the translation is
based on the system default ANSI code page."
locale_string_to_STACK: should be replaced with *MISC-ENCODING*.
From: Bruno Haible <bruno@cl...> - 2005-02-28 13:04:38
> > I18N:SET-LOCALE: should be replaced with ASCII.
> since ASCII is a subset of UTF-8, I see no harm in using UTF-8.
It harms portability. If something works in the de_DE.UTF-8 locale but
not in the de_DE locale, and the developer happens to use the de_DE.UTF-8
locale, he won't notice the problem until users report it to him.
In other words: when some code is expected to work in ISO-8859-1 and EUC-JP
locales as well (and you are not talking about the internal representation
inside clisp but rather about an external interface) then you cannot use UTF-8.
If you really don't like ASCII here, then use *MISC-ENCODING*.