[pgsql-jp: 30791] Re: 漢字3 とは

MORIYAMA Masayuki msyk @ mtg.biglobe.ne.jp
2003年 8月 15日 (金) 20:08:06 JST


森山です。

At Fri, 15 Aug 2003 14:50:13 +0900,
Yumiko Ono さん:
> >ちなみに、TeraTerm の EUC では eucJP-open の 13区(NEC特殊文字) 
> >以外の機種依存文字を正しく表示できません。TeraTerm の EUC で IBM
> >拡張文字 (NEC選定IBM拡張文字) が正しく表示できてしまっている場合
> >は、PostgreSQL の変換で期待する変換が行われず、他のソフトで 
> >PostgreSQL に UTF-8 や SJIS でアクセスして表示させると文字化けし
> >ます。
> 
> ショック!そうだったのですか!!
> TeraTermProを使用しています。
> KANJI設定をEUCにしてちゃんと見えていたので、
> DBにEUC_JPで入っていると思い込んでいました。

JIS漢字(JIS X 0208) の文字だけを使っている分には、まったく問題あ
りませんが、いわゆる機種文字を使うのであれば、こまかな違いをきち
んと把握しておかないと、不可解と思われる現象に悩まされる事になっ
てしまいます。

> ># ちなみに、Widnows 用ブラウザの EUC-JP は、上記ページで説明され
> ># ている eucJP-open(eucJP-ms) とは別物で互換性はないので注意が必
> ># 要です。
> 
> これまたショック!IE 恐るべし。

IE に限った話ではなく、Windows 用のソフトの EUC-JP は、だいたい
IE と同じようなものです。Windows 用の ソフトでは一部のソフトを除
いて eucJP-open を扱えるソフトは皆無と言ってもいいでしょう。

eucJP-open は UNIX ベンダーが、MS とは関係なく勝手に決めたもので
すから、MS がそれに従う義理は無いとも言えます。

ちなみに、秀丸エディタや EmEditor で、PostgreSQL の EUC_JP を直
接編集する場合は、機種依存文字が含まれていない場合に限ります。
13区のNEC特殊文字くらいなら問題なく扱えますが、それ以外の機種依
存文字は、Windows 用のテキストエディタでは扱う事が出来ませんので
ご注意を。

UNIX のテキストエディタでも機種依存文字が含まれている場合は、正
しく文字コード変換出来ないですね。というより、PostgreSQL の 
EUC_JP (eucJP-open) を正しく扱える、テキストエディタは無いのでは
ないかと思われます。

Qt のアプリケーションソフトだと、環境変数 UNICODEMAP_JP を次のよ
うに設定する事で、eucJP-open を扱える可能性がありますが…(未確認)

  export UNICODEMAP_JP="open-19970715-ms,nec-vdc,ibm-vdc,udc"

> >  mbstring.internal_encoding    = eucJP-win
> >  mbstring.http_output          = Windows-31J
> ここがミソですね。

そうです。

> >  mbstring.http_input           = ASCII,JIS,Windows-31J,UTF-8,EUC-JP
> URL エンコードのからみで、悩んだことがあるのですが、
> 上記で問題なかったですか?

すみません、PHP は、ほとんど使っていないので、この辺の設定はあま
り詳しくないです。

ただポイントとなる点としては、SJIS の代わりに、Windows-31J
(SJIS-win でも良い) を使い、Windows-31J を EUC-JP より先に認識さ
せる必要があると思われます。

ここで、EUC-JP の代わりに eucJP-win を使っても結局は、ブラウザが 
eucJP-win(eucJP-open) で送信してくるわけではない事と、最近のブラ
ウザでは、入力フォームと同じ文字コードで送信してくる事がほとんど
なので、EUC-JP については、深く考える必要はないと思われます。

> 話題は、PHPのMLのほうに移ったほうがよいのかもしれません。

文字コードがらみの話は、各ソフトウェア・コミュニティで閉じた話に
なってしまっているので、複数のソフトを組み合わせて使う場合に、設
定が全然違って悩むとか、そもそも機種依存文字には対応していないな
どで、苦労させられますね。

‖ 森山 将之 (MORIYAMA, Masayuki) 
‖ E-Mail: msyk @ mtg.biglobe.ne.jp 




pgsql-jp メーリングリストの案内