当サイトでの、いわゆる半角カナの扱いについて

日本工業規格(JIS) には、 JIS X 0201 「7ビット及び8ビットの情報交換用符号化文字集合」 と呼ばれる規格があります。そのラテン文字・片仮名用8ビット符号では 左側(GL)でラテン文字(JIS X 0201 Roman)が定義されており、 右側(GR)でカタカナ(JIS X 0201 Kana)が定義されています。 一般的に「半角カナ」というのは、この JIS X 0201 Kana のことを指す場合が多いです。

この文書では、当サイトにおける JIS X 0201 Kana の扱いを決定します。

なお、この文書で行う定義は、当サイト内 (www.tomeibus.com) のリソースのみに対して 有効であり、他のサイトやその他の著作物で適用されるものではありません。

また、この文書で述べるのは HTTP を扱う場合の話であり、電子メールなどについては扱いが異なります。 電子メールについては、 電子メールの形式について を参照して下さい。

定義

当サイトで「いわゆる半角カナ」と書かれている場合、「いわゆる半角カナ」は JIS X 0201 Kana と等価です。 単に「半角カナ」などと書かれている場合は、その意味は定義しません。

「いわゆる半角カナ」の由来について

日本語処理機の能力が低かったころは、 JIS X 0201 を元にした 文字符号化方式を使用した文書が作成されていました。

しかし、日本語処理機の能力が上がり、 JIS X 0208 を使用しても 問題ないレベルに達しました。 このとき、 Microsoft などにより、従来の JIS X 0201 を元にした文字符号化方式と 互換性を保った上で JIS X 0208 の文字も使用可能である文字符号化方式が策定されました。 これがシフト JIS (Shift_JIS) です。

シフト JIS は JIS X 0201 と JIS X 0208 の2つの符号化文字集合を含んでいます。 この符号化文字集合の中で、ローマ字とカタカナについては JIS X 0201 と JIS X 0208 の両方で定義されています(すなわち、重複しています)。

多くの日本語処理機メーカは、 JIS X 0201 定義の文字を JIS X 0208 定義の文字の 半分の幅で表示することにより、 JIS X 0201 の文字と JIS X 0208 の文字を区別しました。 これが「全角」「半角」の由来です。 そして、JIS X 0201 Kana のことを指すときに「半角カナ」と呼ばれるのです。

最近は、文字幅が文字によって異なるプロポーショナルフォントが使われることが 多いため、 JIS X 0201 Kana が文字どおりに全角文字の半分の幅で表示されないことも 多くなっています。 JIS X 0201 Kana と JIS X 0208 のカタカナと区別がつかないことも珍しくありません。

当サイトにおける JIS X 0201 Kana の扱い

当サイトでは、原則として JIS X 0201 Kana を使用しません

当サイトでは、 HTML の記述に日本語EUC (EUC-JP) を使用しています。 EUC-JP には、 JIS X 0201 Kana の符号化方式も存在しているので、 技術的には JIS X 0201 Kana を使用することが可能です。 しかし、 JIS X 0208:1997 の付属書1 によると、 JIS X 0201 Kana の部分は将来削除する予定とされています。 そのため、 JIS X 0201 Kana を使うべきではないと考えています。

掲示板における JIS X 0201 Kana の扱い

掲示板においては、 JIS X 0201 Kana を使用した投稿は当分の間禁止します

当サイトの掲示板では、投稿時のメッセージ形式として application/x-www-form-urlencoded (詳細は HTML 4.01 を参照) を使用しています。この形式では、文字符号化方式の情報が受信側に送信されないため、 受信側で文字符号化方式を推測する必要があります。 この際、 JIS X 0201 Kana が混じっていると、受信側が実際の文字符号化方式と 異なる文字符号化方式と判断してしまう場合があります。

HTML 4.01では、非ACSII文字を含むテキストの送信には、 multipart/form-data を用いる必要があるとしています。 この方式の場合、非ASCII文字を含むテキストの送信時には charset パラメタを付加しなければ ならないので、これを使用して文字符号化方式を判別することができます。 しかし、実際には非ASCII文字を含むテキストの送信時に charset パラメタを付加しない 不正な User Agent が少なくないため、結局送信データの内容から文字符号化方式を判断しなければ ならないことが少なくありません。この場合も、 JIS X 0201 Kana が混じっていると、 文字符号化方式の判断を誤ることがあります。

以上の理由により、掲示板に JIS X 0201 Kana を使用して投稿を行うことはできません。

例外

例外として、 iモード向けページ (http://www.tomeibus.com/i/ 以下) では、 JIS X 0201 Kana も使用します。

iモードでは、端末の制約(画面サイズ、文書の容量)が厳しいです。 現在iモードにおいて著者側で文字の大きさを変更する方法は存在しないため、 JIS X 0208 のカタカナの半分の幅で表示するためには JIS X 0201 カナを 使う以外に方法がありません。

著者はこの方法は良くない方法であると考えており、 将来的には iモードにおける JIS X 0201 Kana についても廃止する方針でいます。

まとめ

当サイトでは、原則として「いわゆる半角カナ」すなわち JIS X 0201 Kana を 使用しません。

掲示板での投稿については、当分の間 JIS X 0201 Kana を使用することは避けて下さい。

例外として、 iモード向けのページで JIS X 0201 Kana を使用することはあります。 ただし、将来的には廃止する方向です。

附則:ASCII と JIS X 0208 の重複部分の扱い

JIS X 0201 Kana が JIS X 0208:1997 で削除予定となった理由は、

  1. 2つの規格(JIS X 0201 と JIS X 0208)で重複する文字があるのは好ましくない
  2. 将来の Shift_JIS の拡張の余地を残す

の2点です。

このうち、「2つの規格で重複する文字があるのは好ましくない」 という点を考えます。 当サイトが多くの文書で用いている日本語 EUC では、 ASCII と JIS X 0208 の両方が 使用可能です。 ASCII と JIS X 0208 の英数字と一部記号で重複する文字があるので、 好ましくない、ということになります。

そうすると、 ASCII と JIS X 0208 のどちらかに統一しなければなりません。 インターネットでは、 ASCII 文字を使用しなければならない場合が少なくありません。 例えば、この文書の HTML を記述する際、 HTML の開始タグ・終了タグの記述は ASCII 文字を 使用しなければなりません。また、 URI を記述するときも ASCII で記述します。

そのため、当サイトでは、 ASCII と JIS X 0201 Roman の両方に含まれている文字については、 ASCII の該当文字を使用する(JIS X 0208 の該当文字は使用しない)、という方針とします。

ASCII と JIS X 0201 Roman の両方に含まれている文字は、 ASCII 文字(いわゆる半角文字) の方を使用します。

"~" と "\" は、 ASCII と JIS X 0201 Roman で名称が異なります (ASCII では "~"(TILDE) と "\"(BACKSLASH)、 JIS X 0201 Roman では "¥"(YEN SIGN) と "‾"(OVERLINE))。 そのため、 JIS X 0208 の該当文字「 ̄」「〜」「¥」「\」を使用します。 ただし、 URI として使用する場合は "~" を使用することができます。 また、プログラムソースの表示で "~" と "\" を使用することがあります。

掲示板での使用についても、以上で述べた使用法を原則とします。 ただし、掲示板でこの原則に反する記述があっても、修正を行ったりすることはありません。

参考文献

全部は書きませんが、可能な限り多くの文献を挙げておきます。

  1. RFC1468 - Japanese Character Encoding for Internet Messages (J. Murai, M. Crispin, E. van der Poel, Jun 1993) (RFC1468の日本語訳)
  2. RFC2237 - Japanese Character Encoding for Internet Messages (K. Tamaru, Nov. 1997) (RFC2237の日本語訳)
  3. RFC2388 - Returning Values from Forms: multipart/form-data (L. Masintert, Aug. 1998) (RFC2388の日本語訳)
  4. HTML 4.01 Specification - W3C Recommendation 24 December 1999 (Dave Raggett, Arnaud Le Hors, Ian Jacobs, Dec. 1999) (HTML 4.01仕様書の日本語訳)
  5. 日本語と文字コード (神崎正英著)