[ANN] Ruby-GetText-Package-1.3.0



Ruby-GetText-Package-1.3.0 is now available.

Now ActiveRecord::Column.human_name values translate automaticaly.

Changes for RoR

  • Improve Local::Object
    • POSIX, C convert to “en”.
  • Enhance supports of Ruby on Rails.
    • ActionMailer localization support.
      • Use GetText function(() N() etc) in template.
      • ISO-2022-JP charset is used when language is “ja”(Japanese).
    • Localization templates support.
      • ActionController::Base.render_text is overrided to find
        localized templates such as foo_ja.rhml, foo_ja_JP.rhtml.
    • @params[“lang”] is treated as cgi[“lang”]
    • Use N_() as localized messages of validates_* instead of _().
    • Translates ActiveRecord::Column.human_name values automatically.
  • Fix memory leak, other bugs.

Thanks to:
Albert R., Yugui, drawnboy, Erkki Eilonen,
Nickolay K., Kazuhiro NISHIYAMA and others.

Now you need to use N_() as localized messages of validates_* instead of

If you use _(), it works on development mode but doesn’t work on



class Article < ActiveRecord::Base
validates_presence_of :title, :message => N_("%{fn} can’t be empty")
validates_length_of :description, :minimum => 10, :message => N_(“is
required more than %d characters”)




Screenshots in 10 language (Sample Rails blog) is:

What’s this?

Ruby-GetText-Package is a Localization(L10n) Library and Tools which is
modeled after GNU gettext package.

The library converts the messages to localized messages properly using
client-side locale information. And the tools for developers support
to create, use, and modify localized the message files(message catalogs)


  • Simple APIs(similar GNU gettext)
  • rgettext command for creating po-files from files below:
    o ruby scripts
    o glade-2 XML file(.glade)
    o ERB file(.rhtml)
    o ActiveRecord (.rb)
  • rmsgfmt command for creating a mo-file from a po-file.
  • The po-file is compatible to GNU gettext.
    You can maintain these files to use GNU getext tools.
  • The mo-file is compatible to GNU gettext(msgfmt).
  • multi-textdomain supported.
    You can select two kind of textdomain’s scope:
    o A file base (default: recommanded)
    o A Class/Module base (GetText::Container, GetText::ErbContainer,
  • CGI support (gettext/cgi)
  • ERB support (gettext/erb)
  • Ruby on Rails support (gettext/rails)

Status of translations

cs - 1.3.0
de - 1.3.0
el - 1.3.0
es - 1.3.0
fr - 1.3.0
it - 1.0.0 (still old)
ja - 1.3.0
ko - 1.3.0
nl - 1.3.0
pt_BR - 1.3.0
sv - 0.8.0 (still old)

Can you help us?/ Can we help you?

Join our ML if you are interested in:

  • Improve Ruby-GetText-Package.
  • Translators.
  • Application/library owners who think to make your apps/libs L10n.
    If you send us your po-files, we’ll translate it!

    At least, a Japanese translator is available ;).