Java Desktop System Release 3 ご使用にあたって (Solaris 10 版)

1.10 Unicode 多言語コンピューティングへの移行

Java Desktop System は、Unicode UTF-8 エンコーディングで言語をサポートする、Unicode 完全対応の多言語システムです。Java Desktop System には、従来の (UTF-8 以外) エンコーディングをサポートするコードセット変換も備わっています。ここでは、Unicode 多言語コンピューティングへの移行時に起こり得る問題について説明します。

1.10.1 データのインポートとエクスポート

Unicode 多言語コンピューティングへの移行によって影響を受けるデータは、様々な方法でインポートおよびエクスポートできます。

1.10.1.1 Microsoft Office ファイル

Microsoft Office ファイルは、Unicode でエンコードされています。StarSuite アプリケーションでは、Unicode でエンコードされたファイルの読み取りや書き込みができます。

1.10.1.2 HTML ファイル

Mozilla Composer などの HTML エディタを使用して作成した HTML ファイルや、Web ブラウザによって保存された HTML ファイルには、通常、charset エンコーディングタグが含まれています。エクスポートまたはインポートしたあとの HTML ファイルは、 HTML ファイル内のエンコーディングタグに基づいて、Mozilla Navigator Web ブラウザで表示したり、Mozilla Composer を使用してファイルを編集することができます。

1.10.1.3 壊れた HTML ファイルの修正

HTML ファイルは文字化けする場合があります。この問題は、概ね次の理由によります。

HTML ファイルの charset エンコーディングタグを見つけるには、次の手順を実行します。

  1. Mozilla を使用してファイルを開きます。

  2. Ctrl+i を押すか、「表示」をクリックして、「表示」メニューを開きます。

  3. 「ページ情報」をクリックします。

charset 情報は、「一般」タブの下に次のように表示されます。Content-Type text/html; charset=us-ascii

文字列 charset=us-ascii が、ファイルの実際のエンコーディングと一致しない場合、そのファイルは壊れているように見えることがあります。HTML ファイルのエンコーディングを編集するには、次の手順を実行します。

  1. Mozilla Composer でファイルを開きます。

  2. 「ファイル」メニューを開きます。

  3. 「文字エンコードの保存および変更」を選択します。

  4. 正しいエンコーディングを選びます。Mozilla Composer は、自動的にエンコーディングと charset タグを適切に変換します。

1.10.1.4 汎用形式で保存された電子メール

現在使用されている電子メールは、MIME charset タグでタグ付けされています。電子メールおよびカレンダアプリケーションでは、MIME charset タグを使用できます。したがって、エンコーディング変換を実行する必要はありません。

1.10.1.5 プレーンテキストファイル

プレーンテキストファイルには、charset タグがありません。ファイルが UTF-8 エンコーディングでない場合、エンコーディング変換を行う必要があります。たとえば、繁体字中国語の big5 でエンコードされているプレーンテキストを UTF-8 に変換するには、次のコマンドを実行します。

iconv -f big5 -t UTF-8 inputfilename > outputfilename

エンコーディング変換には、ファイルシステム検査器 も使用できます。

また、テキストエディタを使えば、様々な文字エンコーディングのテキストを自動的に読み出したり書き込んだりできます。または、ファイルを開いたり保存するときに、明示的にエンコーディングを指定することもできます。

テキストエディタを開始するには、 「起動」をクリックし、 「アプリケーション」 -> 「アクセサリ」 -> 「テキストエディタ」の順に選択します。

1.10.1.6 ファイル名とディレクトリ名

マルチバイト文字を含むファイル名やディレクトリ名が UTF-8 エンコーディングになっていない場合は、エンコーディング変換を行う必要があります。ファイルシステム検査器 を使って、レガシー文字エンコーディングによるファイル名やディレクトリ名、プレーンテキストファイルの内容を、UTF-8 エンコーディングに変換できます。詳細は、ファイルシステム検査器 のオンラインヘルプを参照してください。

ファイルシステム検査器 を開始するには、 「起動」をクリックし、「アプリケーション」 -> 「ユーティリティ」 -> 「ファイルシステム検査器」の順に選択します。

ファイルマネージャを使用して SMB 経由で Microsoft の Windows 上のファイルにアクセスする場合は、エンコーディング変換せずに UTF-8 以外のファイル名やディレクトリ名にアクセスできます。このとき、バグの為ファイルマネージャーの「場所: 」に表示されるファイルパスが文字化けした様に見えますが、ファイル内容の表示に支障はありません。

1.10.1.7 従来のロケール固有のアプリケーションの起動

Unicode UTF-8 への移行準備が整っていないアプリケーションの場合、フロントパネルにランチャーを作成すると、従来のロケールでアプリケーションを開始できます。コマンドラインからアプリケーションを直接開始することもできます。アプリケーションのランチャーを作成するには、次の手順を実行します。

  1. フロントパネル上のランチャーを配置したい場所で右クリックします。

  2. 「パネルに追加」 -> 「ランチャー」と選択します。

  3. 「ランチャーの作成」ダイアログの「コマンド」フィールドに、次の形式で入力を行います。

    env LANG=locale LC_ALL=locale アプリケーション名

    たとえば、/usr/dt/bin から motif-app という名前のアプリケーションを中国語の Big5 ロケールで開始する場合は、「ランチャーの作成」ダイアログの「コマンド」フィールドに、次のテキストを入力します。

    env LANG=zh_TW.BIG5 LC_ALL=zh_TW.BIG5 /usr/dt/bin/motif-app

    アプリケーションの正しい LD_LIBRARY_PATH を指定しなければならない場合もあります。

  4. 「了解」をクリックすると、パネルにランチャーが作成されます。

従来のロケール固有の CLI (コマンドラインインタフェース) アプリケーションを実行する場合は、まず従来のロケールで端末エミュレータウィンドウを開いた後、同じ端末エミュレータウィンドウで CLI アプリケーションを実行します。端末エミュレータウィンドウを従来のロケールで開くには、次のコマンドを入力します。

env LANG=locale LC_ALL=locale gnome-terminal --disable-factory.

端末エミュレータウィンドウの「文字エンコーディングの設定」メニューでエンコーディングを変換すれば、従来のロケールで新規の端末エミュレータウィンドウを開く代わりに、現在の端末エミュレータウィンドウでロケール設定を UTF-8 から従来のロケールに切り替えることができます。この場合、現在のシェルに対して LANG および LC_ALL 環境変数を設定し直す必要があります。