Web上で文字集合「JIS X 0201-1976(JIS C 6220-1976)」(「ISO 646」の日本版とも言え,「ANK」とか「日本語ASCII」などと呼ばれることもある文字集合です。)の0xA1から0xDFに割り当てられたカタカナを使用すると,環境によって文字化けを起こしたり,ネットワークの種類によっては通信障害を起こしたりする場合があるそうです。これらの文字をWeb上で公開する文書に含む場合は,直接JISやMS-KANJI(Shift_JIS)で記述せずにユニコードによる数値文字参照を使用するとよいでしょう。
なお,これは強要されることでも,推奨されることでもありません。HTMLで使用するエンコード方法を指定すれば,JIS X 0201に含まれる半角カタカナを使用することは仕様上問題がないのです。ただ,「文字化けや通信障害を起こす可能性のある環境の人々にもひとしく自分の思いを伝えたい」と考えるならば,このような方法で少しはコミュニケーション障害が改善されるカモ,という観点です。考えすぎかもしれませんが・・・。
以下は半角カタカナが読めない環境のための対照表です。
| 半角カタカナ | JISコード 十六進(十進) | 数値文字参照 | 対応するカタカナ |
|---|---|---|---|
| 。 | 0xA1(161) | 。 | 。 |
| 「 | 0xA2(162) | 「 | 「 |
| 」 | 0xA3(163) | 」 | 」 |
| 、 | 0xA4(164) | 、 | 、 |
| ・ | 0xA5(165) | ・ | ・ |
| ヲ | 0xA6(166) | ヲ | ヲ |
| ァ | 0xA7(167) | ァ | ァ |
| ィ | 0xA8(168) | ィ | ィ |
| ゥ | 0xA9(169) | ゥ | ゥ |
| ェ | 0xAA(170) | ェ | ェ |
| ォ | 0xAB(171) | ォ | ォ |
| ャ | 0xAC(172) | ャ | ャ |
| ュ | 0xAD(173) | ュ | ュ |
| ョ | 0xAE(174) | ョ | ョ |
| ッ | 0xAF(175) | ッ | ッ |
| ー | 0xB0(176) | ー | ー |
| ア | 0xB1(177) | ア | ア |
| イ | 0xB2(178) | イ | イ |
| ウ | 0xB3(179) | ウ | ウ |
| エ | 0xB4(180) | エ | エ |
| オ | 0xB5(181) | オ | オ |
| カ | 0xB6(182) | カ | カ |
| キ | 0xB7(183) | キ | キ |
| ク | 0xB8(184) | ク | ク |
| ケ | 0xB9(185) | ケ | ケ |
| コ | 0xBA(186) | コ | コ |
| サ | 0xBB(187) | サ | サ |
| シ | 0xBC(188) | シ | シ |
| ス | 0xBD(189) | ス | ス |
| セ | 0xBE(190) | セ | セ |
| ソ | 0xBF(191) | ソ | ソ |
| タ | 0xC0(192) | タ | タ |
| チ | 0xC1(193) | チ | チ |
| ツ | 0xC2(194) | ツ | ツ |
| テ | 0xC3(195) | テ | テ |
| ト | 0xC4(196) | ト | ト |
| ナ | 0xC5(197) | ナ | ナ |
| ニ | 0xC6(198) | ニ | ニ |
| ヌ | 0xC7(199) | ヌ | ヌ |
| ネ | 0xC8(200) | ネ | ネ |
| ノ | 0xC9(201) | ノ | ノ |
| ハ | 0xCA(202) | ハ | ハ |
| ヒ | 0xCB(203) | ヒ | ヒ |
| フ | 0xCC(204) | フ | フ |
| ヘ | 0xCD(205) | ヘ | ヘ |
| ホ | 0xCE(206) | ホ | ホ |
| マ | 0xCF(207) | マ | マ |
| ミ | 0xD0(208) | ミ | ミ |
| ム | 0xD1(209) | ム | ム |
| メ | 0xD2(210) | メ | メ |
| モ | 0xD3(211) | モ | モ |
| ヤ | 0xD4(212) | ヤ | ヤ |
| ユ | 0xD5(213) | ユ | ユ |
| ヨ | 0xD6(214) | ヨ | ヨ |
| ラ | 0xD7(215) | ラ | ラ |
| リ | 0xD8(216) | リ | リ |
| ル | 0xD9(217) | ル | ル |
| レ | 0xDA(218) | レ | レ |
| ロ | 0xDB(219) | ロ | ロ |
| ワ | 0xDC(220) | ワ | ワ |
| ン | 0xDD(221) | ン | ン |
| ゙ | 0xDE(222) | ゙ | ゛ |
| ゚ | 0xDF(223) | ゚ | ゜ |
以下は,VZ Editorで半角カタカナを数値文字参照に置き換えるマクロです。
= ANK2UNI.def = by H_ear
#if 0
半角カタカナ→数値文字参照変換
#endif
* mad for vz!
1 ^\ "" ?.
(mb)??{
&a("文書全体を変換します")
(r-1)?{ &m("中止しました.") . }
}
ps[=pr,
a=$A1, u=65377, i-,
; --- main loop ---
(63){
&s
#56
&?("%c",a+i) #m ;。〜゜
&?("&#%u;",u+i) #m ;。〜゚
"ay"
i++,
&d
}
:z ; --- exit ---
ps],
&m("【終了】※以後,実体参照変換の実行は注意してください。")
&d #] .
*
[Variables]
a ANK code Kana top
u unicode Kana top
i counter
[Buffers]
pr as ps
[History]
2003/09/03 0.10 初版