[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-devel:13849] Re: iconv()



おかもとです。	

At Tue, 27 Feb 2001 12:15:39 +0900,
Tomohiro KUBOTA <tkubota@xxxxxxxxxxx> wrote:
> >    TILDA ('~', U+007E) -> OVERLINE (U+203E).
> >    BACKSLASH ('\', U+005C)  -> YEN (U+00A5).
> これは、Shift_JIS の定義をそのまま実装すると、こういうふうになるのが
> 自然です。というのは、Shift_JIS の 0x21-0x7e は JIS X 0201 Roman 
> だからです。(EUC-JP の 0x21-0x7e は ASCII です)。
> 
> まあ理屈の上ではそれが自然であっても、実用上は変なので、
> どうすればいいんでしょうねえ。

私の場合、jikes という Java コンパイラのマルチバイト文字対応をしていた
のですが、コンパイラだけに変なコード(ほんとは正しいけど)にマッピングさ
れるとエラーが出るので大問題です。

> > あと、iconv を使って、1文字づつ文字を変換する方法はないんですかね?
> > 一応、下記のような感じでは可能なのですが(xxx -> utf-16 への変換の場
> > 合)....
> 
> 上記 XTerm の国際化のパッチを参照してください。charsets.c の最後の
> ほうに 3 つほどある関数が、それ関係です。ただし、私自身、どこまで
> 対応すればまあまあな移植性が達成できるのか、わけわからん状態です。

やはり既に同じ様な苦労をしている方がいたのですね(^^;;
ちなみに、jikes の場合、ICU も使えるようになっています。この辺りは、
ICU の方が使い易そうな気がします。(コードを見ただけで、実際に使ったこ
とはありませんが...)

> 田尻です。
> glibc 2.2.2(Debian package だと>=2.2.1-2)だとSJISのかわ
> りにIBM932をつかうと
> 0x7E -> U+007E
> 0x5C -> U+005C
> に変換されます。(CP932,MSKANJIではだめ)

それは、便利になりそうですね。
# でも、そのような新しい glibc を使っているユーザはまだ少ないので、
# Shift_JIS の為の対処はまだ必要そうですね。むぅ。
-------------------------
岡本隆史