[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-devel:10310] Re: Draft 1 (Re: I18N Document)
岡@奈良先端です。
At Tue, 7 Sep 1999 22:14:02 +0900,
Tomohiro KUBOTA <kubota@xxxxxxxxxxxxxxxxxxxxx> wrote:
>
> 久保田です。
> > > * SHIFT-JIS (aka Microsoft Kanji Code)
> > > - stateless
> > > - 8bit
> > > - ASCII, JIS X 0201, and JIS X 0208 can be expressed.
> > > - The only Japanese code for Windows/Macintosh. This makes
> > > SHIFT-JIS the most popular code in Japan.
> >
> > UNIXでもSHIFT-JISを使っている(いた)ものもありますよね。
> > X68000などでも使ってたはずだし。ですので、“only”ではないです。
SONYのNEWS-OSとか。
> すみません、Win/Mac は SJIS "だけ" をサポートしている、という
> 意味にしたかったのです。(UNIX では標準がなく、どちらかというと
> EUC が好まれている、くらいであるのと対比させたい)。それから、
> ここでは UNIX だけを対象にしています。(Win/Mac を登場させたのは、
> 日本で最も広く使われている、ということを言うために引き合いに出した
> だけです)。
JISやSJIS(やUNICODE)は排除できるものではないですね。日本での
ICQクライアントの事実上の標準はSJISですし、Windows向きに焼か
れてしまったJolietなCD-ROMはUNICODEです。
> > きいた話でよくわからないのですが、EUCには3バイト文字があるらしい
> > のですが…えっと、0x8fで始まるやつですね。上の文章には含まれてないので
> > いいか。
>
> 存在します。でも、日本人でさえ知らないようなコードですからね...
> とりあえず、EUC は日本語は 2 バイトだというのは間違った表現
> なので変えます。
以下のようになっています。
* EUC コード日本語版 (EUC-JP)
ASCII : 0x00 〜 0x7f
ss2 : 0x8e
次の1バイトで半角カナを表現(JIS X0201)
ss3 : 0x8f
次の2バイトで外字(ユーザ定義文字)を表現
漢字の頭1バイト : ??? 0x80 〜 0x8d
次の1バイトと合わせて使って漢字一文字
(JIS X0208 の最上位ビットを1にしたもの)
てな感じです。
> > プログラムの内部で使われるコードはなんでもよいのですが、外部との
> > やりとりをするときには変換しなくちゃいけない…なんてのは範囲外の
> > 話かな。
>
> Contents の 5 とかに入る予定です。wchar_t を使いましょう、
> という内容にしたいと思っています。そうすると、内部表現に
> かんする知識を一切使えないので、厳密な I18N ができます。
> でも、カラム数が必要となる場合はどうなるんだろう...
> このへんが、難しいところですね。カラム数って、規格には
> ないですから。(でも必要)。
きちんとI18N化できてなくて支障を来しているソフトウェアの例。
gettextです。msgmergeを使うと、しばしばEUCの日本語でさえ1バ
イト目と2バイト目の間で分断されてしまいます。wchar化すれば解
決します(が、コード全体を一掃しなければならない)。
--
岡 充 (Mitsuru Oka)
奈良先端科学技術大学院大学