よたらぼ
自分の興味の赴くままにIT技術系のネタを取りとめもなくメモっています。
Ruby言語やLinuxのネタが多いです。

May 09, 2002

[Ruby] Ruby-GetText-Package

いろいろ考えたが、やはり、GNU GetTextのラッパにすることにした。ただしAPIは今の実装に近いモノにする予定。それでも以前のバージョンとの互換性は無くなるかも。すんまそ。

[tDiary] アンカー自動生成プラグイン

こんだけキャンペーンをやってもあいかわらず人気のない(^^;)アンカー自動生成プラグインですが、バグってたのでアップデートしました。ま、誰も使ってなさそうだから、ま、いっか(^^;)。

使うと便利なんだけどなぁ...>まだ言う(^^;)。

本日のツッコミ(全2件) [ツッコミを入れる]

アビー [僕の作ったtdlinkはさらに不人気だが…。というか知名度無さ杉だと思われ。]

むとぽん [何事もアピールが大事かと(^^;)。]


May 09, 2003

[Misc] URLの永続性(続き)

この世界を実現しようと思ったら、URLの参照元のページはURL参照先と同じ文字コードじゃないと現実的ではないでしょうね。

ZnZさんの指摘にURLに直接多言語が使えるようになったとしたら、同じようにサーバにどのエンコードで送ればいいのかというのがありましたが、結局、参照元のHTMLではリンクをはる際に多言語のURLを書く必要が出てくるでしょうから、世界中のHTML自体の文字コードをまずは統一するようにしないと無理じゃないですかねぇ。となると現時点ではUTF-8が一番現実解なのかなと。

もちろん、それを実現するためには関係するあらゆるツールがURLとしてUTF-8に対応しなければならないのでしょうね。現時点でどのツールがどこまで対応してるのかはわかんないですけど今のところは現実的ではないのかもしれませんね。

って、今、気づいたのですが、EUC-JPなページで、例えば、

<a href="http://ruby-gnome2.sourceforge.jp/ja/hiki.cgi?さあ始めよう">さあ始めよう</a>って書いておくと、MozillaだときちんとURL Encodeされてからアクセスしに行くんですね。これは知らなかったなぁ。でも、URL Encodeされた後の文字列がLocationのところに表示されたら意味ナイですよね。ここがきちんと日本語で表示されないと。


May 09, 2006

[Rails] Ruby-GetText-Packageでデフォルトのロケールを英語以外にする

アプリのmsgidとしては英語で用意するんだけど、中国のリソースを用意してかつ、中国語をデフォルトにしたい、という要望がrails MLで出たので例を書いてみた。

require 'gettext/rails'
class ApplicationController < ActionController::Base
  prepend_before_filter :default_locale
  def default_locale
    if (cookies["lang"].nil? or cookies["lang"].empty?)
      GetText.locale = "zh_CN"
    else
      GetText.locale = cookies["lang"]
    end
  end 
  init_gettext "yourapp"
end

この例はcookie["lang"]にデフォルトのロケールをセットする例。langの選択・設定自体は他にGUIを作って設定する。
場合によってはセッションを使っても良いだろうし、ユーザ毎にGUIの制御を行っている場合はデータベースの該当テーブルに設定したりすることもあるだろう。ということで、ライブラリ化は先送りかな。まぁ、Tipsということで。

[Ruby] Ruby-GetText-Package Railsでのバグ

validates_length_ofでmessageを%d付きで指定するとローカライズされないとい不具合があったので修正しました。同時にお二方からレポートいただきました。

このファイルのRevision 1.34をダウンロードしてお手元のlib/gettext/rails.rbと置き換えてください(例えば/usr/lib/ruby/gems/1.8/gems/gettext-1.5.0/lib/gettext/配下にインストールされていると思います)。

しかし、我ながらすごいソースだ・・・。見ちゃいやん。


更新 設定