2012/01/31

フリーの国際化ツールLocalization Suiteを試す

フリーの国際化ツールLocalization Suiteの存在を最近知ったので、便利かどうか試してみることにしました。

なお、この文書では例としてOS X 10.6.8環境下で、Xcode 4.2のプロジェクト作成時のテンプレートであるMaster Detailed Application (Story board未使用)をLocalization Manager 11.4などを用いてローカライズします。

インストール

Localization SuiteからLocalization Suite.tbzをダウンロードします。

これを解凍し、作成されたフォルダLocalization Suiteをアプリケーションフォルダにでも入れればよいでしょう。

ローカライズ前準備

  1. Xcode 4.2のテンプレートであるMaster Detailed ApplicationのプロジェクトをStory board未使用で作成します。
  2. プロジェクト内の適切な場所で次のようにして.stringsファイルを作成します。

    > genstrings -o en.lproj *.m

  3. 作成されたLocalization.stringsをプロジェクトに追加してLocalizationにJapaneseを追加します。

ローカライズ手順

  1. Localization Managerを起動します。

  2. [File] → [New] → [From Xcode Project...]を選択します。ローカライズプロジェクトを作成することになるのでプロジェクト名を指定して[Save]します。

  3. 読み込むXcodeプロジェクトを選択します。

  4. なぜかLocalization.stringsが取り込まれないので左端中ほどにある [+] をクリック。

  5. そして、Localization.stringsを選択し[Open]。

  6. これでローカライズが必要なファイルがプロジェクトに含まれました。ここから日本語ローカライズを追加しましょう。左下の [+] をクリックします。

  7. ダイアログからjaを[Add]します (テキストボックスに入力すると候補が絞り込まれます)。

  8. その後、右下の[Edit...]をクリックすると.locを作成して、Localizerが起動しますのでJapaneseの欄に翻訳を入力して保存します。

    ちなみに、下に元の文字列に近い候補が出たりします。このスクリーンショットではiPhoneとiPadのxibで同じ文字列があるので表示されています。

  9. Localization Managerのファイル(.ldb)とLocalizerのファイル(.loc)は完全に独立しているようなので、書き戻す必要があります。Localization Managerに戻り、[Edit...]の左の[Read In...]をクリックすると.ldbに書き戻されます。

  10. 最後に、右下の[Synchronize]をクリックするとローカライズファイルが作成されます。Xcodeで実行して確かめてみましょう。

あとは、変更があるたびに[Rescan]して翻訳追加、[Synchronize]を繰り返します。

長所

Localization Suiteを使う利点は次のものが挙げられます。ほとんどの点は他のローカライズツールに言えることでもあります。

  • 似ているエントリの翻訳から自動翻訳できる (iPhoneとiPadで同じようなxibがあるときに便利)
  • 辞書が使える (今回は利用していませんが、表記揺れを防ぐことができるかも)
  • 追加・削除されたエントリのメンテナンスが自動的に行われる
  • 翻訳対象ファイルが複数あってもまとめて編集できる
  • 各翻訳言語ごとの翻訳状況が一覧で把握できる

問題点

ここまで読んできて、良いことづくめのツールのように見えるかもしれませんが、次のように問題点も多く、私個人はこのツールを利用していません。

  1. 編集したLocalizerのファイルが取り込めないときがある
  2. SynchronizeするたびにXcodeプロジェクトのスキーマがおかしくなる
  3. ストーリーボードに対応していない
  4. ヘルプなどの情報が少ない

1.については、最初の1、2回はLocalizerファイルの[Read In...]が使えるのですが、それ以後は次のようなエラーが出て、使えなくなってしまいます。

Old Localizer files without bundles are no longer supported!

Localizerなしでもそれなりに利用できるのですが、自動翻訳などの便利機能が使えなくなるので利用価値が半減してしまいます。

以上、いろいろ問題点を挙げましたが結局のところ、私個人の翻訳対象が1言語/100キー程度ということでわざわざローカライズツールを使うまでもないという結論に逹したというのが大きな理由です。多言語翻訳や大量の翻訳が必要になったときに、また検討してみたいと思います。

まとめ

Localization Suiteの利用法や使用感を紹介しました。ちなみに、ローカライズツールはApp Storeにもいくつかありますので興味を持たれた方は試してみてはいかがでしょうか。

関連項目

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。