ローカライズの話

「脳力活性」をローカライズしたという話をしたけど、これはメニューやアプリのタイトルのことで実行中のメッセージは英語しか用意していなかった。
「これでは遺憾」ということで、メッセージもローカライズしてみた。

私が今まで作ってきたWindows Mobile用のアプリでは、コード内に直接日本語を書いてきたが、そういうことをやってはいけないらしい(笑)
その代わりに日本語のリソースを用意してプログラム内に含めておけば簡単にローカライズ出来る仕組みになっている。
知っている人にとっては当たり前のことなのだろうが、私は知らんかったので大いに感心してしまっている。
Macの実行可能形式の*.appはファイルではなく実行可能ファイルを含めたディレクトリである。
そのディレクトリ内に各言語対応のリソースファイルを含めておけば、実行環境に応じて適切な言語で表示される。
メニューやタイトルを日本語で表示するにはADD(日本語訳)内の「Cocoaセミナー初級編」で解説されている通りにやれば簡単に出来る。
メッセージを日本語で表示したい場合は、「japanese.lprog」というサブディレクトリに「Localizable.strings」というファイルを作成すればいい訳だが、これもXcodeで簡単に出来る。
上の画像の「脳力活性」を例で説明をすると、左側の「correct」という定型文を「正解」と表示されるようにしたい場合は、
まず、Xcodeのメニューから「ファイル」>「新規ファイル...」>「プロジェクト内の空のファイル」で「Localizable.strings」というファイルを作成する。
このファイルがデフォルトの英語リソースとなる。

"correct";

とkeyとなる値の文字列を入力。
続けてプロジェクトウィンドウで「Locallizable.strings」を選択して、右クリックで「情報をみる」で表示されるウィンドウで「ローカリゼーションを追加...」をクリック。

ポップアップリストから「japanese」を選択する
追加されたファイルに

"correct" = "正解"

と入力。