メッセージのi18n化にgettext_i18n_railsを使う

2014/06/05 1:09 に 森山誠二郎 が投稿   [ 2014/06/09 19:33 に更新しました ]
gettext_i18n_railsについては、Rails 3.0で gettextを使う などを参考にする。

1。rake gettext:find を実行

RubyLex::SyntaxError: unknown type of %string というエラーがでる。

対策: Re: RubyLex fails to read "#{Time.now.strftime("%m/%d")}" に従って、" をシングルにかえる

2。locale/ja/app.po を編集する

drymlからgettextしたくて、lib/tasks/gettext.rakeを以下のように定義してみたが、うまくいかない。

namespace :gettext do
 def files_to_translate
  Dir.glob("{app,lib,config,locale}/**/*.{rb,erb,dryml}")
 end
end

drymlからerbをシンボリックリンクすれば、gettextできる。dryml中の、_('xxxx') は変換される

MEMO
    localeを変更するには、デバッガなどを使って
        session[:locale] = :ja
        session[:locale] = :en
    で変更できる

Comments