いがらしです。

「[ruby-list:15182] Re: ruby にメッセージの国際化の仕組みはありますか?」で 、
Tomoyuki Kosimizu <greentea / fa2.so-net.ne.jp>さんは書きました:

> From: "HIRATA Naoto" <hirata-naoto / sannet.ne.jp>
> Subject: [ruby-list:15179] ruby にメッセージの国際化の仕組みはありますか?
> Date: Thu, 1 Jul 1999 22:56:24 +0900
> 
> > rubyにgettextやjavaのリソースバンドルのようなロケールに
> > 応じてメッセージを差し替える仕組みあるいはモジュールなど
> > はあるのでしょうか?ご存知の方がいらしたら教えてください.
> 
> Rubyの標準にはそのようなものは用意されていません。
> 
> 五十嵐さんのライブラリが参考になるかも知れません:
> 
> http://www.ueda.info.waseda.ac.jp/~igarashi/ruby/index-ja.html#library

一応JavaのLocaleとPropertyResourceBundle相当のものを
目指して作っていますが、たいしたことはやっていません。
ライブラリパスをサーチして、環境変数LANGの値から得た
ロケールに合うリソースをPropertyオブジェクト(人間可読な
形式で読み書きできるHash)を返すだけです。
いまのところ上のページにある通り、API Document
フォーマッタに使っている程度です。

抱えているもっとも大きな問題はリソース中のテキストの
符号化方式で、今はファイルから読み込んだ後、無変換で
使っています。

RubyのStringで使う符号化方式(SJIS/EUC-JP/UTF-8)別に
リソースファイルを作るか、読み込み時に適切な変換を
しなくてはいけないのですが、いまそのような仕組みは
もっていません。

「gettextなどde facto standardなものを使った方が
世界中の人が幸せになれる」という意見ももらっているので、
そういった方向も模索していきたいと思っています。とはいえ、
Rubyに限らずどの言語においても「これならみんながhappy」と
いう方法が確立していないのがつらいところです。

----
五十嵐  宏  (Hiroshi IGARASHI)