[Tokyo-pm] [案内] レガシーエンコーディングの変換機能の開発
MORIYAMA Masayuki
moriyama @ miraclelinux.com
2006年 3月 14日 (火) 21:33:59 PST
ミラクル・リナックスの森山です。
このメールは複数のメーリングリストに出している為、同じメールを受け取る
場合があることを、あらかじめお詫びいたします。
弊社が 2005年度 下期 オープンソースソフトウェア活用基盤整備事業に対し
て提案した「オープンソースソフトウェアにおける統一したレガシーエンコー
ディングの変換機能の開発」採択されました。
本件では、オープンソースソフトウェア(以下、OSS)の Unicode 対応で生じて
いる日本語文字コード変換で新たな問題を解消するため、統一したコード変換
の実装、および変換ガイドラインの作成を行います。この作業成果により、各
OSS ごとに独自の実装されている文字コード変換処理の仕様を統一し、異なる
OSS でも同じ文字コード変換処理が可能となります。本件の開発作業対象 OSS
に、Perl を加えたいと考えております。
なお、弊社で想定している文字コード変換問題は、以下の通りです。
o 「~」が文字化けする。
- WAVE DASH vs FULLWIDTH TILDE 問題。
- cp932/eucJP-ms と iso-2022-jp との間で文字コード変換が出来ない。
o sjis と euc-jp 間で相互に文字コード変換が出来ない。
- US-ASCII と JIS X 0201 ラテン文字 で 0x5C/0x7E の Unicode との
対応付けが異なる事による問題。
o 従来変換可能であった機種依存文字 (Windows) が Unicode 化によって変
換出来なくなった。
- Windows で JIS X 0208 の未定義領域の13区に定義されている丸付き
数字が Unicode 化により変換できなくなった。
- 機種依存文字をシフトJIS、日本語EUC、7ビットJISコードの間で相互
変換できない。
o EUC-JP で入出力を行うような Web アプリケーションで機種依存文字が文
字化けしてしまう場合がある。
- eucJP-open vs cp51932 (Windows EUC-JP = Codepage 51932)
- DB (PostgreSQL, MySQL5) の機種依存文字対応EUC-JP と Web ブラウ
ザ (IE, FireFox 等) が POST する EUC-JP の機種依存文字のコード
割り当てが異なる為に発生する問題。
これらの問題を解決するためには、次のような要件を満たす必要があると考え
ています。
(1) 日本語EUC、シフトJIS、7ビットJISコードの 3 つの符号化方式間の相
互変換で文字化けを起こさないようにする。
(2) Windows の機種依存文字 (マイクロソフト標準キャラクタセット) を変
換出来るようにする。
(3) ソフトウェア間の文字コードの互換性確保。
「オープンソースソフトウェアにおける統一したレガシーエンコーディングの
変換機能の開発」では、次の文字コードを主なオープンソースソフトウェア
(OSS) に実装して使えるようにする事で、上記3要件を満たします。
o CP932 シフトJIS符号化方式 (Windows Codepage 932)
o CP51932 日本語EUC符号化方式 (Windows Codepage 51932)
o eucJP-ms 日本語EUC符号化方式 (TOG/JVC eucJP-open)
o ISO-2022-JP-MS 7ビットJIS符号化方式 (Windows Codepage 50221+UDC)
本開発では、Perl を含む以下の OSS が作業対象です。
o GNU libiconv
o GNU libc
o Perl(Encode)
o Python
o PHP
o Ruby(NKF)
o PostgreSQL
o MySQL
o nkf
Perl では、すでに Encode モジュールで cp932、Encode::EUCJPMS モジュー
ルで cp51932, eucJP-ms への対応が進んでいますので、Encode::ISO2022JPMS
モジュールを開発し ISO-2022-JP-MS を Encode モジュールで変換できるよう
にする事を考えています。
詳細な情報は、http(s)://legacy-encoding.sourceforge.jp/ にて、発信予定
しています。
日本語文字コードの問題を話し合うメーリングリストを作成しましたので、質
問等は、以下のメーリングストへお願いいたします。
http://lists.sourceforge.jp/mailman/listinfo/legacy-encoding-talk-ja
YAPC::Asia 2006 Tokyo でも本件に関して話す事になりましたので、よろしく
お願いいたします。
以上、よろしくお願いいたします。
--
森山 将之 moriyama @ miraclelinux.com
ミラクル・リナックス株式会社
Tokyo-pm メーリングリストの案内