機種依存文字について
【お断り】
この文書には、機種依存文字が記してあります。原則として、
シフトJISを用いる Windows環境 で、ご覧ください。
[ 他の環境では、一部の文字が文字化けします。]
【付記】
この文書は印刷されることを想定しています。なるべくMS-Word や
一太郎の形式に変換して、印刷することをお勧めします。
【注意】
この文書を印刷する場合には、全文の色を「黒」に変換してください。
元の色のままモノクロ印刷すると、薄い色は印刷されません。
概要
(1)機種依存文字の例
機種依存文字は、Eメールを出す際などに、しばしば問題となる。Windowsの環境から送ったメールを、Mac環境などで受け取ると、一部の文字は文字化けする。
たとえば ○と1を合成した文字(まるいち)などがそうであり、アルファベットの iに似た形のローマ数字がそうだ。
これらは機種依存文字として有名である。
これら以外にも、機種依存文字はたくさんある。有名なものでは、次の形のものがある。
(株) No. TEL 昭和
ここでは、普通の文字を複数組み合わせて表示した。(だから、上の例は文字化けしていないはずだ。)一方、こうした字形とそっくりな字形を、1文字にした記号がある。それが機種依存文字である。
【付記】 半角カタカナとの差
Eメールでは、半角カタカナは、絶対に使ってはいけない。一方、機種依存文字は、相手が同じマシン環境であることがわかっていれば、使ってもよい。つまり、機種依存文字は、Eメールで「(必ず)文字化けする」のではなくて、「文字化けしない保証がない」にすぎない。
【付記】 Eメールと半角カタカナ
Eメールでは半角カタカナを使ってはいけない理由は、なぜかといえば、UNIX 系のサーバが、文字コードとしてシフトJISとは別の文字コードを使っていることによる。
UNIX 系の ISO-2022-JP やISO-2022-JP-2 では、JIS X 0201 の後半部分( ≒ いわゆる「半角かな」領域)が、使用禁止されている。(RFC1468とRFC1554を参照) ……これが原因で、ISO-2022-JP で半角かなの文字化けが生じうる。
また、unix系の EUC(Extended Unix Code)では、半角のところでJISやシフトJISとは別の処理をするので、Eメールでは文字化けを生じる、という話を聞いたこともある。
(ただし、異論あり。EUC-JP では JIS X 0201 の後半部分はG2集合に呼び出されており、半角カタカナを普通に使える、とのこと。UNIX でも使えるそうだ。ただ、EUC というものはいろいろと規格がある。また、UNIX では JIS X 0201 用のフォントがインストールされていない場合も多々ありそうだ。)
【付記】 HTMLファイルと半角カタカナ
Eメールでなく、WWWのHTMLファイルの場合は、少し事情が異なる。半角カタカナがあっても、Eメールのように、伝達の途中で勝手に文字化けが生じることはないようだ。ダウンロードした人の環境がunixの場合には半角カタカナを読みとれない、ということだけのようだ。(このあたり、記述に自信なし。)……ま、いずれにせよ、HTMLファイルでも、半角カタカナを使わない方が無難のようだ。[ただ、私自身がWindows環境で確認した限りでは、半角カタカナの入ったHTMLファイルは、問題なく読みとれた。常に大丈夫かどうかは、保証の限りではないが。]
【 追記 】
表紙ページの [ 補足 ] (code12ks.txt) に追加情報あり。
なお、半角カタカナのインターネット上での文字化けについてチェックしたければ、次のページをダウンロードするとよい。(一部の文字は表示されないが、それは文字化けとは別の理由。私自身が確認した範囲では、別に問題はなかった。アップロードしたファイルと、ダウンロードしたファイルは、同じだった。)
http://hp.vector.co.jp/authors/VA011700/moji/hankaku.txt
【付記】 HTMLファイルと機種依存文字
WWWのHTMLファイルで(シフトJISファイルの)機種依存文字は、通信上では文字化けしない。それを読み取るマシン環境によって、正しく読み込めたり、正しく読み込めなかったりするだけだ。
(2)機種依存文字の定義
では、機種依存文字とは何か?
それは簡単である。シフトJIS文字のうち、JISでは定義されていない文字のことである。具体的には、後述する。
【付記】 用語
機種依存文字は、「システム外字」「メーカ定義文字」「ベンダー固有文字」と呼ばれることがある。
なぜ「外字」という言葉で呼ばれるかというと、JISでは定義されていないからである。これらの用語については「ほら貝」のページ(下記)を参照。
http://www.horagai.com/www/moji/code2.htm
なお、機種依存文字というのは、名前のごとく、機種によってさまざまである。DOS の時代には、メーカごとに異なっていたようだ。(この件、後述する。☆で)
【付記】 EUC ・ その他 [ New ! ]
本稿における機種依存文字とは、原則として、シフトJISにおいて現れる機種依存文字のみを言う。
unix 用文字コードのEUCにおいては、独自の外字領域があるが、これは、シフトJISの外字領域と一定の規則で対応する。
このことについては、本稿では述べない。下記のページに詳しいので、こちらを見てほしい。
http://www.opengroup.or.jp/jvc/cde/sjis-euc.html
ワープロ専用機の場合は、各社ごとに独自の機種依存文字を用いている。しかし、これは、あまり考慮する必要はないようだ。というのは、次のようになっているからである。
・ワープロ専用機のファイルは独自の形式なので、もともとパソコンと互換性はない。
・ファイルをMS-DOS形式にコンバートしたときは、機種依存文字も適切に置換される。
たとえば、 (株) → 株 と置換される。
※ 実際にそうなっているかどうかは、各自で確認されたい。少なくとも、私の手持ちの
ワープロ専用機では、そうなっている。
(3)注意点
前述の(1)と(2)を比較すると、重要なことがわかる。
世間の一部では、しばしば、次のように理解されている。
「Eメールでは機種依存文字を使ってはいけない。そして機種依存文字とは、特殊な記号である。だから、特殊な記号を使わなければ、大丈夫。つまり、数字・アルファベット・ひらがな・カタカナ・漢字だけを使えば、安心だ。また、普通の記号( ★ や ◎ や 数学記号など)も使ってよい。」
これは間違いである。
つまり、特殊な記号以外の文字も、使ってはならないものがある。
第一に、
数学記号である。√ や ∫ など数学記号は、理系の人々の書くEメールでしばしば使われる。「数学記号は使っても問題ない」と思っている人が多い。しかし、これらの数学記号のうちには、使ってよいものと、使ってはいけないものとが、混じっているのだ。つまり、機種依存文字と、通常のJISの文字が、混じっているのだ。
第二に、
漢字である。「漢字ならばすべて安全」というのは間違いである。漢字のうちには、使ってはならないものがある。一部の漢字は、機種依存文字としての漢字、つまり、第一水準・第二水準の外にある漢字である。
※ Unicodeの補助漢字もEメールでは使えない。しかしこれらの漢字は、そもそもメール
ソフトでは表示されないので、とりたてて問題にする必要はなさそうだ。
(細かく言えば、補助漢字をメールで使う方法は、なくもない。ISO-2022-JP-2
等で使う方法は、すでに一部で利用されている。
ただ、普通は、添付ファイルで利用するべきだろう。HTML や doc の形式でな
ら、一般ユーザでも使える。
なお、補助漢字について詳しくは、表紙ページにリンクした他のページを参照。)
(4)他の注意点
上の(3)以外でも、機種依存文字については、注意すべきことがある。すなわち:
・同じ字形の文字について、複数のコードが割り当てられていることがある。
・IMEのカナ漢字変換で出力すると、機種依存文字が出ることがある。
・IMEの付属機能の文字コード一覧には、問題(設計ミス)がある。
このような問題があるので、意図しないにもかかわらず、機種依存文字を使ってしまうことがある。
以上が、このホームページで示すことの概要である。
以下では、細かく詳述する。
本論
《1》 機種依存文字とは
機種依存文字を正式に定義するには、文字コード表が必要である。
表紙ページ(http://hp.vector.co.jp/authors/VA011700/moji/code00.htm)には、資料として「文字一覧」を掲げた。これをダウンロードして、見てほしい。
【付記】 他の表
ATOKの「文字パレット」、MS-IME98の「IMEパッド」も、文字コード表のかわりになる。
ただし Windowsの「文字コード表」や、Wordのメニューからの「記号と特殊文字」などは、コード番号がわからないので不可。
(i)
区点コードで、00840以降、 01600以前の領域がある。(たいてい空白の領域)
そのうちの 01300以降、 01392以前の領域には、(空白ではなく)記号がある。これらは機種依存文字である。(
13区の機種依存文字)
(ii)
区点コードで、08500以降、11500以前の領域がある。(たいてい空白の領域)
そのうちの、08901から09295までの領域と、11501から11912までの領域には、(空白ではなく)記号がある。つまり、
89区から92区までの機種依存文字と、
115区から119区までの機種依存文字である。
《2》 機種依存文字の領域
上に三種類の機種依存文字を述べた。
これらには、次のような名称が付けられている。まとめると:
[A]
NEC特殊文字 ……………… 13区の機種依存文字
[B]
NEC選定IBM拡張文字 …… 89区から92区までの機種依存文字
[C]
IBM拡張文字 ………………… 115区から119区までの機種依存文字
【付記】 別称
・ [A] と [B] は、あわせて「NEC拡張文字」という。
・ [A] と [B] は「98文字」または「98外字」という用語も見られる。(俗称らしい。)
・ [A] と [B] は「NEC特殊外字」という用語も見られる。
・ [C] は「IBM選定文字」という用語も見られる。
ここで注意するべきことがある。
[A] と [B](およびその前後の領域)は、JIS( ISO-2022-JP )とも対応する領域である。
[C](およびその前後の領域)は、JISとは対応しない領域である。つまり、シフトJISのみで用いられる領域である。
以上の点に留意すべきである。
[A] と[B]については、先の「ほら貝」のページ(code2.htm)にも記述がある。以下、引用してみる。(一部改変)
“ 非漢字と漢字の境界にあたる
09区から15区の空白域、および、漢字の終わる
84区以降(85区から94区)は、
自由領域とされてきた。(1997年3月から、この名称はなくなる)。
JIS X 0208-1983の解説によると、「この領域は、情報交換当事者の協定によって、一時的・局所的に文字を割り当てて利用しても構わない」となっている。これが、正式のコードポイントをもたない規格外の文字、いわゆる外字を使用する根拠となっている。”
【付記】 空白域
ここでいう空白域は、[A] [B] と同じではなく、[A] [B] を含む、少し広い領域である。つまり、機種依存文字のほか、文字が未定義である領域を含んでいる。
ともあれ、上で示したように、空白域は「94区以前」「95区以降 120区まで」に区切られる。前者は、JISとも対応しうる領域である。
さて、注意すべきことがある。Eメールとの関係である。
[ New ! ]
Eメールは一般に、JIS( ISO-2022-JP )で送信される。しかるに95区以降はJISの領域からはずれている。というわけで、[C] ( 115〜119区 )の機種依存文字は、Eメールでは送信できない。単純に文字化けするのではなくて、そもそも送信がまったくできない。(その部分が送信データから欠落する。さらに、その前後の文字が奇妙に文字化けする。)
一方、 [A] [B] の機種依存文字は、送受信可能である。(ただし相手環境によっては文字化けする。)
なお、Windows のユーザ外字は、115〜119区の機種依存文字と同様である。
【付記】 外字
よく知られているように、 95〜114区は、Windowsのユーザ定義外字の領域である。
このユーザ外字とメーカ外字とをあわせて、単に「外字」ともいう。
ただし、一般的には、「外字」という言葉は、「ユーザ外字」を意味することが多い。
【付記】 特殊文字
このほか、「特殊文字」という用語がある。この言葉はきわめて曖昧である。ソフトごとに、てんでにバラバラの意味で用いられているようだ。
特にWindowsでは、「特殊文字」とは、次の両者をあわせたもののことである。
・JIS の未定義領域に割り当てた文字 (これは機種依存文字に相当)
・JIS 罫線 (これは普通のJISの記号。注意)
たとえば、Windowsの「アクセサリ」の「文字コード表」から「種類」として「特殊文字」を選択すれば、上の二種類が表示される。(「ヘルプ」から実行しても同様である。)
一方、Wordでは、「特殊文字」とされるものには、いろいろなものが混じっている。そのうちのいくつかは、「単なるJISの記号」,「機種依存文字」,「文字コード表には現れないようなWord独自の文字」などである。
要するに、「特殊文字」というのは、しっかりと意味が定まった用語ではない。これは各ソフトにおける、便宜的な用語にすぎない。
【付記】 第三・第四水準
JIS第三・第四水準漢字との関係については、巻末付録の 【 資料4 】を見てほしい。
《3》 機種依存文字の根拠
上の[A][B][C]の機種依存文字は、どのようにして定められたか?
私ははっきりとした資料は持ち合わせていないのだが、その名称から、次のようにして定められたと推定される。
・最初にJIS X 208-1978があった。(1978)
・次に、シフトJISコードが合意された。(1983)
・このころ、すでにNECやIBMのパソコンが存在していた。そこでは文字不足が
痛感されていた。そこで、不足している文字を、それぞれの自社パソコン専用の
文字セットとして配置した。具体的には、NECは13区に数学記号とローマ数字
置き、IBMは115〜119区にローマ数字と漢字を置いた。
・後年、NECは、IBMの文字セットを採用した。ただし、その際、あえて、元の
IBMの領域(115〜119区)とは別の領域(89〜92区)に配置した。
・さらに後年、Windowsは、NECとIBMの文字セットを、すべて採用した。
([A] [B] [C]すべて)
そのため、115〜119区の文字セットと、89〜92区の文字セットが、同じ字形である
にもかかわらず、ダブって採用されることとなった。( [B] と [C] )
以上のように考えると、つじつまが合う。
【付記】 残る問題
ただし、問題も残る。
(i) NECは、IBMの文字セットを取り入れるに当たって、なぜ、わざわざ別の領域にしたのか? これは少々、不思議に思える。が、まったく不思議でもない。「JISの領域外は使わない」としたかったのだろう、と推測できる。それはそれでもっともだからである。
(ii) NECやIBMが自社用の機種依存文字を採用する際、基準としたのは、JIS X 0208 の78年版か、83年版か? これは問題だが、あまり意味のない問題かもしれない。78年版以降で追加された漢字は、わずか6字だけだからだ。(84区の冒頭にある)
※ 漢字以外で後年追加されたのは、104字。そのうち、数学記号については、78年版と83年版と
の差はある。これは、このページの最後の方に、参考資料として記しておいた。
【付記】 89〜92区の経緯
89〜92区の漢字が採用された経緯については、私はよくわからない。「機種依存文字としての漢字を、NECはもっていなかったが、IBMはもっていた。だから、NECはIBMの文字をそのまま採用した」と考えれば、一応、つじつまは合う。
しかし実際にそうだったとは思えない。NECもまた、独自の機種依存文字の漢字をもっていただろうと思えるからだ。(とはいえ、このあたり、自信はない。)
「ほら貝」のページ(code2.htm)によると、各社ごとに別々に、機種依存文字の漢字をもっていたらしい。特にそのうちで Unicodeの「CJK互換漢字」に採用された32字は、IBMだけにあり、NECや富士通にはない漢字だそうだ。(code4.htm)
つまり、このように、各社別々に機種依存文字を定めていたらしい。
そして、Windowsでは、それらをひっくるめて採用したようだ。(「マイクロソフト標準キャラクタセット」という。)
☆ 《 追記 》
あとで「ほら貝」の著者から伺った話によると、DOSマシンの範囲内でも、
富士通、沖、日立、シャープ、すべて違っていたという。
そのなかで、NEC,IBMのものが採用されたのは、この両社が、シェアも
さることながら、Microsoft にとって特別な存在だったからではないか、
ということだ。(「ほら貝」の著者の推定。)
【付記】 78年以前
JIS X 0208-1978が制定される以前については、不十分ながら、下記に少し情報がある。
http://www.itscj.ipsj.or.jp/topics/jisx0208.html
なお、「シフトJIS」については、「Shift-JIS」「S-JIS」「MS-Kanjiコード」「MS漢字コード」などの異称が見られる。このうちの一部は俗称かもしれないが、未確認。
【付記】 JIS規格との関係
1997年のJIS X 0208-1997では、シフトJISは、「シフト符号化表現」として、JIS規格に正式に取り込まれた。(「附属書1」で)
【付記】 84区の未定義領域
第二水準漢字のうち、84区は、冒頭以外は未定義である。ただしこれらは未定義ではあっても、機種依存文字ではない。
《4》 同じ字形での混乱
すでに示したように、機種依存文字にはダブりがある。つまり、89〜92区の領域と、115〜119区の領域で、同じ字形なのに別のコードが割り当てられていることがある。このことは当然、混乱を生じる。
第一に、その文字が機種依存文字
であるか否か、わからないことがある。一つの字形に対して、それが機種依存文字のこともあり、機種依存文字でないこともある。
第二に、その文字が機種依存文字であるとわかっていても、
どの領域の機種依存文字かわからないことがある。
【参考】 検索
この二つのいずれの場合でも、検索の問題が生じる。つまり、同じ字形でも二つの文字があるので、検索のときは、両方の文字で検索しないと、検索漏れの可能性がある。
自分の作った文書ならば、まだいい。二つのうちのどちらを使ったか、わかっていそうだからだ。しかし、他人の作った文書ならば、どちらの文字を使ったかはわかりようがない。
このダブりの問題については、以下 (ア)(イ)(ウ)で、詳しく述べることにする。
(ア)漢字
89〜92区と115〜119区に、機種依存文字としての漢字がある。これらの漢字はすべて同じ字形らしい。つまり、いずれの漢字についても、同じ字形で二つの文字コードが存在する。
さらに、これらの機種依存文字と、第一水準漢字・第二水準漢字との間でも、ダブりがあることもある。たとえば、区点11650の文字に対して、同じ字形の文字が区点 02523にある。(「昂」という文字)
【参考】
この区点11650の文字については、参考情報がある。[ http://www.cup.com/negi/ibmnec.zip というファイルのなかの ibmnec.doc という文書を見るとよい。])
【参考】
参考にいえば、これら機種依存文字としての漢字は、難解な漢字というより、人名用の異体字が多いようだ。
あまり使われないものが多いが、次の二つは目立つ。
・「青」の異体字(「月」のかわりに「円」)
・「高」の異体字(いわゆる「はしご高」。高島屋のマーク)
(イ)ローマ数字
ローマ数字の小文字(i,iiのように見える)は、92区と、 115区にある。
ローマ数字の大文字(I,IIのように見える)は、13区と、 115区にある。
つまり、小文字と大文字は、一方では115区にまとまって置かれているが、他方では13区と92区に分かれて置かれている。
これを見ると、一つの疑問が解決する。
89〜92区と、115〜119区とでは、文字群はまったく同じように見えるが、そうではなくて、前者には大文字のローマ数字がない。なぜなのか、という疑問である。
その答えはもはや明らかだろう。大文字のローマ数字は、すでにNEC拡張の13区にある。だからNECは、115〜119区の文字を89〜92区に取り込むに当たって、大文字のローマ数字を省いたのだ。(すでにあるものは不要なので。)
(ウ)数学記号
数学記号については、事情はより複雑になる。
先の(ア)(イ)の文字(漢字とローマ数字について)は、同じ字形の二つの文字は、ともに機種依存文字だった。(一部は例外)
しかるに、数学記号の場合は、そうではない。数学記号を見てみると、一部は機種依存文字であり、一部はJISの領域内の文字である。両者が混じっているのだ。
具体的に言おう。2区と13区の両方に、数学記号がある。前者(2区)はJISの領域内にあり、後者(13区)はJISの領域外にある。(つまり機種依存文字である)
ユーザが数学記号を用いる際、その文字が、2区の文字か、13区の文字かは、文字コード表でいちいちコードを確認して使いさえすれば、問題はない。しかし、いちいちコードを確認するのは面倒である。そこで、IMEのカナ漢字変換機能を使うことがある。つまり、適当な読みとカナ漢字変換で、数学記号を出すことがある。すると、この場合、IMEが機種依存文字を勝手に出力することがある。これは問題である。
このことは太田純氏が各種IMEについて、可能性を示している。
( http://www3.justnet.ne.jp/~s_kishimoto/fj/misc/hankana.htm )
たとえば、カナ漢字変換により、次のような字形の機種依存文字が出力される可能性がある。
(株) …… かぶ
cm …… せんちめーとる
[ ただし、上の2例では、JISの記号を組み合わせて字形を表示した。]
これらの記号は、特別な記号なので、機種依存文字であることが容易に推測がつく。その点では問題は少ない。問題なのは、数学記号である。数学記号にはJISの文字が多い。そこで、世間では、数学記号は機種依存文字ではない、と信じられていることもある。実際、理系の人々の間では、√ や ∫ や ≒ などの記号が、Eメールでしばしば使われる。しかしここには問題があるのだ。間違って 13区の文字が使われる可能性があるのだ。
数学記号を出力するカナ漢字変換については、成田良一氏がMS-IME95において、実際の確認を行なった。(MS-IME98ではなくMS-IME95の方。)
成田氏の調査によれば、次の通り。
MS-IME95の場合、IMEでカナ漢字変換すると、2区の文字ではなく、同じ字形の13区の文字が出ることがある。
数学記号と、対応する読みは、順に、次の通り。
[記号] ∪ , ∩ , ∠ , ⊥ , ≡ , ≒ , √ , ∵ , ∫
[読み] おあ,あんど,かく,すいちょく,ごうどう,きんじ,るーと,なぜならば,いんてぐらる
これらはいずれも13区の文字である。
なお、カナ漢字変換の際に、変換候補がいくつか表示されることも考えられる。しかし実際には、変換候補は一つだけである。つまり、2区の変換候補は現れず、13区の変換候補だけが現れる。
一方、「きごう」という読みでカナ漢字変換した場合には、変換候補は一つだけでなく、いくつも現れる。そのうち、数学記号は、次のようなものがある。
∪ ∩ ∠ ⊥ ≡ ≡ ≒ √ ∵ ∫
ここで示したように、
≡ には二つの候補がある。そのうち一つは2区の文字であり、もう一つは13区の文字である。
後者( ≡ のうちの一つ)以外のものは、すべて2区の文字である。(つまり、「きごう」という読みで出す場合は、危険は比較的少ない。)
成田氏はさらに次のことも示している。
2区と13区で、数学記号の文字群は、まったく同じである(同じ字形なら漏れなくダブっている)のではなくて、一部は欠落している。列挙すると、次のようになる。
(欠落部は _ で示す。)
13区の文字 ≒ ≡ ∫ 刀@煤@√ ⊥ ∠ 凵@∵ ∩ ∪
2区の文字 ≒ ≡ ∫ _ _ √ ⊥ ∠ _ _ ∵ ∩ ∪
※ 同じ字形でそろえる。文字コードは異なる。
上の 13区 の行は、機種依存文字を用いているので、環境によっては見えない。
以上が成田氏の調査である。
【参考】MS-IME98
MS-IME95でなくMS-IME98では、この問題はないようだ。つまり、IMEのカナ漢字変換で現れる数学記号は、すべて2区の文字になるようだ。
これはおそらく、バージョンアップの際、機種依存文字を出さないように改良されたのであろう。
【参考】ATOKのカナ漢字変換で現れる機種依存文字
ATOK12については、カナ漢字変換で使われる機種依存文字のすべてを調べることができたので、以下に記す。(計127個)
※ 初めから9割ほどは、13区の文字。
最後のローマ数字(小文字)は、115〜119区の文字。
89〜92区の文字は使われていない。
数学記号は使われていない。
※ 重量・面積などの単位記号では、同じ記号が同じ読みでダブっている。
しかしこのダブった記号は、どちらもまったく同じである。(例:「`,きろ」)
ただ、ダブったものは、品詞が異なり、別の語の扱い。(助数詞/名詞)
実際のカナ漢字変換では、二つのうち一方しか現れない。
※ 以下では、「機種依存文字,読み」の順で示す。
@,いち/A,に/B,さん/C,し/C,よん/D,ご/E,ろく/F,しち/F,なな/G,はち/H,きゅう/H,く/I,じゅう/J,じゅういち/K,じゅうに/L,じゅうさん/M,じゅうし/M,じゅうよん/N,じゅうご/O,じゅうろく/P,じゅうしち/P,じゅうなな/Q,じゅうはち/R,じゅうきゅう/R,じゅうく/S,にじゅう/
T,いち/U,に/V,さん/W,し/W,よん/X,ご/Y,ろく/Z,しち/Z,なな/[,はち/\,きゅう/\,く/],じゅう/
_,みり/_,みり/`,きろ/`,きろ/a,せんち/a,せんち/b,めーとる/b,めーとる/c,ぐらむ/c,ぐらむ/d,とん/d,とん/e,あーる/e,あーる/f,へくたーる/f,へくたーる/g,りっとる/g,りっとる/h,わっと/h,わっと/i,かろりー/i,かろりー/j,どる/j,どる/k,せんと/k,せんと/l,ぱーせんと/l,ぱーせんと/m,みりばーる/m,みりばーる/n,ぺーじ/n,ぺーじ/
o,みり/o,みり/o,みりめーとる/o,みりめーとる/p,せんち/p,せんち/p,せんちめーとる/p,せんちめーとる/q,きろ/q,きろ/q,きろめーとる/q,きろめーとる/r,みりぐらむ/r,みりぐらむ/s,きろ/s,きろ/s,きろぐらむ/s,きろぐらむ/t,しーしー/t,しーしー/u,へいべい/u,へいべい/
~,へいせい/,なんばー/,かぶしきがいしゃ/,でんわ/,うえ/,じょう/,ちゅう/,なか/,げ/,した/,ひだり/,みぎ/,かぶ/,かぶしきがいしゃ/,ゆう/,ゆうげんがいしゃ/,だい/,だいひょう/,めいじ/,たいしょう/,しょうわ/
@,いち/A,に/B,さん/C,し/C,よん/D,ご/E,ろく/F,しち/F,なな/G,はち/H,きゅう/H,く/I,じゅう
【参考】その他の変換
カナ漢字変換変換以外にも、単漢字変換、郵便番号変換などが考えられる。
ATOK12の場合は、いずれの変換でも、機種依存文字は登録されていないので、安全である。
《5》 IMEのツールの問題
IMEのカナ漢字変換機能を使うと、問題を生じる可能性がある。このことを先に示した。
一方、カナ漢字変換機能以外でも、文字を出力する方法はある。それはIMEに付属する、記号出力用の
専用ツールを使う方法である。
ATOKには「クリックパレット」「文字パレット」というものがある。この二つのツールについて、順に述べることとしよう。(具体的な使い方は、ヘルプ参照。)
(i)クリックパレット
「
クリックパレット」(ATOK11のマニュアルではなぜか「クイックパレット」)というツールがある。マウスでクリックすると記号を出せる、というツールである。
調べたところ、これが出力する記号は、特に問題はなかった。具体的にいえば、次の通り。
「記号2」のところにある文字は、すべて2区の文字である。たとえば次の文字だ。
≒ ∵ ≡ ∠ ⊥ √ ∫ ∪ ∩
「記号4」のところにある文字は、すべて13区の文字である。たとえば次の文字だ。
刀@煤@凵@
以上のように、「記号2」「記号4」というふうに、別々のところ(タブシート)にある。両者は混じってはいない。だから、「記号2」のところにある文字だけ使えば、機種依存文字は使わずに済む。というわけで、特に問題はない。(ただし、「記号4」は機種依存文字だ、と覚えておく必要がある。)
(ii)文字パレット
「文字パレット」の方には、問題がある。これを起動して、「通常記号」−「
学術記号」により出力される文字を見ると、上の例で示した2グループの文字がともに収められている。つまり、2区の文字と13区の文字がともに置かれている。両者はごちゃまぜで、区別がつかない。というわけで、かなり問題のある状況である。(たとえば、普通の記号を使ったつもりでも機種依存文字を使ってしまった、という事件が発生しやすい。)
一方、数学記号ではなく、
ローマ数字ではどうだろうか?
文字パレットで上記の方法により出力される文字を見ると、大文字は13区の文字であり、小文字は115区の文字である。
これはまた、ずいぶんとチャンポンなことをしているものだ。13区と92区はJISの領域内にあり、NEC系である。115区はJISの領域外にあり、IBM系である。両者は区別される。なのに文字パレットは、双方から半々で取っているのだ。NEC系にそろえて、「13区の大文字と92区の小文字を取る」ならばわかる。あるいは、IBM系にそろえて、「115区の大文字と小文字を取る」でもわかる。しかしそうはしていないのだ。
※ いずれにしても、ローマ数字はすべて機種依存文字である。
(iii) ATOKの文字パレットとMS-IME98のIMEパッド
ATOKの文字パレットとMS-IME98のIMEパッドでは、両者に共通する問題がある。
89〜92区の文字を文書中に出力しようとすると、実際にはそうならなくて、
115〜119区の文字が文書中に出力されてしまうのだ。(ローマ数字も含めて。)
これはまた、おかしな話だ。いったい何のために、ツールとして文字コードを示しているのだろうか?
【参考】 Windowsの文字コード表
これらのツールと違って、Windows付属の「文字コード表」なら、このおかしな現象は発生しない。正しく文字コード通りの文字が出力される。
【付記】 文字コードの調査
文書中にある文字の文字コードを調べるには、プログラムの知識が必要である。初心者には無理。
【追記】 89〜92区を使わないわけ [ New ! ]
89〜92区を使わないことについては、新たに情報を得られた。
MSがそうするよう、勧めているのである。つまり、MSはマニュアルで、NEC選定IBM拡張文字を使わないように指導しているのだ。
ま、わからなくもない。つまり、同じ文字が二つの領域にあると、紛らわしいので、どちらかに統一しよう、という趣旨なのだろう。
ただし、MSがそう指導するのはいいが、それに従って奇妙な設定にしたことを、IME用ツールはちゃんと注記しておくべきだと思う。なぜなら、89〜92区の文字はEメールで送れるが、115〜119区の文字はEメールでは消えてしまうからだ。
※ なお、将来のJIS第三・第四などの拡張と、整合性を取るには、89〜92区の文字は
使えない方がいい、という意見も成立しそうだ。
【追記】 MS-Wordの場合 [ New ! ] [ Up ! ][ 修正 ! ]
MS-Wordのメニューから「記号と文字」または「記号と特殊文字」を実行した場合については、次の通り。
・Word95 の場合は、89〜92区の文字を出そうとすれば、そのまま出る。(115〜119区とならない)
しかも Word95の場合、これらの文字は「第二水準漢字」と表示される。(前出)
これはかなり危険な状況といえよう。
・Word98 の場合は、 unicode 順なので、89〜92区の記号を出そうとしても、すぐには見つからない。
それでも探してみると、たとえば、「高」と、その異体字の「はしご高」は、並んで表示されている。
(だから、「はしご高」は容易に使える)( 89〜92区か 115〜119区かは、見てもわからない。)
これを文書中に出力すると、その文字は、115〜119区(※)の文字となっている。
[ 修正 ]
※ この部分、98.12.11.の文書では、「115〜119区」でなく、「89〜92区」と誤記しました。
これは間違いです。お詫びして修正します。 (98.12.12. 記)
【追記】 115〜119区のローマ数字の大文字 [ New ! ]
さらに、おかしな現象が見つかった。
115区のローマ数字の大文字を、ATOK12またはS-IME98で出力すると、なぜか、115区の文字とならずに、13区の文字となるのだ。 (つまり、文字パレットでなく一覧表から115区の文字をクリックして、ローマ数字の大文字を出力した場合、一覧表では115区になっているのに、実際に文書中に出力される文字は13区の文字となる。)
これもまた、おかしな現象だ。特に実害はないようだが。
ただ、ATOK12もMS-IME98も、ともにこの現象が起こるので、やはり、何らかの理由があるのかもしれない。(これもマイクロソフトの推奨かもしれない。) (なお、このように見てみると、先に 《5》 の(ii)で述べた、「文字パレットではローマ数字がチャンポンだ」ということは、説明が付くようだ。)
《6》 ATOKとWord95の記号表
IMEのカナ漢字変換機能を使っても、IMEに付属のツールを使っても、問題を生じる可能性がある。そういったことを先に示した。
結局、文字コード表を使うのが最善である。しかしながら、この場合も、問題が生じる可能性がある。
文字コード表といっても、いろいろあるが、正しい文字コード表を使う限りは問題ない。たとえば、このホームページの表紙ページからダウンロードされる「文字一覧」がそうである。ただしこれは、単なる文字とコードの羅列なので、初心者には使いにくい。
そこで、初心者にも使えるようなものが用意されてある。ATOKとWord95に用意されている、文字コード表(のようなもの)がそうである。
※ 詳しくいうと:
ATOKの文字パレットの文字一覧がある「和文コード表」などのタブシートがそうである。
Word95では、メニューの「挿入」の項から使える「記号と文字」という機能がそうである。
ところが、これには問題があるのだ。
以下では、具体的に述べよう。
機種依存文字はJIS第二水準漢字
ではない。(JIS第二水準漢字は、48〜84区のみである。)
しかし、にもかかわらず、ATOKとWord95では、そう表示されないのである。つまり、機種依存文字が「JIS第二水準漢字である」と表示されることがある。
89〜92区の文字は、もちろん、機種依存文字である。しかし次のソフトでは、これらの文字は第二水準であると記される。
・ATOKの「文字パレット」
……右の方にコード番号の欄があり、その下に「漢字の種類」という欄がある。
ここに「第二水準」と表示される。
・Word95のメニューで「挿入」→「記号と文字」
……ここで見ると、右の欄に「第二水準(10画)」と表示される。
こうしたことは、本質的な問題ではなくて、一種のバグである。メーカが修正してくれれば、問題はない。とはいえ、このような問題があるので、ユーザは注意せねばならない。
【付記】 別領域
89〜92区ではなく、115〜119区の方の漢字は、外字の扱いとなっている。つまり、「第二水準」と誤表示されることはない。このことは、ATOKもWord95もそうである。
【付記】 他のソフト
次のソフトでは、このエラー(機種依存文字を「第二水準漢字」と誤表示すること)はない。
VJE-Delta …… 「その他の漢字」と表示する。
Windows付属の「文字コード表」 …… 「特殊文字」と表示する。
【付記】 Word97 ,Word98
Word95ではなく、Word97,98では、事情は異なる。メニューの「挿入」→「記号と特殊文字」で調べると、そもそも第一水準とか第二水準とかの用語が現れない。つまり、まったく別の扱いになる。しかも、そもそも表示された漢字全体の配列が、文字コード表の配列とは、全然違う配列になっている。こうしたことは、Word97,Word98が、内部コードをUnicodeに依拠しているせいである。
なお、このUnicodeにおける文字の配列は、MS-IME98のIMEパッドの左上で、「シフトJIS」から「Unicode」に切り替えることで、見ることができる。
《7》 MS-IME97,98のIMEパッド
ATOKやWord95の文字コード表(のようなもの)では、おかしな現象(一種のバグ)が現れる、と先に示した。一方、これとは別のおかしな現象(一種のバグ)が、MS-IME98のIMEパッドで現れる。
具体的には、次のような現象である。
MS-IME98のIMEパッドを起動して、左上の「シフトJIS/Unicode」の切り替えのところで「シフトJIS」に設定する。次に、その右で「漢字3」を設定する。
すると、小文字のローマ数字がずらりと表示される。これらの下に「TEL」というような字形の文字が現れる。さらにその下に、「イ」+「王」というような字形の文字がある。これについて文字コードを調べると、次のように表示される。
(冒頭の 0x は省略して読むとよい)