On Fri, 26 Oct 2001, Tomohiro KUBOTA wrote:
> I found a problem on JIS X 0208 -> Unicode table in libX11
> (xc/lib/X11/lcUniConv/jisx0208.h).
>
> The reverse solidus in JIS X 0208 is mapped into U+005C
> in the above file.  Since JIS X 0208 is almost always used
> with combined with ASCII, it causes a conflict between
> reverse solidus in JIS X 0208 and ASCII.
>
> This is why GNU libc maps reverse solidus in JIS X 0208
> into U+FF3C (FULLWIDTH REVERSE SOLIDUS).  Thus, the current
> situation of libX11 causes a conflict of mapping tables
> between GNU libc and XFree86.
>
> I found this bug when I input fullwidth reverse solidus
> using Japanese XIM and XTerm under UTF-8 locale.
>
> I remember Markus Kuhn admited this is a problem, though I
> cannot show the mail now....

I documented and discussed the issue in

  http://www.cl.cam.ac.uk/~mgk25/unicode.html#conv

"The Unicode mapping tables also have to be slightly modified sometimes to
preserve information in combination encodings. For example, the standard
mappings provide round-trip compatibility for conversion chains ASCII to
Unicode to ASCII as well as for JIS X 0208 to Unicode to JIS X 0208.
However, the EUC-JP encoding covers the union of ASCII and JIS X 0208, and
the UCS repertoire covered by the ASCII and JIS X 0208 mapping tables
overlaps for one character, namely U+005C REVERSE SOLIDUS. EUC-JP
converters therefore have to use a slightly modified JIS X 0208 mapping
table, such that the JIS X 0208 code 0x2140 (0xA1 0xC0 in EUC-JP) gets
mapped to U+FF3C FULLWIDTH REVERSE SOLIDUS. This way, round-trip
compatibility from EUC-JP to Unicode to EUC-JP can be guaranteed without
any loss of information."

Markus

-- 
Markus G. Kuhn, Computer Laboratory, University of Cambridge, UK
Email: mkuhn at acm.org,  WWW: <http://www.cl.cam.ac.uk/~mgk25/>

_______________________________________________
I18n mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/i18n

Reply via email to