[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[palm-unix-j:00313] Re: KPilot 4.3b
From: Takuro Ashie <ashie@homa.ne.jp>
Message-Id: <20020525021930.0a1d0976.ashie@homa.ne.jp>
> > まぁ多分、Palm(SJIS)とPC(EUC)とで、文字コードが異なってるケースって珍
> > しいと思いますので、J-Pilotのように日本でハックしないことには始まらな
> > いんでしょうね。やることは、LANGかLC_CTYPEを見て、適宜 iconv に通すだ
> > けなんですが…(gnumericとかのスプレッドシートのExcelファイル回りがこう
> > いう実装になってる)
>
> 最近のpilot-linkにはiconvを使った文字コード変換機能が実装されています.
> (libpisock/util.c)
>
> これはどうも GNOME の Evolution のためにhackされた物では無いかと
> 邪推しています.
あ、なるほど、そういうアプローチもアリですね。
> で、Evolutionではこの機能が使われているのですが、Palm側の内部コードが
> CP1252 にハードコードされているため、そのままでは日本語は通りません.
>
> #define PILOT_CHARSET "CP1252"
>
> となっている所を適当に SHIFT_JISとかに変えると、とりあえずEvolutionでは
> 日本語が通るようになるようです.
gnumericでは、こんな感じですね。
char *lang;
char const *locale = setlocale (LC_CTYPE, "");
char const *lang_sep = strchr (locale, '.');
if (lang_sep)
lang = g_strndup (locale, lang_sep - locale);
else
lang = locale;
で、lang と iconv に与える codepage の対応表を持ちます。
日本語だと、"japan", "japanese", "ja", "ja_JP" に対して CP932(SJIS)を
対応させればオッケー。デフォルト値を CP1252 にしとけばいいんでしょうね。
_______________________________
田原 俊一 jado@flowernet.gr.jp, shunichi_tahara@zenrin.co.jp
http://flowernet.gr.jp/jado/
FingerPrint: 16 9E 70 3B 05 86 5D 08 B8 4C 47 3A E7 E9 8E D9
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄