ICU – International Components for Unicode for Ruby
Pragmatic integration of ICU (International Components for Unicode) into Ruby. Format numbers, dates, times and currency amounts according the conventions of a chosen locale.
Examples
ICU::Locale.default = ‘en_US’
> ‘en_US’
locale = ICU::Locale.default
> #<ICU::Locale:0x2ac572348c00 @locale_id=“en_US”>
locale.country.name
> ‘Spain’
locale.language.name
> ‘Spanish’
locale.country.name(‘es_ES’)
> ‘España’
locale.language.name(‘es_ES’)
> ‘español’
ICU::Locale.available
> [all installed locales]
ICU::Locale.available(:allowed => [‘es_ES’, ‘en_US’])
> [[“English (United States)”, “en_US”], [“Spanish (Spain)”, “es_ES”]]
ICU::Locale.determine_from_http(request.env)
> ‘es_ES’
1073741823.localize
> ‘1,073,741,823’
-1073741823.323.localize(:currency, :locale => ‘he_IL’)
> ‘-1,073,741,823.32 ₪’
1.1239.localize(:spellout)
> ‘one point one two three nine’
43289.localize(:spellout, :locale => ‘es_ES’)
> ‘cuarenta y tres mil doscientos ochenta y nueve’
Time.utc(2006, 5, 8, 8, 31, 34).localize(:date => :full, :locale => ‘es_ES’)
> ‘lunes 8 de mayo de 2006 8:31:34’
Time.pattern(:time => :full, :locale => ‘es_ES’)
> “dd/MM/yyyy HH’H’mm”ss" z”
See more in units tests in test/
Download
The latest version of ICU can be found at
Requeriments
You must install ICU 3.6 or 3.8 from icu-project.org/download/
See ext/extconf.rb
Installation
The prefered method of installing ICU is through its GEM file. You’ll need to have RubyGems installed for that, though. If you have, then use:
% [sudo] gem install icu-x.x.x.gem
If fails try with:
% [sudo] gem install icu-x.x.x.gem -- --with-icu-lib=/usr/local/lib --with-icu-include=/usr/local/src/icu/source/i18n
See ext/extconf.rb
Support
You can find the ICU RubyForge page at rubyforge.org/projects/icu. For other information, feel free to contact [email protected].
License
Copyright © 2007 Joshua Llorach, released under the GNU Lesser General Public License