Fabre関連情報: Unicode対応について

(Copyright 2004年 7月  Mule)

★ Unicode
Fabre 5.00 でUnicodeのファイルのバックアップに対応したことについて、少し説明しておきます。バージョンアップすべきかどうか迷ったらお読みください。
このページはFabreのヘルプの抜粋ですので、詳細はヘルプをご覧ください。


★ Unicodeとは
Unicode(ユニコード)とは、Windows XPや2000(以後WinXp系と表記)などで使われている文字のコード体系です。
日本語Windows 98やMe(以後Win98系と表記)はシフトJISという文字コードが使われています。

UnicodeはシフトJISに含まれるすべての文字を含んでいますので、Win98系で作った文章は必ずWinXP系でも読めますが、逆方向では読めない文字が存在する場合があります。
(詳しい説明を書くと一冊の本になっちゃうんで、詳しくは検索なんかで調べてね。)

WinXP系の方は下記の説明を良く読んでください。
Win98系ではFabreのUnicode対応は出力ファイルを参照する方以外は無関係です。このため、Win98系をお使いの方で既にVersion 4.00にされている方は、必ずしもVersion 5.00にバージョンアップする必要はありません。
 
★ Unicode特有文字
Unicodeには存在するがシフトJISには無い文字を、FabreではUnicode特有文字と呼んでいます。主に特殊記号や外国語の文字が含まれます。次に具体例を示します。
記号:     各国語文字: 

WinXP系ではファイル名やフォルダ名にもUnicode特有文字が使えるので、Fabre 5.00 でそれらもバックアップできるように対応しました。
 
★ Unicode対応の必要性
普通にPCを使っている場合、ファイル名にUnicode特有文字を使うことは少ないと思いますが、環境によっては漢字変換で特に意識せずに入力できてしまうので、知らずにUnicode特有文字を含むファイル名を付けてしまう場合があるかもしれません。
  は、私の環境〔WinXP Home SP1〕ではそれぞれ しー、はーと、おんせん、やじるし の読みで変換できます。)

映像/音楽関係では特殊記号を使った人名や作品・曲名が多いので、""などを使ったファイル名を付けることはあるでしょう。

英語圏以外の外国のWebサイトのページに、その国特有の文字が使われていると、それを「お気に入り」に登録した場合にUnicode特有文字が混入する場合があります。
 

★ 他ソフトのUnicode対応状況
2004年現在、Unicode対応のソフトウェアはマイクロソフト社製を除いては極めて少ないのが現状です。
(マイクロソフト社製のWinXPでもzip圧縮はUnicodeに対応してないしね。)

ファイル単位でバックアップするソフトはUnicodeに対応する必要性が最も大きいジャンルですが、大手ソフト会社のバックアップソフトですら対応してないようです。
(少なくともMuleが普段使っている何十ものアプリケーションの中にはUnicode対応ソフトは1つも無いなあ。)

有名市販ソフトからシェアウェアまでUnicodeへの対応ができているものは極めて少ないのが現状のようです。(まあバックアップソフトとしては対応が早い方だと言えるかな。)

そもそもWinXP系のファイル名にUnicode特有文字が使えるという、ある意味かなり大きなメリットであるはずの仕様が、Windowsの雑誌やWebサイトの記事にほとんど紹介されていないのも対応が遅れる原因となっているようです。

★ Unicode対応の開発にあたって
今回Unicode対応にあたっては、"Tnt Software Products"の"Tnt Delphi UNICODE Controls Project"のライブラリを全面的に利用させていただきました。ここに感謝の意を記します。
これが無ければFabreのUnicode対応はありえなかったでしょう。

このライブラリのドキュメントにもTnt氏の怒りの(?)コメントが記してありますが、開発環境のDelphiがいまだにUnicodeをサポートしてないのに"Windows XP対応"とうたっていることは、明らかに看板に偽り有りで、非常に困ったことです。アメリカ人にはUnicode対応の必要性が低いためでしょうか。

開発に当たっては、
 ・Tntライブラリのドキュメントは全部英語なのに、関数だけでも何百個もある
 ・Tntライブラリにもバグは当然残ってるけど英語メールは書けないから自分で回避するしかない
 ・DelphiのデバッガはUnicode文字を表示できないので、開発に何倍もの時間がかかる
 ・Fabreの対応すべき修正箇所は膨大だ
 ・今まで正常に動作していた部分も書き替えたので、全機能を再テストする必要がある
 ・WinXP系とWin98系で別のコードを書かなければならない部分もあるので、全機能をWinXP系とWin98系で2重にテストしなきゃならない
 ・Fabre開発のための周辺ツール類も全部改造が必要
 ・苦労の割には必要度は低く、表向きは機能アップしたように見えない
等々、今までのバージョンアップで一番苦労が多く、時間がかかる作業でした。
厳重にテストはしましたが、そんなわけでまだバグが残っている可能性はあります。特に、作者は普段WinXPしか使わないので、Win98系でのみ発生するバグは発見する可能性が低くなります。変な動作を見つけたらご一報ください。
(Win98系への対応を、どれほど放棄しようと思ったことか・・・。でもまだ時機尚早みたいだしね。)

 Fabreのページへ戻る

 トップ・ページへ戻る