No commit activity in last 3 years
No release in over 3 years
Get the translated timezones according to CLDR. Support for 573 languages.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 0
 Project Readme

Translated timezones according to CLDR

Install

gem install ruby-cldr-timezones

Usage

require 'cldr/timezones'

To get a basic subset of translations you can simply pass the locale.

Cldr::Timezones will return a hash with the following format {timezone_identifier => "(GMT Offset) timezone_name_translated"}

Cldr::Timezones.list(:es) # {"Europe/Moscow" => "(GMT+04:00) Moscú"}
Cldr::Timezones.list(:ja) #	{"America/Cordoba" => "(GMT-09:00)モスクワ"}

There is also support for fallback.

Cldr::Timezones.list(:"es-MX") # {"Europe/Moscow" => "(GMT+04:00) Moscú"}

If you want to retrieve the full set of timezones (currently 581) you can simply pass the option :full

Cldr::Timezones.list(:ja, :full) #To get the full list of timezones

If you want to get a list which contains the translated name, offset and GMT translation and format for each translation (supports :full option, i.e. :pt, :full)

Cldr::Timezones.raw(:ja) # {"America/Cordoba" => ["コルドバ", "+08:00", "GMT"]

If you want to get the list of supported languages

Cldr::Timezones.supported_locales # ["aa", "aa-DJ", "aa-ER", "aa-ET",...."zh-Hant-TW", "zu", "zu-ZA"]

If your project is already using ActiveSupport mapping and you want backwards compatibility use:

Cldr::Timezones.list(:ja, :rails_identifiers) # {"St. Petersburg" => "(GMT+04:00) Moscú"}

If you want both ActiveSupport mapping and the full list of timezones use:

Cldr::Timezones.list(:ja, {:rails_identifiers => true, :full => true}) #To get the full list of timezones

TODO

  • Handle BIDI timezones

    Cldr::Timezones.list(:ar) # {"America/Cordoba" => "0}جرينتش} كوردوبا"}

Author

Ana Martinez
acemacu@gmail.com
License: MIT

Build Status Code Climate