[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-devel:13370] Re: xearth の国際化
At Thu, 7 Dec 2000 01:29:48 +0900,
Tomohiro KUBOTA <tkubota@xxxxxxxxxxx> wrote:
> ところで、リソースとはなんぞや、ということについて、ちょっと実験
> してみました。xearth では、まず、x11.c のなかで
>
> XrmDatabase db = XtDatabase(dsply);
>
> とやって、リソースデーターベースなるものを取得しています。つぎに、
> 個々のリソースは、resource.c のなかで、
>
> XrmGetDatabase(db, full_name, full_class, &type, &value);
>
> というふうにして取得しています。で、こいつはどのロケールカテゴリーに
> 従って動作するんだろう、という疑問があります。というわけで、ためしに、
>
> LANG=ja_JP.eucJP LC_ALL=ko_KR.eucKR xearth
>
> というふうにしてみたら、なんと化ける化ける。日本語の地名を
> 韓国語のフォントを使って表示してしまいます。私が作った日本語
> パッチは LC_CTYPE ロケールに従って動作するので、LC_ALL=ko_KR.eucKR
> に素直に従うのですが、リソースの読み込みは、そうじゃないみたいです。
> LANG 環境変数に従っているだけ、という感じです。
LANG は LC_ALL に *いつも必ず* override されるべきです。
つまり、明らかに、以上のテスト結果はおかしな動作に見えます。
> これって、X の設計が悪いんじゃないの、って思うのですけど、じゃあ
> どのカテゴリーに従うべきなのか、というと、どれとも答えようが
> ないんですよね... まあ、実際に使われている用途の頻度から言えば、
> LC_MESSAGES が妥当かな、というところですが、そんなのを X に実装
> するなんて、汚すぎていやっぽいですよね。けっきょく、カテゴリー別に
> 設定できる C のロケールと、なんでも格納できてしまう X のリソースとは、
> うまく統合できないのでしょうか。
xearth が LANG をみている可能性があるようです。
また、ukai さんによれば X_LOCALE が定義されているとき、
そのような動作になる可能性があるそうです。
--
後藤 正徳