トップ «前の日記(2006-08-17) 最新 次の日記(2006-08-20)» 月表示 編集

日々の流転


2006-08-19 [長年日記]

λ. [desktop-architect:83] 文字 「〜」 問題

本質的には、日本語の波ダッシュをUnicodeの WAVE DASH として符号化するか FULLWIDTH TILDE として符号化するかという、Unicodeの運用の問題*1。そして、日本語の波線をダイアクリティカルマークであるチルダとして符号化するのは、日本語の表記として明らかな誤り。似たような誤りとして、例えば長音「ー」をダッシュ「—」として符号化することがある。

で、フォントの問題やWindowsとの互換性の問題に対処するために、波ダッシュを正しい符号である WAVE DASH から誤った符号である FULLWIDTH TILDE に置換する必要があるとしたら、その置換はどのレベルで行われるべきか。もし、IMレベルで置換を行うとしたら、そのような置換を必要としないアプリケーションにも誤ったデータを渡すことになり、誤ったデータが色々な場所で蓄積され続けることになる。そうやって考えていくと、結局そのような置換を必要とした箇所に出来るだけ近いところで置換を行うのが正しいように思える。フォントの問題で正しく描画できない問題については、フォントを書き換えるか、それが不可能ならフォントのレンダラやウィンドウシステムのレベルで置換を行い描画するか、それさえも不可能ならそれらにデータを渡す際にアプリケーション側で置換するのが望ましい。Windowsとの互換性の問題についてはWindows向けにデータを保存する際にアプリケーションが置換を行うのが望ましい。

結局、[desktop-architect:116]で、scim-anthyはデフォルトでは波ダッシュを FULLWIDTH TILDE でアプリケーションに渡すようになったようなので、今後もしscim-anthyを使う機会があったら気をつけようと思った。

2006-08-22 追記

Bottom Note (2006-08-22)に反応が。私も以前は文字コードに興味を持っていたので、この世界に問題が山のようにあることは知ってますし、私も正直あまり近づきたくないと思ってます。今回のは、よしおかさんの[desktop-architect:104]にちとムッとしたことからの気まぐれです。そもそも、真面目に首を突っ込むつもりなら、日記ではなくこのメーリングリストに書きますしね。

それはそうと、小熊さんには是非世界皇帝になってもらって、始皇帝ばりに(以下略)

2006-09-04 追記

Emacsで問題が出たそうな。

*1 たまたまIM側が内部ではEUCで処理を行ってるからレガシーエンコーディングの問題に見えるけど、IM側がUnicodeで処理を行っていても問題になる。