パスワードを忘れた? アカウント作成
187040 journal

yasuokaの日記: JIS X 0213:2004で追加された10字 6

日記 by yasuoka
山口哲弘のWindows Vistaで追加された文字の利用にはご注意(ITPro, 2006年11月22日)を読んでいたところ、以下の部分でひっかかった。

それは,先の字体の変更ではなく,追加となった10文字だ。具体的には次の通りである。
倶 剥 叱 呑 嘘 妍 屏 并 痩 繋
これらの文字の正字を使うと,これまで使っていた略字とは別のキャラクタ・コードになる。検索などが面倒になるだけでなく,これらの文字を使ってWindows Vistaで作った文書を,JIS2004に対応していない既存のWindowsで開くと,「・」や「■」などで表示される恐れがある。

最初の8字(俱・剝・𠮟・吞・噓・姸・屛・幷)については、確かに表示が化ける可能性は否定できないが、瘦と繫の2字は大丈夫なはずだ。というのも、これら2字はJIS X 0212に収録されていたので、Microsoftは日本語版Windows 98以降、表示に関してはサポートしてきたからだ。つまり、まずいのは「JIS X 0213:2004で追加された10字」などではなく、「JIS X 0213にあってJIS X 0212にもMS漢字コードにもない1090字」の方だ。

さらに,これらの追加文字を使った文書を保存するときは,エンコーディングをUnicodeにする必要がある。シフトJISやEUCにすると,キャラクタ・コードを変換できないため,文字がなくなってしまう。例えばメモ帳でこれらの文字を使った文書を,シフトJISで保存すると,その文字の部分が「?」に置き換えられてしまう。

これまでだって、JIS X 0212の漢字(たとえば鷗)を「シフトJIS」なんかで保存すると、まず、うまくいかなかったはずだ。Windows 98日本語版の発売以来、ずっとそんなことは日常茶飯事なのに、この山口哲弘とかいう記者はJIS X 0212の存在に全く気づかなかったんだろうか? だとすると、そういう人物の書くJIS X 0213の記事など、マユツバだと言わざるをえないだろう。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 前々から皆さんの指摘のとおり、追加になった十字、のほうが問題でしょう。Vista の実装まだ未確認ですが、現在の JIS X 0213(2004) のとおりに作っているなら、
    1. 問題の十字を、もともと X-0208 にあった符号位置でファイルに含める
    2. Windows XP で、Unicode に変換する
    3. そのファイルを Vista に持ってきて、例えばシフト符号化表現に変換する
    とやっただけで X-0208 範囲外の文字になってしまう可能性がある。マシン混在時はテキストエディタの作りによっては、こういうことがユーザの気がつかないうちに行われてしまう可能性が無視できませんし、IT Pro に書いてある対処はもちろんまるで対処になんかなっていないわけです。
    • えっと、たとえばU+4FF1(俱)で起こる問題は、JIS X 0213:2004での追加字に限ったことではなく、U+665A(晚)なんかでも起こります。あるいは、U+7626(瘦)に問題があるのなら、その問題はU+7386(玆)でも起こるはずです。でも、U+4FF1の問題とU+7626の問題は、ことVistaにおいては明らかに異なるものです。その意味で、「JIS X 0213:2004で追加された10字」をジッパヒトカラゲに論ずるのは意味がないし、しかも、他の字に起こる問題を見えにくくするという点において、危険ですらあるように思うのですが?
      親コメント
      • いえ、XP と Vista が混在した場合のあくまでも実務上の話です。XP で操作するために、JIS X-0208 なテキストがあったとき、Microsoft の WideCharToMultiByte 変換を掛けると、問題の十字に関して X-0213 が X-0208 の上方互換になっていないため、XP で扱えないものができてしまうほうがまずい、という問題意識ですし、U+6659 / U+665A は、符号位置を触っていない (従って上方互換) ため、問題は起きないはず。

        私が何か勘違いしているのかな?

        親コメント
        • うーん、どうしてalpさんが「1-14-1(俱)vs.1-22-70(倶)」のケースと「1-85-28(晚)vs.1-40-53(晩)」のケースとで、「上位互換」性が異なっていると考えるのか、イマイチその根拠が私には理解できません。どちらも「包摂分離」に違いはないし、分離の際のUCSとの対応維持のやり方にも違いはないし…。
          親コメント
          • なんだか「MS謹製のUnicode⇔DBCS変換テーブルが腐れている」という話に聞こえますが。
            この10字はX0213-2000でも-2004でも互いのコードポイントの字体の変更を受けておらず、表外漢字字体表対応には新しい字体を(X0213/10646の双方で)それまで日本の文字用として使われてこなかったコードポイントで定義した…ということでよかったんでしたっけ。
            ならばこの範囲に限っては旧規格未定義の文字はあくまで旧規格準拠のマシンでは使えない、旧規格準拠のマシンで作ったデータを新規格準拠のマシンで読んでも変わらない…はずですが、そうじゃないとすれば…冒頭に戻る、です。
            親コメント
typodupeerror

コンピュータは旧約聖書の神に似ている、規則は多く、慈悲は無い -- Joseph Campbell

読み込み中...