Itpass
- 51. 全角ダッシュのマッピング問題
(Wikipediaより)
• JIS X 0208およびJIS X 0213には全角ダッシュ (1-1-29) が含まれており、規格ではemダッシュ (U+2014) に
マッピングされている。
• しかしUnicodeコンソーシアムが定めたShift_JISのマッピング(JIS X 0208のShift_JISとは完全には一致しな
い)では、1-1-29に対応する0x815Cは、emダッシュではなくホリゾンタルバー (U+2015) にマッピングされ
ている。これはマイクロソフトが定めたWindows用のcp932のマッピングと同じである。これに対し、アップル
が定めたMacOS用のマッピングでは、JIS規格に従いemダッシュにマッピングされている。またWindows Vista
では、JIS X 0208やJIS X 0213の1-1-29をJIS規格と同じemダッシュ (U+2014) にマッピングしている。
• これらの非互換性により、0x815Cを使ったテキストデータは文字化けすることがある。とはいえ、
• UnicodeのShift_JISとcp932でマッピングが一致し、JIS規格とMacOSやWindows Vistaでマッピングが一致し
ている
• ASCII領域外なのでプログラミング言語などでは使われない
• 画面上ではどちらも横棒である(長さは少し変わる場合がある)
• 多くの場合はハイフンマイナス (-) で代用される
• といった理由により、円記号問題などの文字化けと違い、深刻な問題になることはあまりない。