Lazy Diary @ Hatena Blog

PowerShell / Java / miscellaneous things about software development, Tips & Gochas. CC BY-SA 4.0/Apache License 2.0

「外字」の示す範囲の認識の多様性

このエントリ、いったい誰をターゲットにした内容なんだろうな?というのが第一印象です。 https://blogs.windows.com/japan/2020/02/20/about-windows-and-japanese-text/ 「お前のところのIMEが外字を入力させてるんじゃないか、いい加減にしろ」って言う人、絶対にいると思うんだよなぁ。

あるシステムの設計者に「このシステムでは外字を使いますか?」と質問したとしましょう。そのとき、設計者がその質問をどういう意味に捉えられているか?は結構バリエーションがあります。思いつくままに例を挙げるなら、以下のような感じ。

  1. 私用領域のコードポイントにある文字を、正規のデータとして処理するか?という意味
  2. Windowsの日本語IMEで、変換時に「機種依存文字」と表示される文字(「髙」など)を、正規のデータとして処理するか?という意味
  3. Windowsの日本語IMEで、デフォルト設定では変換候補に出てこない文字(JIS第3水準・第4水準など)を、正規のデータとして処理するか?という意味
  4. 上記のような文字を日本語IMEから入力可能にするよう、ユーザ端末をキッティングするか?という意味
  5. 1~4のような文字を、入力データのバリデーションで明示的に弾いたり、別の文字に置き換えたりするなど、特別扱いする処理を実装するか?という意味
  6. システムのデフォルトフォントで表示できない文字を、大規模文字セット用のフォントなどをインストールして表示可能にするか?という意味
  7. JIS78やJIS90で字形が変わった文字の、古い方の字形を用意するか?という意味*1
  8. 旧字体(「學」とか)を新字体(「学」とか)に置き換える処理をするか?という意味
  9. ユーザが業務運用中にEUDC.ttfを編集するか?という意味(これがMicrosoftの意図に近い)
  10. アプリケーションからEUDC.ttfを操作するか(EUDC.ttfをサーバから各端末に配布したりするか)?という意味

2番目の意味に取る人が結構多くて、そういう人からしたら「お前のところのIMEが外字を入力させてるんじゃないか、いい加減にしろ」となるわけですよ。

まぁ、この辺りは細かく書いたらキリがないし、仕方がないかとも思います。

*1:これは結果的に私用領域のコードポイントを使うことになる