Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Mojoliciousのl10 nを自動化するツール

Perl WAF Mojolicious L10N automation method.

  • Login to see the comments

  • Be the first to like this

Mojoliciousのl10 nを自動化するツール

  1. 1. MojoliciousのL10Nを自動化す るツール 吉祥寺.pm #3 2015.04.17 @dokechin
  2. 2. 自己紹介(@dokechin) ・Mojolicious一筋3年目 ・代表作Jognavi 「http://jognavi.dokechin.com」
  3. 3. L10N= Localization 10文字
  4. 4. 手順 1.Mojolicous+国際化プラグイン(I18N)+ L10N系コマンドのインストール 2. I18Nの設定 3.テンプレートファイルを編集 4.語彙ファイルの自動作成 5.語彙ファイルの編集 6.翻訳設定の準備 7.語彙ファイルの翻訳
  5. 5. モジュールのインストール cpanm Mojolicious cpanm Mojolicous::Plugin::I18N cpanm Mojolicous::Command::generate::lexicon cpanm Mojolicous::Command::generate::lexicont
  6. 6. I18Nプラグインの設定 package Sample::Web; use Mojo::Base 'Mojolicious'; startup { my $self = shift; $self->plugin('I18N'); ・・・ }
  7. 7. テンプレートの編集(hoge.html.ep) % layout 'default'; % title 'Welcome'; <%= l 'hello' %><br /> <%= l 'good_bye' %>
  8. 8. 語彙ファイルの作成 $ ./script/sample_web generate lexicon en
  9. 9. 語彙ファイルの編集 package Sample::Web::I18N::en; use base 'Sample::Web::I18N'; use utf8; our %Lexicon = ( 'good_bye' => ‘', 'hello' => '',); 1; ひな形が作成されるので、入力し ていく
  10. 10. 翻訳設定の準備 Projectホームにlexicont.confファイルを用意 { lingua_translate => { back_end => "BingWrapper", client_id => “YOUR_CLIENT_ID", client_secret => “YOUR_CLIENT_SECRET ", } }
  11. 11. 翻訳 $ ./script/sample_web generate lexicont en ja zh fr de es ar 英語の語彙ファイルから日本語、中国語、フラン ス語、ドイツ語、スペイン語、アラビア語の語彙 ファイルを翻訳して出力
  12. 12. 翻訳バックエンドはいろいろ変えられ る! Lingua::Translate::InterTran Lingua::Translate::Google 有料 Lingua::Translate::Babelfish Lingua::Translate::SysTrans Lingua::Translate::Yandex Lingua::Translate::Bing 200万文字/月無料 Lingia::Translate系モジュールは同一IFで翻訳機能を提供 している! だだ、BingはIFが違っていたのでラッパーを提供した。
  13. 13. ご清聴ありがとうございました

×