motion-localizationというgemを作った
最近RubyMotionを触る機会ができたので、昔書いたコードを掘り起こしてきたり、最近はどんな風にするのが良いのか調べたりしている中、お得意のヤク毛刈りの一環でローカライズ作業に関する小物を作った。
導入するとローカライズに必要なファイルを作成するRakeタスクが使えるようになります。それだけです。
使い方
インストール
Gemfileに以下を追加してbundle install。
gem 'motion-localization'
Gemfile使ってない人はこれを機に使おう。
Rakefileでrequire
Rakefileの適当な場所でrequire。
$ require 'motion-localization'
rakeで実行
タスクが追加されているかどうかを確認する。
$ rake -T
以下の行があればOK。なかったら?ミステリーですね。最初からやり直してみましょう。バグだったらごめんなさい。
rake localization:create # create localization files (options: lang_code=xx )
問題なく追加されていたらlang_codeを指定して実行する。
$ rake localization:create lang_code=en $ rake localization:create lang_code=ja
するとen.lprojとかja.lprojとかInfoPlist.stringsとかLocalizable.stringsとかができるので、後は適宜編集する。どう編集するかなどは以下の参考リンクなどを参考にどうぞ。
ちなみに既存のファイルがある場合は何もしない。
コード内でローカライズ文字列を扱うにはBubbleWrapやsugercubeに便利メソッドが用意されているので、それらを使うと楽。