NetBeans上でGetTextRailsを使う
はじめに
Ruby 1.8.7以降を使うこと。今回は以下の環境で実施した。
- RubyInstallerForWindows 1.8.7
- Ruby on Rails 2.3.5
- Ruby gems 1.3.5
- GetText Rails 2.1.0
インストール&設定
NetBeansを起動し、「ツール」→「RubyGems」を開き、Gems関連のインストール済みファイルを更新しておく。その後、gettext_railsをインストールする。
次に、よたらぼ 保管庫:Ruby on RailsでRuby-GetText-Packageを使う (Rails-2.3.2以降)を参考に、GetTextを使って多言語化したいプロジェクトを開く。
まず、environment.rbの設定部分に以下を追加する。
Rails::Initializer.run do |config| : : #For Gettext_rails config.gem "locale" config.gem "locale_rails" config.gem "gettext" config.gem "gettext_activerecord" config.gem "gettext_rails" : : end
つぎに、app/controllers/application_controller.rbに以下を加える。
class ApplicationController < ActionController::Base : : #For gettext init_gettext "blog" #この名前でpoファイルが作られる。 : : end
そして、rakeファイルをlib/tasks/以下に追加する。NetBeansで「ライブラリ」→「tasks」にカーソルを合わせ、右クリックし、「新規」→「空のファイル」で「gettext.rake」というファイルを新規作成する。Labs IT技術ブログ:Ruby on Rails Tips - Gettextの使い方と[http://github.com/mutoh/gettext_rails:title=GitHub:gettext_rails]を参考に中身は以下のようにした。
require 'rubygems' desc "Create mo files" task :makemo do require 'gettext_rails/tools' GetText.create_mofiles end task :updatepo do require 'gettext_rails/tools' regrep = '{app,config,components,lib}/**/*.{rb,erb,rjs}' GetText.update_pofiles("blog", Dir.glob(regrep), "1.0.0") end
そして、poファイルを作成する。NetBeansでプロジェクト名上で右クリックし「Rakeタスクを実行/デバッグ」を選択する。まず、「タスクの更新」をクリックし、その後「文書化されていないタスクを表示」をチェックする。すると、updatepoが表示されるので実行する。うまく実行されるとpoディレクトリが作成される。
参考リンク
- GitHub: gettext_rails
- Agenda Labs IT技術ブログ:Ruby on Rails Tips - Gettextの使い方
- よたらぼ 保管庫:Ruby on RailsでRuby-GetText-Packageを使う (Rails-2.3.2以降)