[what's new!] [link] [IPA]

その1 インターネットにおける日本語


 インターネットにおける日本語エンコード方式の正しい設定は、 RFC1468によればISO-2022-JP(いわゆるJISコード)であり、これに含まれるキャラクタ セットはJIS X 0208-1978,-1983、いわゆる全角文字で、JIS X 0201-1976(半角カナ)は含まれません。一応、「It does not specify an Internet standard.」とは書いてありますが、 電子メールとNetNewsでは日本語はISO-2022-JPを使うことに なっています。
#JIS X 0208の細かいことはJISハンドブックでも読んで下さい:-)
#JIS X 0208は古いプリンタの説明書に載っていることもあります。

 また、最近のWWW(HTML)では多国語対応が強化されているため、 シフトJISや日本語EUC(EUCには他に韓国語などもあります:-))を 含む様々な国の文字コードが使えるようになりました。そこで必要 になったのが、次のような文字コードの指定です。
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-2022-JP">
これによって、従来はJapanese(auto-detect)でシフトJISと日本語 EUCの判別に失敗していたような場合でも、最初から正しい文字 コードで表示することが出来ます。しかし、良いことばかりかと いうとそうでもありません。一部のproxyサーバは文字コード変換 フィルタを内蔵している場合があり、変換後の文字コードと矛盾が 起きることがありますし、一部のブラウザは文字コードの指定方法が 現在の規格と異なるために、正しいコードが表示されないことが あります。そういった意味では、HTMLでも日本語を使うときには ISO-2022-JPを使うことが正しいのかもしれません(ISO-2022-JP はもっとも古い規格なので、日本語対応ならば必ず実装しています)。
#この文字コード等の設定はメールで使われるMIMEと同じです。

 その他に、機種依存文字は後池田さんも指摘されている通り、 使うべきではありません。この機種依存文字ですが、NEC 98系 文字やWindows系文字といった機種依存文字を調べて公開している ネットやサイトがあるので、infoseekなどで 探してみて下さい。キーワード「機種依存文字」で大量にヒット すると思います。
#でも、機種依存文字ってNiftyみたいに直接テキストで書か れても読めないので気になるんですよね。GIFイメージに変換して 置いてくれると全機種で見られるので嬉しいんですが。
##戯れ言ですが、NEC 98シリーズに添付されていたN88日本語 BASICは7bitJIS系です。NECがインターネットに理解があるから というわけではなく、単に昔は旧JISしか無かったからですが。

追補
 CGI等で日本語を扱う場合、受け取ったデータをデコードした 後に、nkfのような文字コードフィルタをかけてコードを統一する、 半角カナ文字を見つけたら全角に変換する、というのがコツです。 もっとも、私は日本語処理が面倒なのでそういったCGIを組んだ ことはありません。

追補2 (けっこう重要です)
 RFCはRequest For Commentsの略で、インターネット上で 使用される各種の約束事を定めた文書のことです。法的な 強制力はありませんが、アプリケーションやハードウェアを 作る場合はこれに従って設計・実装することになっています。 登録された順に番号が振ってあり、たとえば電子メールのRFC の場合はRFC821(転送方式) とRFC822(メッセージの構成) などがあります。

後書き
 え〜、ちょっと(意訳:だいぶ)長くなってしまいましたが、 いかがでしたでしょうか? 本当のことをいうと、書きたい ことはまだいくつかあるのですが、書いているうちにどんどん 長くなってしまい、いっそのこと自分のWWWページに置いてURL だけ投稿しようかと思ったのですが、とりあえず文字コードに 関してだけは投稿することにしました。ご迷惑でなければ続編の 「電子メールシステム」(作成済み約110行5KB)と「BSD UNIX and Network」(これは無いかも)も投稿したいと考えています。
注:結局、ポインタだけ投稿することにしました(笑)

 最後に参考文献を一冊。アスキーの 「インターネットを256倍使うための本Vol.1」は有用な情報と乾いた笑いに 満ちています。ぜひご一読を。


[裏方亭indexへ] [裏方亭掲示版へ] [ここのindexへ]