Ruby言語やLinuxのネタが多いです。
July 04, 2004
■ [Ruby] Ruby-GetText-Package-0.6.0 released
リリースした。なんか、ますますリリース作業に時間がかかるようになってきてしまった....。いつになっても苦手な作業だ。
■ さて、今回の目玉は、対象文字列を抽出してpoファイルを生成してくれるrgettextが、rubyのソースだけではなくGlade-2の生成したXMLファイル(.gladeファイル)からも直接poファイルを生成できるようになったことだ。
rgettextは複数のソース、.gladeファイルをまとめて指定できるので、ソースがXMLだろうがrubyのソースだろうが関係なく1つのpoファイルにまとめることができるようになった。
■ これで、Ruby-GNOME2で国際化アプリを作るときの最後の障害が排除できた....かな?
■ 以前、Ruby-GetText-PackageをRubyで再実装するときに、どうせ車輪の再発明をするくらいなら出力ファイルであるmoファイルをGNU GetTextのバイナリフォーマット互換にせずに、XMLかなんか(当時はYAMLが無かった)で表現した方が良いのではないかと一時期悩んだこともあった。
#ってか実装までしたんだよなー。
でも、最近は、Ruby/Libglade2等のようにGNU GetTextのmoファイルが前提となるようなライブラリがあることを知ったので、このmo互換路線は結果的には良かったなぁという気がしてきた。あまりいろいろなフォーマットが乱立するのもどうかなと思うしね。
■ おっと。こういう書き方すると、Ruby-GetText-PackageはまるでRuby-GNOME2のためのライブラリと思われる人もいるかもしれないけど、そうではないつもり。
是非、他のツールキット、コンソールアプリ、なんでも良いんだけど国際化をする際には使ってみて欲しいなぁ。
#とはいっても、moファイルの読み込み等で起動時のオーバーヘッドが
#あるので、CGIなんかには向かないかも知れないんだけどね。
■ あ、そうそう、もう一つ改善したところとして、rgettextが以下のようなフォーマットもサポートできるようになった(はず)。オレはあまり気にしない方なんだけど、案外、要望が多かったんだよな。
str1 = _("aaa
bbb
ccc")
str2 = _("aaa"
"bbb"
"ccc")
str3 = _("aaa") + foo + _("bbb")

Before...
▲ むとぽん [Thanks ;)]
▲ なかだ [ヒアドキュメントはダメですか。 $ rgettext -v /usr/bin/rgettext 1.12 (200..]
▲ むとぽん [そこまで考えてませんでした...(^^;)。]