タイトルJavaのプログラムをDec 2001版Project Builderで作成する場合の変更点と、バックスラッシュの入力カテゴリーProjectBuilder/Interface Builder, Java
作成日2001/12/19 15:37:51作成者新居雅行
Developer Tools December 2001がリリースされ、Project Builder 1.1.1となった。その前のSeptember 2001版では、ビルド設定のフラグとして、コンパイル時にファイルのエンコードをUTF-8であると指定する必要があった。それがないと、コンパイルエラーが出たときに、Project Builderがフリーズする。そうすると、今度は日本語を含むプログラムソースは、UTF-8フォーマットにしなければならなかった。しかしながら、この問題は、December 2001版では解消されている。ビルドフラグに何も設定しなくても、きちんとコンパイルされ、ビルド時のメッセージの日本語が文字化けすることはない。また、ソースコードのファイルのエンコードはデフォルトの「日本語(Mac OS)」でかまわない。なお、このエンコードでは、シフトJISコードだと考えればよい。
ただ問題は、September 2001版に向けて、UTF-8のエンコードにしてしまったソースである。ビルド設定をそのままにしておけばOKかと思ってしまったが、そうすると謎のエラーが出る。コンパイルオプションを-encoding UTF8にしてもやはり同様である。いちばん確実な方法は、ソースコードのエンコードを「日本語(Mac OS)」にして、コンパイルオプションを削除するということになるだろう。
このとき、単に1つのプロジェクトに使っているソースは基本的には作業をするだけになるが、1つのソースをいくつかのプロジェクトで使い回しているときに、1つのプロジェクトでだけエンコードを変更した場合、他のプロジェクトでは文字化けされてしまうという現象が出てしまう。ソースファイルのエンコードはファイルにではなく、プロジェクトで覚えているようなのだ。そこで次のようにすれば、とりあえず設定を変更できるようである。2つ目以降のプロジェクトでは、Command+Iで情報ウインドウを出して、左のリストでソースファイルを選択する。すると、UTF-8と解釈してシフトJISのファイルを開くので文字化けするが、Command+shift+Wでウインドウを閉じると、左のリストでファイルが選択されているが閉じているという状態になる。そこで、ファイル情報のパレットで、エンコードを変更すると良い。

ところで、プログラムにはバックスラッシュの入力は不可欠だが、\のキーボードだと「\」しか入らないように思える。Windowsだと、\がバックスラッシュのような判断が概ねOKであるのだが、Mac OS Xではちょっと様子が違う。Englishキーボードやことえりのパレットなどの手法もあるのだが、実は半角の\の入力で、ファイルにはバックスラッシュが入力されているということなのだそうだ。ただ、キーを入力した段階では、\に見えているが、そしてファイルを閉じて再度開くと、それは半角のバックスラッシュとなっている。ファイルのエンコードが「日本語(Mac OS)」なら確かにそうなっているので、試してみてもらいたい。
関連リンク