Ruby言語やLinuxのネタが多いです。
July 11, 2007 [おもひで]
■ [Ruby] Amrita2のビューをGetTextでL10n化
by essaさん。普通にViewで文章を書いていけば(特に意識せずに)ローカライズができる、というもの。テンプレートエンジン自体がL10nをまともにサポートするって実はあまり知らないんだけど、これはすごいね。
例えば、英語のアプリがAmrita2で書かれていたとすると、開発者本人は意図していなかったとしても外部の人が勝手に(本体に手を入れることなく)日本語化できてしまう(文章のローカライズだけだしerb使ってるところは_("")しないといけないとか多少の制限はあるけど)。
こういうのを見てしまうと、erbで(ローカライズのためだけに)<%= _('foo') %>と書くのはちょっと美しくないよなぁ、と思ってしまう。
(1)最初は一つの言語でガリガリ書いてしまって(2)後で一つずつ文字列を_("")で囲んでいく、っていう流れで開発していた面倒くさがりやさんにとっては、Amrita2では(2)の作業がいらなくなる分、楽できるよね。
というわけでAmrita2の今後の展開に期待!
■ 蛇足だけど、Ruby-GetTextでは文字列抽出時、標準のパーサ(ruby, erb, activerecord, glade2)の他に自分でパーサを定義できる。
おそらくAmrita2ではこの機能を使っていただいていると思われるんだけど(まだソースが未公開なのかな。RubyForgeのAnonymous CVSからは取得できなかったのでまだ未確認)、我ながらこの機能の拡張性はすばらしいと思う。本家(GNU Gettext)のxgettextよりも使い勝手が良いかもしれない(自画自賛(苦笑))。
#ここまで言っておいて違ったりして。その時はスルーの方向で(苦笑)。
