Dr.Kの徒然日記-はてな支部-

健康専門の医師、Dr.Kの日々のつぶやきブログ

【全角/半角問題とは】

こんにちは、Dr.K(ドクターコージ)です。

 

最近ついつい観てしまう、

InstagramのKevin's English RoomLogin • Instagram

アメリカ文化と日本文化の違いを、

コミカルに表現されてるのが面白く、

素晴らしいと感じています。

 

その中にあった「全角ってなに?」

と言う問題提起。

Login • Instagram

 

↑特定の文字列の中にリンクを埋め込むのが、iOSアプリで上手く出来ません(^◇^;)

 

確かに欧米の1バイト文字文化圏の人には、

全く理解不能かと思います。

 

若い日本人の中にも、

全角数字やら全角アルファベット、

半角カナなどの存在が意味不明と言う

人達も結構いる様です。

 

コレらの異種文字が混在してるのは、

複雑化する為の理由があると言うよりは、

コンピューターで文字を表示する為の

文字コードと言う規格が

歴史的に複雑に変わってきた中で、

前からあったのを廃止できなくて、

新たな文字コード内にも残さないと、

既存のデータベースを読み込めない、

と言う問題で起きていると言うのが、

正確な理解かと思います。

 

自分も知識を整理する為に調べてみたので、

似た様な疑問をお持ちの方の

参考になればと思います。

 

そもそもコンピューター黎明期には、

ASCIIと言う1文字7ビットの米国発の

今で言う半角英数字の表示規格が出来、

それしか表示出来ませんでした。

 

その後半角カナを取り入れた

JIS X 0201という規格ができ、

その頃のコンピューターは

半角カナと英数字しか表示出来ず、

少し進化したポケットベルや初期のPHSは、

この時代に流行った感じですね。

 

この規格はASCIIコードを8bitに拡張し、

前半分はASCIIコードそのままで、

後半分に半角カナを実装した方式で、

似た様なやり方で、独特なフォントのある

フランス、タイ、ソ連(当時)なども

独自規格の8ビットコードを使ってました。

 

その後JIS X 0208という

1文字16ビットの規格ができ、

ひらがな、漢字が表示されますが、

これには全角カタカナと、全角英数字が

入ることになります。

 

縦書き表示を前提とした業界では、

半角英数字や半角カナは90度横に寝て

表示されてしまう為に、

出版業界では英数字を全角にする、

と言う校正が入ることもありました。

 

漢字文化圏の中国、韓国、台湾も

独自の16ビット規格を作りました。

 

その後文字コードを世界共通の

Unicode(1文字のビット数は文字種によりバラバラ、マックス100万文字)に

するのが主流となりました。

 

このときUnicodeから

半角カナと全角英数字を廃止出来れば、

コンピューター処理の上でもスッキリしたのですが、

過去のデータベースが読めなくなることから、

それらを含む形で規格化されてしまいました。

 

検索や置換などデータを扱う際に、

結構困るんですけどね。

 

今でも銀行システムなどに

半角カタカナが使われていたりします。

 

自動的に半角変換や全角変換の処理をする

と言うのはプログラム的には1行入れれば

出来ることですので、

表面上のUIとしてはどちらを入れても良い、

とした方が利便性は遥かに高まる、

と言う気もしますし、

過去のデータベースに手を入れずに、

古いシステムの遺産の文字コード

使い続けると言うのも変な話です。

 

憲法や法律などもそうですが、

古いデータベースの文字コードも、

社会情勢や環境に合わせて、

随時置換していく必要があるかと思います。

 

近い将来、それが簡単に出来る様になれば、

文字コード問題もかなりシンプルになる

かも知れませんね。