twitter_cldr 6.3.0 → 6.6.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +3 -3
- data/README.md +13 -13
- data/Rakefile +6 -1
- data/lib/twitter_cldr/core_ext.rb +2 -1
- data/lib/twitter_cldr/formatters/list_formatter.rb +7 -1
- data/lib/twitter_cldr/formatters/numbers/number_formatter.rb +15 -4
- data/lib/twitter_cldr/resources.rb +2 -0
- data/lib/twitter_cldr/resources/list_formats_importer.rb +140 -0
- data/lib/twitter_cldr/resources/locales_resources_importer.rb +0 -1
- data/lib/twitter_cldr/resources/segment_rules_importer.rb +2 -2
- data/lib/twitter_cldr/segmentation/state_machine.rb +5 -9
- data/lib/twitter_cldr/version.rb +1 -1
- data/lib/twitter_cldr/versions.rb +2 -2
- data/resources/locales/af/currencies.yml +273 -0
- data/resources/locales/af/languages.yml +5 -7
- data/resources/locales/af/lists.yml +18 -3
- data/resources/locales/af/numbers.yml +3 -0
- data/resources/locales/af/plurals.yml +6 -5
- data/resources/locales/af/territories.yml +5 -5
- data/resources/locales/af/timezones.yml +6 -6
- data/resources/locales/af/units.yml +93 -8
- data/resources/locales/ar/calendars.yml +8 -8
- data/resources/locales/ar/currencies.yml +361 -0
- data/resources/locales/ar/languages.yml +7 -7
- data/resources/locales/ar/lists.yml +12 -0
- data/resources/locales/ar/numbers.yml +75 -72
- data/resources/locales/ar/plurals.yml +12 -10
- data/resources/locales/ar/timezones.yml +1 -1
- data/resources/locales/ar/units.yml +225 -9
- data/resources/locales/az/calendars.yml +9 -9
- data/resources/locales/az/currencies.yml +371 -0
- data/resources/locales/az/languages.yml +5 -5
- data/resources/locales/az/lists.yml +8 -0
- data/resources/locales/az/numbers.yml +3 -0
- data/resources/locales/az/plurals.yml +13 -13
- data/resources/locales/az/units.yml +85 -8
- data/resources/locales/be/currencies.yml +262 -0
- data/resources/locales/be/languages.yml +5 -5
- data/resources/locales/be/lists.yml +18 -3
- data/resources/locales/be/numbers.yml +3 -0
- data/resources/locales/be/plurals.yml +13 -12
- data/resources/locales/be/territories.yml +1 -1
- data/resources/locales/be/units.yml +153 -4
- data/resources/locales/bg/calendars.yml +23 -23
- data/resources/locales/bg/currencies.yml +383 -12
- data/resources/locales/bg/fields.yml +4 -4
- data/resources/locales/bg/languages.yml +12 -10
- data/resources/locales/bg/lists.yml +17 -2
- data/resources/locales/bg/numbers.yml +3 -0
- data/resources/locales/bg/plurals.yml +6 -5
- data/resources/locales/bg/territories.yml +1 -1
- data/resources/locales/bg/timezones.yml +2 -2
- data/resources/locales/bg/units.yml +99 -13
- data/resources/locales/bn/currencies.yml +376 -0
- data/resources/locales/bn/fields.yml +1 -1
- data/resources/locales/bn/languages.yml +9 -9
- data/resources/locales/bn/lists.yml +14 -2
- data/resources/locales/bn/numbers.yml +5 -2
- data/resources/locales/bn/plurals.yml +10 -9
- data/resources/locales/bn/territories.yml +1 -1
- data/resources/locales/bn/timezones.yml +6 -1
- data/resources/locales/bn/units.yml +41 -4
- data/resources/locales/bo/currencies.yml +114 -0
- data/resources/locales/bo/lists.yml +42 -7
- data/resources/locales/bo/numbers.yml +3 -0
- data/resources/locales/bo/plurals.yml +6 -4
- data/resources/locales/bo/units.yml +24 -0
- data/resources/locales/bs/calendars.yml +1 -1
- data/resources/locales/bs/currencies.yml +412 -13
- data/resources/locales/bs/languages.yml +6 -6
- data/resources/locales/bs/lists.yml +18 -3
- data/resources/locales/bs/numbers.yml +3 -0
- data/resources/locales/bs/plurals.yml +12 -11
- data/resources/locales/bs/territories.yml +4 -4
- data/resources/locales/bs/timezones.yml +14 -0
- data/resources/locales/bs/units.yml +118 -30
- data/resources/locales/ca/calendars.yml +7 -3
- data/resources/locales/ca/currencies.yml +400 -0
- data/resources/locales/ca/languages.yml +9 -9
- data/resources/locales/ca/lists.yml +12 -2
- data/resources/locales/ca/numbers.yml +3 -0
- data/resources/locales/ca/plurals.yml +8 -7
- data/resources/locales/ca/territories.yml +1 -1
- data/resources/locales/ca/timezones.yml +19 -21
- data/resources/locales/ca/units.yml +83 -3
- data/resources/locales/cs/currencies.yml +403 -0
- data/resources/locales/cs/languages.yml +4 -5
- data/resources/locales/cs/lists.yml +14 -2
- data/resources/locales/cs/numbers.yml +3 -0
- data/resources/locales/cs/plurals.yml +8 -7
- data/resources/locales/cs/territories.yml +1 -1
- data/resources/locales/cs/units.yml +177 -53
- data/resources/locales/cy/calendars.yml +1 -2
- data/resources/locales/cy/currencies.yml +366 -4
- data/resources/locales/cy/fields.yml +120 -117
- data/resources/locales/cy/languages.yml +9 -9
- data/resources/locales/cy/lists.yml +12 -2
- data/resources/locales/cy/numbers.yml +3 -0
- data/resources/locales/cy/plurals.yml +15 -15
- data/resources/locales/cy/territories.yml +13 -13
- data/resources/locales/cy/timezones.yml +8 -10
- data/resources/locales/cy/units.yml +193 -45
- data/resources/locales/da/currencies.yml +378 -4
- data/resources/locales/da/fields.yml +111 -111
- data/resources/locales/da/languages.yml +11 -11
- data/resources/locales/da/lists.yml +10 -1
- data/resources/locales/da/numbers.yml +3 -0
- data/resources/locales/da/plurals.yml +6 -5
- data/resources/locales/da/units.yml +104 -9
- data/resources/locales/de-AT/currencies.yml +414 -10
- data/resources/locales/de-AT/languages.yml +12 -12
- data/resources/locales/de-AT/lists.yml +18 -3
- data/resources/locales/de-AT/numbers.yml +3 -0
- data/resources/locales/de-AT/plurals.yml +6 -5
- data/resources/locales/de-AT/territories.yml +1 -1
- data/resources/locales/de-AT/timezones.yml +13 -13
- data/resources/locales/de-AT/units.yml +193 -112
- data/resources/locales/de-CH/currencies.yml +414 -10
- data/resources/locales/de-CH/languages.yml +9 -9
- data/resources/locales/de-CH/lists.yml +18 -3
- data/resources/locales/de-CH/numbers.yml +3 -0
- data/resources/locales/de-CH/plurals.yml +6 -5
- data/resources/locales/de-CH/territories.yml +2 -2
- data/resources/locales/de-CH/timezones.yml +13 -13
- data/resources/locales/de-CH/units.yml +191 -110
- data/resources/locales/de/currencies.yml +414 -10
- data/resources/locales/de/languages.yml +12 -12
- data/resources/locales/de/lists.yml +18 -3
- data/resources/locales/de/numbers.yml +3 -0
- data/resources/locales/de/plurals.yml +6 -5
- data/resources/locales/de/territories.yml +1 -1
- data/resources/locales/de/timezones.yml +13 -13
- data/resources/locales/de/units.yml +193 -112
- data/resources/locales/el/currencies.yml +373 -0
- data/resources/locales/el/languages.yml +9 -9
- data/resources/locales/el/lists.yml +14 -2
- data/resources/locales/el/numbers.yml +3 -0
- data/resources/locales/el/plurals.yml +6 -5
- data/resources/locales/el/territories.yml +1 -1
- data/resources/locales/el/units.yml +100 -12
- data/resources/locales/en-001/currencies.yml +420 -11
- data/resources/locales/en-001/languages.yml +14 -14
- data/resources/locales/en-001/lists.yml +8 -0
- data/resources/locales/en-001/numbers.yml +3 -0
- data/resources/locales/en-001/plurals.yml +8 -8
- data/resources/locales/en-001/territories.yml +7 -7
- data/resources/locales/en-001/timezones.yml +2 -0
- data/resources/locales/en-001/units.yml +120 -13
- data/resources/locales/en-150/currencies.yml +420 -11
- data/resources/locales/en-150/languages.yml +14 -14
- data/resources/locales/en-150/lists.yml +8 -0
- data/resources/locales/en-150/numbers.yml +3 -0
- data/resources/locales/en-150/plurals.yml +8 -8
- data/resources/locales/en-150/territories.yml +7 -7
- data/resources/locales/en-150/timezones.yml +2 -0
- data/resources/locales/en-150/units.yml +120 -13
- data/resources/locales/en-AU/calendars.yml +3 -3
- data/resources/locales/en-AU/currencies.yml +408 -3
- data/resources/locales/en-AU/languages.yml +12 -12
- data/resources/locales/en-AU/lists.yml +8 -0
- data/resources/locales/en-AU/numbers.yml +3 -0
- data/resources/locales/en-AU/plurals.yml +8 -8
- data/resources/locales/en-AU/territories.yml +2 -2
- data/resources/locales/en-AU/timezones.yml +3 -1
- data/resources/locales/en-AU/units.yml +118 -14
- data/resources/locales/en-CA/currencies.yml +422 -13
- data/resources/locales/en-CA/fields.yml +2 -2
- data/resources/locales/en-CA/languages.yml +14 -14
- data/resources/locales/en-CA/lists.yml +11 -3
- data/resources/locales/en-CA/numbers.yml +3 -0
- data/resources/locales/en-CA/plurals.yml +8 -8
- data/resources/locales/en-CA/territories.yml +7 -7
- data/resources/locales/en-CA/timezones.yml +2 -0
- data/resources/locales/en-CA/units.yml +124 -17
- data/resources/locales/en-GB/calendars.yml +2 -2
- data/resources/locales/en-GB/currencies.yml +420 -11
- data/resources/locales/en-GB/languages.yml +14 -14
- data/resources/locales/en-GB/lists.yml +8 -0
- data/resources/locales/en-GB/numbers.yml +3 -0
- data/resources/locales/en-GB/plurals.yml +8 -8
- data/resources/locales/en-GB/territories.yml +1 -1
- data/resources/locales/en-GB/timezones.yml +1 -1
- data/resources/locales/en-GB/units.yml +119 -11
- data/resources/locales/en-IE/currencies.yml +420 -11
- data/resources/locales/en-IE/languages.yml +14 -14
- data/resources/locales/en-IE/lists.yml +8 -0
- data/resources/locales/en-IE/numbers.yml +3 -0
- data/resources/locales/en-IE/plurals.yml +8 -8
- data/resources/locales/en-IE/territories.yml +7 -7
- data/resources/locales/en-IE/timezones.yml +2 -0
- data/resources/locales/en-IE/units.yml +120 -13
- data/resources/locales/en-IN/currencies.yml +421 -12
- data/resources/locales/en-IN/languages.yml +14 -14
- data/resources/locales/en-IN/lists.yml +8 -0
- data/resources/locales/en-IN/numbers.yml +3 -0
- data/resources/locales/en-IN/plurals.yml +8 -8
- data/resources/locales/en-IN/territories.yml +7 -7
- data/resources/locales/en-IN/timezones.yml +2 -0
- data/resources/locales/en-IN/units.yml +117 -13
- data/resources/locales/en-NZ/currencies.yml +420 -11
- data/resources/locales/en-NZ/languages.yml +14 -14
- data/resources/locales/en-NZ/lists.yml +8 -0
- data/resources/locales/en-NZ/numbers.yml +3 -0
- data/resources/locales/en-NZ/plurals.yml +8 -8
- data/resources/locales/en-NZ/territories.yml +7 -7
- data/resources/locales/en-NZ/timezones.yml +2 -0
- data/resources/locales/en-NZ/units.yml +120 -13
- data/resources/locales/en-SG/currencies.yml +420 -11
- data/resources/locales/en-SG/languages.yml +14 -14
- data/resources/locales/en-SG/lists.yml +8 -0
- data/resources/locales/en-SG/numbers.yml +3 -0
- data/resources/locales/en-SG/plurals.yml +8 -8
- data/resources/locales/en-SG/territories.yml +7 -7
- data/resources/locales/en-SG/timezones.yml +2 -0
- data/resources/locales/en-SG/units.yml +120 -13
- data/resources/locales/en-US/currencies.yml +409 -0
- data/resources/locales/en-US/languages.yml +13 -13
- data/resources/locales/en-US/lists.yml +12 -2
- data/resources/locales/en-US/numbers.yml +3 -0
- data/resources/locales/en-US/plurals.yml +8 -8
- data/resources/locales/en-US/units.yml +102 -3
- data/resources/locales/en-ZA/currencies.yml +420 -11
- data/resources/locales/en-ZA/languages.yml +14 -14
- data/resources/locales/en-ZA/lists.yml +8 -0
- data/resources/locales/en-ZA/numbers.yml +3 -0
- data/resources/locales/en-ZA/plurals.yml +8 -8
- data/resources/locales/en-ZA/territories.yml +7 -7
- data/resources/locales/en-ZA/timezones.yml +2 -0
- data/resources/locales/en-ZA/units.yml +120 -13
- data/resources/locales/en/currencies.yml +409 -0
- data/resources/locales/en/languages.yml +13 -13
- data/resources/locales/en/lists.yml +12 -2
- data/resources/locales/en/numbers.yml +3 -0
- data/resources/locales/en/plurals.yml +8 -8
- data/resources/locales/en/units.yml +102 -3
- data/resources/locales/eo/currencies.yml +110 -0
- data/resources/locales/eo/lists.yml +42 -7
- data/resources/locales/eo/numbers.yml +3 -0
- data/resources/locales/eo/plurals.yml +7 -6
- data/resources/locales/eo/units.yml +24 -0
- data/resources/locales/es-419/calendars.yml +20 -20
- data/resources/locales/es-419/currencies.yml +382 -0
- data/resources/locales/es-419/fields.yml +1 -1
- data/resources/locales/es-419/languages.yml +7 -7
- data/resources/locales/es-419/lists.yml +18 -3
- data/resources/locales/es-419/numbers.yml +3 -0
- data/resources/locales/es-419/plurals.yml +6 -5
- data/resources/locales/es-419/timezones.yml +1 -1
- data/resources/locales/es-419/units.yml +100 -15
- data/resources/locales/es-AR/calendars.yml +9 -9
- data/resources/locales/es-AR/currencies.yml +382 -0
- data/resources/locales/es-AR/languages.yml +7 -7
- data/resources/locales/es-AR/lists.yml +18 -3
- data/resources/locales/es-AR/numbers.yml +3 -0
- data/resources/locales/es-AR/plurals.yml +6 -5
- data/resources/locales/es-AR/timezones.yml +1 -1
- data/resources/locales/es-AR/units.yml +97 -14
- data/resources/locales/es-CO/calendars.yml +9 -9
- data/resources/locales/es-CO/currencies.yml +382 -0
- data/resources/locales/es-CO/languages.yml +7 -7
- data/resources/locales/es-CO/lists.yml +18 -3
- data/resources/locales/es-CO/numbers.yml +3 -0
- data/resources/locales/es-CO/plurals.yml +6 -5
- data/resources/locales/es-CO/timezones.yml +1 -1
- data/resources/locales/es-CO/units.yml +94 -13
- data/resources/locales/es-MX/calendars.yml +18 -18
- data/resources/locales/es-MX/currencies.yml +383 -1
- data/resources/locales/es-MX/fields.yml +15 -15
- data/resources/locales/es-MX/languages.yml +9 -9
- data/resources/locales/es-MX/lists.yml +18 -3
- data/resources/locales/es-MX/numbers.yml +3 -0
- data/resources/locales/es-MX/plurals.yml +6 -5
- data/resources/locales/es-MX/timezones.yml +5 -5
- data/resources/locales/es-MX/units.yml +104 -19
- data/resources/locales/es-US/calendars.yml +34 -34
- data/resources/locales/es-US/currencies.yml +393 -11
- data/resources/locales/es-US/fields.yml +20 -20
- data/resources/locales/es-US/languages.yml +10 -10
- data/resources/locales/es-US/lists.yml +19 -4
- data/resources/locales/es-US/numbers.yml +17 -14
- data/resources/locales/es-US/plurals.yml +6 -5
- data/resources/locales/es-US/territories.yml +1 -1
- data/resources/locales/es-US/timezones.yml +6 -6
- data/resources/locales/es-US/units.yml +181 -94
- data/resources/locales/es/calendars.yml +38 -38
- data/resources/locales/es/currencies.yml +389 -7
- data/resources/locales/es/languages.yml +7 -7
- data/resources/locales/es/lists.yml +18 -3
- data/resources/locales/es/numbers.yml +3 -0
- data/resources/locales/es/plurals.yml +6 -5
- data/resources/locales/es/territories.yml +3 -3
- data/resources/locales/es/timezones.yml +2 -2
- data/resources/locales/es/units.yml +136 -42
- data/resources/locales/et/currencies.yml +376 -0
- data/resources/locales/et/languages.yml +9 -9
- data/resources/locales/et/lists.yml +14 -2
- data/resources/locales/et/numbers.yml +3 -0
- data/resources/locales/et/plurals.yml +6 -5
- data/resources/locales/et/territories.yml +1 -1
- data/resources/locales/et/timezones.yml +3 -3
- data/resources/locales/et/units.yml +70 -2
- data/resources/locales/eu/currencies.yml +276 -10
- data/resources/locales/eu/languages.yml +6 -6
- data/resources/locales/eu/lists.yml +20 -3
- data/resources/locales/eu/numbers.yml +23 -20
- data/resources/locales/eu/plurals.yml +6 -5
- data/resources/locales/eu/territories.yml +1 -1
- data/resources/locales/eu/timezones.yml +2 -2
- data/resources/locales/eu/units.yml +95 -8
- data/resources/locales/fa/calendars.yml +3 -3
- data/resources/locales/fa/currencies.yml +336 -0
- data/resources/locales/fa/fields.yml +3 -3
- data/resources/locales/fa/languages.yml +18 -18
- data/resources/locales/fa/lists.yml +7 -1
- data/resources/locales/fa/numbers.yml +4 -1
- data/resources/locales/fa/plurals.yml +6 -5
- data/resources/locales/fa/units.yml +219 -125
- data/resources/locales/fi/currencies.yml +405 -0
- data/resources/locales/fi/languages.yml +6 -8
- data/resources/locales/fi/lists.yml +18 -3
- data/resources/locales/fi/numbers.yml +3 -0
- data/resources/locales/fi/plurals.yml +6 -5
- data/resources/locales/fi/territories.yml +9 -9
- data/resources/locales/fi/timezones.yml +2 -0
- data/resources/locales/fi/units.yml +79 -8
- data/resources/locales/fil/calendars.yml +1 -1
- data/resources/locales/fil/currencies.yml +272 -0
- data/resources/locales/fil/fields.yml +1 -1
- data/resources/locales/fil/languages.yml +10 -10
- data/resources/locales/fil/lists.yml +16 -2
- data/resources/locales/fil/numbers.yml +3 -0
- data/resources/locales/fil/plurals.yml +8 -8
- data/resources/locales/fil/timezones.yml +2 -2
- data/resources/locales/fil/units.yml +62 -0
- data/resources/locales/fr-BE/calendars.yml +1 -1
- data/resources/locales/fr-BE/currencies.yml +383 -0
- data/resources/locales/fr-BE/languages.yml +11 -11
- data/resources/locales/fr-BE/lists.yml +12 -2
- data/resources/locales/fr-BE/numbers.yml +5 -0
- data/resources/locales/fr-BE/plural_rules.yml +2 -1
- data/resources/locales/fr-BE/plurals.yml +9 -6
- data/resources/locales/fr-BE/territories.yml +7 -7
- data/resources/locales/fr-BE/timezones.yml +1 -1
- data/resources/locales/fr-BE/units.yml +77 -8
- data/resources/locales/fr-CA/calendars.yml +1 -1
- data/resources/locales/fr-CA/currencies.yml +386 -3
- data/resources/locales/fr-CA/languages.yml +8 -8
- data/resources/locales/fr-CA/lists.yml +12 -2
- data/resources/locales/fr-CA/numbers.yml +5 -0
- data/resources/locales/fr-CA/plural_rules.yml +2 -1
- data/resources/locales/fr-CA/plurals.yml +9 -6
- data/resources/locales/fr-CA/territories.yml +1 -1
- data/resources/locales/fr-CA/timezones.yml +11 -11
- data/resources/locales/fr-CA/units.yml +87 -17
- data/resources/locales/fr-CH/calendars.yml +1 -1
- data/resources/locales/fr-CH/currencies.yml +383 -0
- data/resources/locales/fr-CH/languages.yml +11 -11
- data/resources/locales/fr-CH/lists.yml +12 -2
- data/resources/locales/fr-CH/numbers.yml +5 -0
- data/resources/locales/fr-CH/plural_rules.yml +2 -1
- data/resources/locales/fr-CH/plurals.yml +9 -6
- data/resources/locales/fr-CH/territories.yml +9 -9
- data/resources/locales/fr-CH/timezones.yml +1 -1
- data/resources/locales/fr-CH/units.yml +77 -8
- data/resources/locales/fr/calendars.yml +1 -1
- data/resources/locales/fr/currencies.yml +383 -0
- data/resources/locales/fr/languages.yml +12 -12
- data/resources/locales/fr/lists.yml +12 -2
- data/resources/locales/fr/numbers.yml +5 -0
- data/resources/locales/fr/plural_rules.yml +2 -1
- data/resources/locales/fr/plurals.yml +9 -6
- data/resources/locales/fr/territories.yml +9 -9
- data/resources/locales/fr/timezones.yml +1 -1
- data/resources/locales/fr/units.yml +77 -8
- data/resources/locales/ga/calendars.yml +1 -1
- data/resources/locales/ga/currencies.yml +387 -0
- data/resources/locales/ga/fields.yml +5 -5
- data/resources/locales/ga/languages.yml +34 -14
- data/resources/locales/ga/lists.yml +15 -5
- data/resources/locales/ga/numbers.yml +4 -1
- data/resources/locales/ga/plurals.yml +10 -9
- data/resources/locales/ga/timezones.yml +14 -14
- data/resources/locales/ga/units.yml +212 -65
- data/resources/locales/gl/currencies.yml +313 -1
- data/resources/locales/gl/languages.yml +5 -5
- data/resources/locales/gl/lists.yml +15 -2
- data/resources/locales/gl/numbers.yml +27 -24
- data/resources/locales/gl/plurals.yml +6 -5
- data/resources/locales/gl/units.yml +86 -3
- data/resources/locales/gu/currencies.yml +266 -0
- data/resources/locales/gu/languages.yml +8 -8
- data/resources/locales/gu/lists.yml +12 -1
- data/resources/locales/gu/numbers.yml +3 -0
- data/resources/locales/gu/plurals.yml +9 -9
- data/resources/locales/gu/timezones.yml +1 -1
- data/resources/locales/gu/units.yml +78 -10
- data/resources/locales/he/currencies.yml +334 -0
- data/resources/locales/he/languages.yml +6 -6
- data/resources/locales/he/lists.yml +14 -1
- data/resources/locales/he/numbers.yml +99 -96
- data/resources/locales/he/plurals.yml +9 -8
- data/resources/locales/he/timezones.yml +1 -1
- data/resources/locales/he/units.yml +115 -4
- data/resources/locales/hi/currencies.yml +300 -0
- data/resources/locales/hi/languages.yml +9 -9
- data/resources/locales/hi/lists.yml +18 -3
- data/resources/locales/hi/numbers.yml +3 -0
- data/resources/locales/hi/plurals.yml +9 -9
- data/resources/locales/hi/timezones.yml +3 -0
- data/resources/locales/hi/units.yml +123 -34
- data/resources/locales/hr/currencies.yml +407 -3
- data/resources/locales/hr/languages.yml +8 -8
- data/resources/locales/hr/lists.yml +21 -3
- data/resources/locales/hr/numbers.yml +7 -4
- data/resources/locales/hr/plurals.yml +12 -11
- data/resources/locales/hr/timezones.yml +7 -7
- data/resources/locales/hr/units.yml +93 -3
- data/resources/locales/hu/currencies.yml +392 -2
- data/resources/locales/hu/languages.yml +8 -8
- data/resources/locales/hu/lists.yml +20 -3
- data/resources/locales/hu/numbers.yml +3 -0
- data/resources/locales/hu/plurals.yml +6 -6
- data/resources/locales/hu/territories.yml +3 -3
- data/resources/locales/hu/timezones.yml +1 -1
- data/resources/locales/hu/units.yml +94 -13
- data/resources/locales/hy/currencies.yml +265 -0
- data/resources/locales/hy/languages.yml +3 -3
- data/resources/locales/hy/lists.yml +14 -2
- data/resources/locales/hy/numbers.yml +3 -0
- data/resources/locales/hy/plurals.yml +6 -6
- data/resources/locales/hy/units.yml +103 -14
- data/resources/locales/id/currencies.yml +416 -16
- data/resources/locales/id/languages.yml +6 -10
- data/resources/locales/id/lists.yml +14 -2
- data/resources/locales/id/numbers.yml +3 -0
- data/resources/locales/id/plurals.yml +6 -4
- data/resources/locales/id/territories.yml +8 -8
- data/resources/locales/id/timezones.yml +7 -7
- data/resources/locales/id/units.yml +60 -10
- data/resources/locales/is/currencies.yml +329 -0
- data/resources/locales/is/languages.yml +8 -8
- data/resources/locales/is/lists.yml +13 -2
- data/resources/locales/is/numbers.yml +3 -0
- data/resources/locales/is/plurals.yml +7 -5
- data/resources/locales/is/territories.yml +2 -2
- data/resources/locales/is/timezones.yml +1 -1
- data/resources/locales/is/units.yml +79 -5
- data/resources/locales/it-CH/calendars.yml +3 -3
- data/resources/locales/it-CH/currencies.yml +389 -5
- data/resources/locales/it-CH/fields.yml +11 -11
- data/resources/locales/it-CH/languages.yml +8 -8
- data/resources/locales/it-CH/lists.yml +18 -3
- data/resources/locales/it-CH/numbers.yml +4 -1
- data/resources/locales/it-CH/plurals.yml +6 -6
- data/resources/locales/it-CH/territories.yml +1 -1
- data/resources/locales/it-CH/units.yml +95 -4
- data/resources/locales/it/calendars.yml +3 -3
- data/resources/locales/it/currencies.yml +389 -5
- data/resources/locales/it/fields.yml +11 -11
- data/resources/locales/it/languages.yml +8 -8
- data/resources/locales/it/lists.yml +18 -3
- data/resources/locales/it/numbers.yml +4 -1
- data/resources/locales/it/plurals.yml +6 -6
- data/resources/locales/it/territories.yml +1 -1
- data/resources/locales/it/units.yml +95 -4
- data/resources/locales/ja/currencies.yml +406 -2
- data/resources/locales/ja/languages.yml +12 -12
- data/resources/locales/ja/lists.yml +18 -3
- data/resources/locales/ja/numbers.yml +3 -0
- data/resources/locales/ja/plurals.yml +6 -4
- data/resources/locales/ja/units.yml +47 -0
- data/resources/locales/ka/currencies.yml +348 -0
- data/resources/locales/ka/languages.yml +7 -7
- data/resources/locales/ka/lists.yml +18 -3
- data/resources/locales/ka/numbers.yml +3 -0
- data/resources/locales/ka/plurals.yml +9 -9
- data/resources/locales/ka/timezones.yml +2 -2
- data/resources/locales/ka/units.yml +112 -8
- data/resources/locales/kk/currencies.yml +264 -0
- data/resources/locales/kk/languages.yml +4 -4
- data/resources/locales/kk/lists.yml +21 -3
- data/resources/locales/kk/numbers.yml +3 -0
- data/resources/locales/kk/plurals.yml +8 -7
- data/resources/locales/kk/territories.yml +1 -1
- data/resources/locales/kk/units.yml +91 -4
- data/resources/locales/km/currencies.yml +273 -9
- data/resources/locales/km/languages.yml +17 -18
- data/resources/locales/km/lists.yml +17 -2
- data/resources/locales/km/numbers.yml +3 -0
- data/resources/locales/km/plurals.yml +6 -4
- data/resources/locales/km/territories.yml +11 -11
- data/resources/locales/km/timezones.yml +6 -6
- data/resources/locales/km/units.yml +99 -24
- data/resources/locales/kn/currencies.yml +266 -0
- data/resources/locales/kn/languages.yml +9 -9
- data/resources/locales/kn/lists.yml +14 -2
- data/resources/locales/kn/numbers.yml +3 -0
- data/resources/locales/kn/plurals.yml +6 -5
- data/resources/locales/kn/territories.yml +1 -1
- data/resources/locales/kn/timezones.yml +49 -10
- data/resources/locales/kn/units.yml +86 -2
- data/resources/locales/ko/currencies.yml +397 -3
- data/resources/locales/ko/languages.yml +5 -8
- data/resources/locales/ko/lists.yml +18 -3
- data/resources/locales/ko/numbers.yml +3 -0
- data/resources/locales/ko/plurals.yml +6 -4
- data/resources/locales/ko/territories.yml +5 -5
- data/resources/locales/ko/timezones.yml +15 -15
- data/resources/locales/ko/units.yml +83 -15
- data/resources/locales/lo/currencies.yml +397 -0
- data/resources/locales/lo/languages.yml +8 -8
- data/resources/locales/lo/lists.yml +19 -4
- data/resources/locales/lo/numbers.yml +3 -0
- data/resources/locales/lo/plurals.yml +6 -5
- data/resources/locales/lo/territories.yml +1 -1
- data/resources/locales/lo/units.yml +49 -7
- data/resources/locales/lt/currencies.yml +404 -0
- data/resources/locales/lt/languages.yml +4 -4
- data/resources/locales/lt/lists.yml +18 -3
- data/resources/locales/lt/numbers.yml +3 -0
- data/resources/locales/lt/plurals.yml +10 -9
- data/resources/locales/lt/territories.yml +1 -1
- data/resources/locales/lt/units.yml +120 -0
- data/resources/locales/lv/calendars.yml +2 -2
- data/resources/locales/lv/currencies.yml +311 -0
- data/resources/locales/lv/fields.yml +1 -1
- data/resources/locales/lv/languages.yml +4 -4
- data/resources/locales/lv/lists.yml +18 -3
- data/resources/locales/lv/numbers.yml +3 -0
- data/resources/locales/lv/plurals.yml +11 -10
- data/resources/locales/lv/territories.yml +3 -3
- data/resources/locales/lv/units.yml +103 -15
- data/resources/locales/mk/calendars.yml +8 -8
- data/resources/locales/mk/currencies.yml +337 -6
- data/resources/locales/mk/languages.yml +12 -12
- data/resources/locales/mk/lists.yml +15 -2
- data/resources/locales/mk/numbers.yml +3 -0
- data/resources/locales/mk/plurals.yml +10 -10
- data/resources/locales/mk/territories.yml +4 -4
- data/resources/locales/mk/timezones.yml +13 -13
- data/resources/locales/mk/units.yml +218 -154
- data/resources/locales/mr/calendars.yml +15 -15
- data/resources/locales/mr/currencies.yml +268 -2
- data/resources/locales/mr/fields.yml +3 -3
- data/resources/locales/mr/languages.yml +14 -13
- data/resources/locales/mr/lists.yml +18 -3
- data/resources/locales/mr/numbers.yml +3 -0
- data/resources/locales/mr/plurals.yml +8 -7
- data/resources/locales/mr/territories.yml +3 -3
- data/resources/locales/mr/timezones.yml +4 -4
- data/resources/locales/mr/units.yml +90 -2
- data/resources/locales/ms/currencies.yml +274 -0
- data/resources/locales/ms/languages.yml +10 -10
- data/resources/locales/ms/lists.yml +14 -2
- data/resources/locales/ms/numbers.yml +4 -1
- data/resources/locales/ms/plurals.yml +6 -5
- data/resources/locales/ms/timezones.yml +29 -1
- data/resources/locales/ms/units.yml +47 -2
- data/resources/locales/mt/currencies.yml +105 -0
- data/resources/locales/mt/languages.yml +1 -1
- data/resources/locales/mt/lists.yml +24 -4
- data/resources/locales/mt/numbers.yml +3 -0
- data/resources/locales/mt/plurals.yml +9 -8
- data/resources/locales/mt/units.yml +24 -0
- data/resources/locales/my/currencies.yml +289 -2
- data/resources/locales/my/languages.yml +7 -9
- data/resources/locales/my/lists.yml +26 -12
- data/resources/locales/my/numbers.yml +3 -0
- data/resources/locales/my/plurals.yml +6 -4
- data/resources/locales/my/territories.yml +1 -1
- data/resources/locales/my/timezones.yml +5 -5
- data/resources/locales/my/units.yml +64 -8
- data/resources/locales/nb/calendars.yml +9 -9
- data/resources/locales/nb/currencies.yml +404 -0
- data/resources/locales/nb/languages.yml +6 -6
- data/resources/locales/nb/lists.yml +20 -3
- data/resources/locales/nb/numbers.yml +7 -4
- data/resources/locales/nb/plurals.yml +6 -5
- data/resources/locales/nb/territories.yml +4 -4
- data/resources/locales/nb/units.yml +110 -22
- data/resources/locales/nl-BE/currencies.yml +407 -2
- data/resources/locales/nl-BE/languages.yml +7 -9
- data/resources/locales/nl-BE/lists.yml +18 -3
- data/resources/locales/nl-BE/numbers.yml +3 -0
- data/resources/locales/nl-BE/plurals.yml +6 -5
- data/resources/locales/nl-BE/territories.yml +1 -1
- data/resources/locales/nl-BE/timezones.yml +2 -2
- data/resources/locales/nl-BE/units.yml +64 -4
- data/resources/locales/nl/currencies.yml +407 -2
- data/resources/locales/nl/languages.yml +7 -9
- data/resources/locales/nl/lists.yml +18 -3
- data/resources/locales/nl/numbers.yml +3 -0
- data/resources/locales/nl/plurals.yml +6 -5
- data/resources/locales/nl/territories.yml +1 -1
- data/resources/locales/nl/timezones.yml +2 -2
- data/resources/locales/nl/units.yml +64 -4
- data/resources/locales/pl/currencies.yml +384 -13
- data/resources/locales/pl/languages.yml +16 -16
- data/resources/locales/pl/lists.yml +18 -2
- data/resources/locales/pl/numbers.yml +3 -0
- data/resources/locales/pl/plurals.yml +13 -12
- data/resources/locales/pl/timezones.yml +62 -0
- data/resources/locales/pl/units.yml +276 -135
- data/resources/locales/pt-PT/calendars.yml +10 -3
- data/resources/locales/pt-PT/currencies.yml +401 -0
- data/resources/locales/pt-PT/fields.yml +4 -4
- data/resources/locales/pt-PT/languages.yml +11 -11
- data/resources/locales/pt-PT/lists.yml +14 -2
- data/resources/locales/pt-PT/numbers.yml +3 -0
- data/resources/locales/pt-PT/plurals.yml +6 -5
- data/resources/locales/pt-PT/territories.yml +1 -1
- data/resources/locales/pt-PT/timezones.yml +4 -4
- data/resources/locales/pt-PT/units.yml +79 -8
- data/resources/locales/pt/currencies.yml +407 -6
- data/resources/locales/pt/languages.yml +9 -9
- data/resources/locales/pt/lists.yml +18 -2
- data/resources/locales/pt/numbers.yml +3 -0
- data/resources/locales/pt/plurals.yml +6 -5
- data/resources/locales/pt/territories.yml +3 -3
- data/resources/locales/pt/timezones.yml +3 -3
- data/resources/locales/pt/units.yml +75 -3
- data/resources/locales/ro/currencies.yml +407 -54
- data/resources/locales/ro/languages.yml +8 -9
- data/resources/locales/ro/lists.yml +14 -2
- data/resources/locales/ro/numbers.yml +3 -0
- data/resources/locales/ro/plurals.yml +9 -8
- data/resources/locales/ro/territories.yml +2 -2
- data/resources/locales/ro/timezones.yml +20 -5
- data/resources/locales/ro/units.yml +99 -3
- data/resources/locales/ru/currencies.yml +381 -0
- data/resources/locales/ru/languages.yml +6 -6
- data/resources/locales/ru/lists.yml +14 -2
- data/resources/locales/ru/numbers.yml +3 -0
- data/resources/locales/ru/plurals.yml +8 -7
- data/resources/locales/ru/timezones.yml +1 -1
- data/resources/locales/ru/units.yml +219 -94
- data/resources/locales/sk/currencies.yml +404 -0
- data/resources/locales/sk/languages.yml +5 -5
- data/resources/locales/sk/lists.yml +18 -3
- data/resources/locales/sk/numbers.yml +3 -0
- data/resources/locales/sk/plurals.yml +8 -7
- data/resources/locales/sk/units.yml +140 -4
- data/resources/locales/sl/currencies.yml +394 -15
- data/resources/locales/sl/languages.yml +9 -8
- data/resources/locales/sl/lists.yml +20 -3
- data/resources/locales/sl/numbers.yml +3 -0
- data/resources/locales/sl/plurals.yml +9 -8
- data/resources/locales/sl/territories.yml +3 -3
- data/resources/locales/sl/timezones.yml +4 -4
- data/resources/locales/sl/units.yml +162 -24
- data/resources/locales/sq/currencies.yml +264 -0
- data/resources/locales/sq/languages.yml +7 -7
- data/resources/locales/sq/lists.yml +18 -3
- data/resources/locales/sq/numbers.yml +3 -0
- data/resources/locales/sq/plurals.yml +7 -7
- data/resources/locales/sq/units.yml +47 -0
- data/resources/locales/sr-Cyrl-ME/calendars.yml +1 -1
- data/resources/locales/sr-Cyrl-ME/currencies.yml +401 -1
- data/resources/locales/sr-Cyrl-ME/languages.yml +5 -4
- data/resources/locales/sr-Cyrl-ME/lists.yml +18 -3
- data/resources/locales/sr-Cyrl-ME/numbers.yml +3 -0
- data/resources/locales/sr-Cyrl-ME/plurals.yml +12 -11
- data/resources/locales/sr-Cyrl-ME/timezones.yml +2 -2
- data/resources/locales/sr-Cyrl-ME/units.yml +109 -11
- data/resources/locales/sr-Latn-ME/calendars.yml +1 -1
- data/resources/locales/sr-Latn-ME/currencies.yml +401 -1
- data/resources/locales/sr-Latn-ME/languages.yml +5 -4
- data/resources/locales/sr-Latn-ME/lists.yml +30 -15
- data/resources/locales/sr-Latn-ME/numbers.yml +3 -0
- data/resources/locales/sr-Latn-ME/plurals.yml +12 -11
- data/resources/locales/sr-Latn-ME/timezones.yml +2 -2
- data/resources/locales/sr-Latn-ME/units.yml +109 -11
- data/resources/locales/sr/calendars.yml +2 -2
- data/resources/locales/sr/currencies.yml +401 -1
- data/resources/locales/sr/languages.yml +5 -4
- data/resources/locales/sr/lists.yml +18 -3
- data/resources/locales/sr/numbers.yml +3 -0
- data/resources/locales/sr/plurals.yml +12 -11
- data/resources/locales/sr/timezones.yml +2 -2
- data/resources/locales/sr/units.yml +109 -11
- data/resources/locales/sv/currencies.yml +424 -19
- data/resources/locales/sv/languages.yml +8 -8
- data/resources/locales/sv/lists.yml +18 -3
- data/resources/locales/sv/numbers.yml +3 -0
- data/resources/locales/sv/plurals.yml +7 -7
- data/resources/locales/sv/territories.yml +4 -4
- data/resources/locales/sv/timezones.yml +1 -1
- data/resources/locales/sv/units.yml +114 -24
- data/resources/locales/sw/currencies.yml +345 -74
- data/resources/locales/sw/languages.yml +14 -12
- data/resources/locales/sw/lists.yml +4 -0
- data/resources/locales/sw/numbers.yml +3 -0
- data/resources/locales/sw/plurals.yml +6 -5
- data/resources/locales/sw/territories.yml +8 -8
- data/resources/locales/sw/timezones.yml +29 -29
- data/resources/locales/sw/units.yml +196 -75
- data/resources/locales/ta/currencies.yml +266 -0
- data/resources/locales/ta/languages.yml +6 -6
- data/resources/locales/ta/lists.yml +18 -2
- data/resources/locales/ta/numbers.yml +3 -0
- data/resources/locales/ta/plurals.yml +6 -5
- data/resources/locales/ta/timezones.yml +1 -1
- data/resources/locales/ta/units.yml +92 -6
- data/resources/locales/th/currencies.yml +399 -0
- data/resources/locales/th/languages.yml +9 -9
- data/resources/locales/th/lists.yml +11 -0
- data/resources/locales/th/numbers.yml +3 -0
- data/resources/locales/th/plurals.yml +6 -4
- data/resources/locales/th/territories.yml +1 -1
- data/resources/locales/th/timezones.yml +1 -1
- data/resources/locales/th/units.yml +57 -2
- data/resources/locales/tr/currencies.yml +404 -0
- data/resources/locales/tr/languages.yml +10 -10
- data/resources/locales/tr/lists.yml +14 -2
- data/resources/locales/tr/numbers.yml +3 -0
- data/resources/locales/tr/plurals.yml +6 -5
- data/resources/locales/tr/units.yml +71 -6
- data/resources/locales/uk/calendars.yml +0 -1
- data/resources/locales/uk/currencies.yml +392 -11
- data/resources/locales/uk/fields.yml +9 -9
- data/resources/locales/uk/languages.yml +30 -30
- data/resources/locales/uk/lists.yml +20 -2
- data/resources/locales/uk/numbers.yml +3 -0
- data/resources/locales/uk/plurals.yml +8 -8
- data/resources/locales/uk/territories.yml +39 -39
- data/resources/locales/uk/timezones.yml +21 -21
- data/resources/locales/uk/units.yml +173 -37
- data/resources/locales/ur/currencies.yml +277 -5
- data/resources/locales/ur/languages.yml +6 -6
- data/resources/locales/ur/lists.yml +14 -2
- data/resources/locales/ur/numbers.yml +3 -0
- data/resources/locales/ur/plurals.yml +6 -5
- data/resources/locales/ur/territories.yml +1 -1
- data/resources/locales/ur/timezones.yml +1 -1
- data/resources/locales/ur/units.yml +86 -4
- data/resources/locales/vi/calendars.yml +2 -2
- data/resources/locales/vi/currencies.yml +398 -1
- data/resources/locales/vi/fields.yml +3 -0
- data/resources/locales/vi/languages.yml +6 -8
- data/resources/locales/vi/lists.yml +26 -4
- data/resources/locales/vi/numbers.yml +3 -0
- data/resources/locales/vi/plurals.yml +6 -5
- data/resources/locales/vi/territories.yml +4 -4
- data/resources/locales/vi/timezones.yml +4 -4
- data/resources/locales/vi/units.yml +51 -3
- data/resources/locales/xh/currencies.yml +111 -0
- data/resources/locales/xh/lists.yml +42 -7
- data/resources/locales/xh/numbers.yml +3 -0
- data/resources/locales/xh/plurals.yml +6 -5
- data/resources/locales/xh/units.yml +24 -0
- data/resources/locales/zh-Hant/currencies.yml +403 -0
- data/resources/locales/zh-Hant/languages.yml +2 -2
- data/resources/locales/zh-Hant/lists.yml +18 -3
- data/resources/locales/zh-Hant/numbers.yml +3 -0
- data/resources/locales/zh-Hant/plurals.yml +6 -4
- data/resources/locales/zh-Hant/units.yml +58 -14
- data/resources/locales/zh/calendars.yml +2 -2
- data/resources/locales/zh/currencies.yml +405 -0
- data/resources/locales/zh/languages.yml +11 -11
- data/resources/locales/zh/lists.yml +18 -3
- data/resources/locales/zh/numbers.yml +3 -0
- data/resources/locales/zh/plurals.yml +6 -4
- data/resources/locales/zh/timezones.yml +2 -2
- data/resources/locales/zh/units.yml +115 -67
- data/resources/locales/zu/currencies.yml +266 -0
- data/resources/locales/zu/languages.yml +11 -8
- data/resources/locales/zu/lists.yml +13 -2
- data/resources/locales/zu/numbers.yml +3 -0
- data/resources/locales/zu/plurals.yml +6 -5
- data/resources/locales/zu/territories.yml +1 -0
- data/resources/locales/zu/units.yml +36 -0
- data/resources/shared/aliases.yml +103 -41
- data/resources/shared/bcp47_timezone_metadata.yml +2 -0
- data/resources/shared/hyphenation/be-BY.yml +3369 -0
- data/resources/shared/hyphenation/ca.yml +1 -1
- data/resources/shared/hyphenation/de-AT.yml +1 -1
- data/resources/shared/hyphenation/de-CH.yml +1 -1
- data/resources/shared/hyphenation/de-DE.yml +1 -1
- data/resources/shared/hyphenation/fr.yml +1 -1
- data/resources/shared/hyphenation/hr-HR.yml +1 -1
- data/resources/shared/hyphenation/sl-SI.yml +1 -1
- data/resources/shared/language_codes_table.dump +0 -0
- data/resources/shared/likely_subtags.yml +10 -9
- data/resources/shared/metazones.yml +536 -512
- data/resources/shared/segments/rules/el/sentence.yml +24 -24
- data/resources/shared/segments/rules/en-US-POSIX/word.yml +167 -164
- data/resources/shared/segments/rules/ja/line.yml +279 -274
- data/resources/shared/segments/rules/ja/word.yml +167 -164
- data/resources/shared/segments/rules/root/grapheme.yml +31 -32
- data/resources/shared/segments/rules/root/line.yml +279 -274
- data/resources/shared/segments/rules/root/sentence.yml +24 -24
- data/resources/shared/segments/rules/root/word.yml +167 -164
- data/resources/shared/segments/rules/zh-Hant/line.yml +279 -274
- data/resources/shared/segments/rules/zh/line.yml +279 -274
- data/resources/shared/timezone_regions.yml +3 -3
- data/resources/shared/validity_data.yml +51 -22
- data/spec/formatters/list_formatter_spec.rb +20 -0
- data/spec/formatters/numbers/rbnf/locales/hr/rbnf_test.yml +7 -7
- data/spec/localized/localized_datetime_spec.rb +1 -1
- data/spec/localized/localized_number_spec.rb +25 -0
- data/spec/localized/localized_symbol_spec.rb +4 -4
- data/spec/shared/unit_spec.rb +3 -3
- data/spec/spec_helper.rb +1 -1
- data/spec/timezones/tests/af.yml +74 -74
- data/spec/timezones/tests/ar.yml +44 -44
- data/spec/timezones/tests/az.yml +43 -43
- data/spec/timezones/tests/be.yml +43 -43
- data/spec/timezones/tests/bg.yml +101 -101
- data/spec/timezones/tests/bn.yml +59 -55
- data/spec/timezones/tests/bo.yml +40 -40
- data/spec/timezones/tests/bs.yml +202 -202
- data/spec/timezones/tests/ca.yml +91 -91
- data/spec/timezones/tests/cs.yml +45 -45
- data/spec/timezones/tests/cy.yml +89 -89
- data/spec/timezones/tests/da.yml +43 -43
- data/spec/timezones/tests/de-AT.yml +71 -71
- data/spec/timezones/tests/de-CH.yml +73 -73
- data/spec/timezones/tests/de.yml +71 -71
- data/spec/timezones/tests/el.yml +45 -45
- data/spec/timezones/tests/en-001.yml +59 -59
- data/spec/timezones/tests/en-150.yml +59 -59
- data/spec/timezones/tests/en-AU.yml +54 -54
- data/spec/timezones/tests/en-CA.yml +54 -54
- data/spec/timezones/tests/en-GB.yml +48 -48
- data/spec/timezones/tests/en-IE.yml +59 -59
- data/spec/timezones/tests/en-IN.yml +59 -59
- data/spec/timezones/tests/en-NZ.yml +62 -62
- data/spec/timezones/tests/en-SG.yml +59 -59
- data/spec/timezones/tests/en-US.yml +43 -43
- data/spec/timezones/tests/en-ZA.yml +59 -59
- data/spec/timezones/tests/en.yml +43 -43
- data/spec/timezones/tests/eo.yml +40 -40
- data/spec/timezones/tests/es-419.yml +51 -51
- data/spec/timezones/tests/es-AR.yml +51 -51
- data/spec/timezones/tests/es-CO.yml +51 -51
- data/spec/timezones/tests/es-MX.yml +47 -47
- data/spec/timezones/tests/es-US.yml +63 -63
- data/spec/timezones/tests/es.yml +104 -104
- data/spec/timezones/tests/et.yml +57 -57
- data/spec/timezones/tests/eu.yml +45 -45
- data/spec/timezones/tests/fa.yml +43 -43
- data/spec/timezones/tests/fi.yml +64 -64
- data/spec/timezones/tests/fil.yml +83 -83
- data/spec/timezones/tests/fr-BE.yml +57 -57
- data/spec/timezones/tests/fr-CA.yml +183 -183
- data/spec/timezones/tests/fr-CH.yml +61 -61
- data/spec/timezones/tests/fr.yml +61 -61
- data/spec/timezones/tests/ga.yml +218 -218
- data/spec/timezones/tests/gl.yml +43 -43
- data/spec/timezones/tests/gu.yml +44 -44
- data/spec/timezones/tests/he.yml +46 -46
- data/spec/timezones/tests/hi.yml +47 -47
- data/spec/timezones/tests/hr.yml +59 -59
- data/spec/timezones/tests/hu.yml +53 -53
- data/spec/timezones/tests/hy.yml +43 -43
- data/spec/timezones/tests/id.yml +69 -69
- data/spec/timezones/tests/is.yml +48 -48
- data/spec/timezones/tests/it-CH.yml +43 -43
- data/spec/timezones/tests/it.yml +43 -43
- data/spec/timezones/tests/ja.yml +43 -43
- data/spec/timezones/tests/ka.yml +45 -45
- data/spec/timezones/tests/kk.yml +45 -45
- data/spec/timezones/tests/km.yml +91 -91
- data/spec/timezones/tests/kn.yml +70 -70
- data/spec/timezones/tests/ko.yml +156 -156
- data/spec/timezones/tests/lo.yml +43 -43
- data/spec/timezones/tests/lt.yml +43 -43
- data/spec/timezones/tests/lv.yml +46 -46
- data/spec/timezones/tests/mk.yml +179 -179
- data/spec/timezones/tests/mr.yml +51 -51
- data/spec/timezones/tests/ms.yml +52 -52
- data/spec/timezones/tests/mt.yml +40 -40
- data/spec/timezones/tests/my.yml +51 -51
- data/spec/timezones/tests/nb.yml +51 -51
- data/spec/timezones/tests/nl-BE.yml +54 -54
- data/spec/timezones/tests/nl.yml +54 -54
- data/spec/timezones/tests/pl.yml +85 -85
- data/spec/timezones/tests/pt-PT.yml +48 -48
- data/spec/timezones/tests/pt.yml +61 -61
- data/spec/timezones/tests/ro.yml +54 -54
- data/spec/timezones/tests/ru.yml +43 -43
- data/spec/timezones/tests/sk.yml +43 -43
- data/spec/timezones/tests/sl.yml +57 -57
- data/spec/timezones/tests/sq.yml +43 -43
- data/spec/timezones/tests/sr-Cyrl-ME.yml +44 -44
- data/spec/timezones/tests/sr-Latn-ME.yml +44 -44
- data/spec/timezones/tests/sr.yml +44 -44
- data/spec/timezones/tests/sv.yml +61 -61
- data/spec/timezones/tests/sw.yml +136 -136
- data/spec/timezones/tests/ta.yml +44 -44
- data/spec/timezones/tests/th.yml +48 -48
- data/spec/timezones/tests/tr.yml +43 -43
- data/spec/timezones/tests/uk.yml +218 -218
- data/spec/timezones/tests/ur.yml +44 -44
- data/spec/timezones/tests/vi.yml +112 -112
- data/spec/timezones/tests/xh.yml +40 -40
- data/spec/timezones/tests/zh-Hant.yml +43 -43
- data/spec/timezones/tests/zh.yml +46 -46
- data/spec/timezones/tests/zu.yml +43 -43
- data/twitter_cldr.gemspec +1 -1
- metadata +6 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 86de4e3cfb05e54b776d518c6a4c6decb9aaa36ec36ae2593e487cb12d7299ad
|
4
|
+
data.tar.gz: 8abd9399b1d44d30cd2cf818ef2c881b8dace4cf042b33e8a6086b02b5a0b561
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 57f9bb2095d152659a1a34f9a1c565496ddc6ac00cf5148f322709b5236d2c201502d7b9988e8ef7373ecff507b8fac944423d2c9a18dc8e65613fee9faf7440
|
7
|
+
data.tar.gz: 646cf95c956f2fa9655d4b96be566f4b59d18e5665ffe4bf04af3470aa0a75a9dbe1e163c74ed448eebed2b37ea98cd7e6c1b431e0b12c602a12a6cc47c438e4
|
data/Gemfile
CHANGED
@@ -4,7 +4,7 @@ gemspec
|
|
4
4
|
|
5
5
|
group :development, :test do
|
6
6
|
gem 'rake'
|
7
|
-
gem 'pry-
|
7
|
+
gem 'pry-byebug'
|
8
8
|
gem 'ruby-prof' unless RUBY_PLATFORM == 'java'
|
9
9
|
gem 'regexp_parser', '~> 0.5'
|
10
10
|
gem 'benchmark-ips'
|
@@ -13,7 +13,7 @@ group :development, :test do
|
|
13
13
|
# gemspec allows any version, but most people are probably using 1.x, so
|
14
14
|
# let's test and develop against that
|
15
15
|
gem 'tzinfo', '< 2'
|
16
|
-
gem 'tzinfo-data', '= 1.
|
16
|
+
gem 'tzinfo-data', '= 1.2020.4' # keep in sync with ICU
|
17
17
|
end
|
18
18
|
|
19
19
|
group :development do
|
@@ -22,7 +22,7 @@ group :development do
|
|
22
22
|
|
23
23
|
gem 'ruby-cldr', github: 'camertron/ruby-cldr', branch: 'mapzones' # 'svenfuchs/ruby-cldr'
|
24
24
|
gem 'i18n'
|
25
|
-
gem 'cldr-plurals', '~> 1.
|
25
|
+
gem 'cldr-plurals', '~> 1.1'
|
26
26
|
end
|
27
27
|
|
28
28
|
group :test do
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
## twitter-cldr-rb
|
1
|
+
## twitter-cldr-rb ![Unit Tests](https://github.com/camertron/rux/actions/workflows/unit_tests.yml/badge.svg?branch=master) [![Code Climate](https://codeclimate.com/github/twitter/twitter-cldr-rb.png)](https://codeclimate.com/github/twitter/twitter-cldr-rb) [![Coverage Status](https://coveralls.io/repos/twitter/twitter-cldr-rb/badge.png?branch=master)](https://coveralls.io/r/twitter/twitter-cldr-rb?branch=master)
|
2
2
|
|
3
3
|
TwitterCldr uses Unicode's Common Locale Data Repository (CLDR) to format certain types of text into their
|
4
4
|
localized equivalents. Currently supported types of text include dates, times, currencies, decimals, percentages, and symbols.
|
@@ -558,20 +558,20 @@ The CLDR contains postal code validation regexes for a number of countries.
|
|
558
558
|
|
559
559
|
```ruby
|
560
560
|
# United States
|
561
|
-
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:us)
|
561
|
+
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:us)
|
562
562
|
postal_code.valid?("94103") # true
|
563
563
|
postal_code.valid?("9410") # false
|
564
564
|
|
565
565
|
# England (Great Britain)
|
566
|
-
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:gb)
|
566
|
+
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:gb)
|
567
567
|
postal_code.valid?("BS98 1TL") # true
|
568
568
|
|
569
569
|
# Sweden
|
570
|
-
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:se)
|
570
|
+
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:se)
|
571
571
|
postal_code.valid?("280 12") # true
|
572
572
|
|
573
573
|
# Canada
|
574
|
-
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:ca)
|
574
|
+
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:ca)
|
575
575
|
postal_code.valid?("V3H 1Z7") # true
|
576
576
|
```
|
577
577
|
|
@@ -579,7 +579,7 @@ Match all valid postal codes in a string with the `#find_all` method:
|
|
579
579
|
|
580
580
|
```ruby
|
581
581
|
# United States
|
582
|
-
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:us)
|
582
|
+
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:us)
|
583
583
|
postal_code.find_all("12345 23456") # ["12345", "23456"]
|
584
584
|
```
|
585
585
|
|
@@ -592,7 +592,7 @@ TwitterCldr::Shared::PostalCodes.territories # [:ac, :ad, :af, :ai, :al, ... ]
|
|
592
592
|
Just want the regex? No problem:
|
593
593
|
|
594
594
|
```ruby
|
595
|
-
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:us)
|
595
|
+
postal_code = TwitterCldr::Shared::PostalCodes.for_territory(:us)
|
596
596
|
postal_code.regexp # /(\d{5})(?:[ \-](\d{4}))?/
|
597
597
|
```
|
598
598
|
|
@@ -1014,17 +1014,17 @@ The Psych gem that is the default YAML engine in Ruby 1.9 doesn't handle Unicode
|
|
1014
1014
|
You can make use of TwitterCLDR's YAML dumper by calling `localize` and then `to_yaml` on an `Array`, `Hash`, or `String`:
|
1015
1015
|
|
1016
1016
|
```ruby
|
1017
|
-
{ :hello => "world" }.localize.to_yaml
|
1018
|
-
["hello", "world"].localize.to_yaml
|
1019
|
-
"hello, world".localize.to_yaml
|
1017
|
+
{ :hello => "world" }.localize.to_yaml
|
1018
|
+
["hello", "world"].localize.to_yaml
|
1019
|
+
"hello, world".localize.to_yaml
|
1020
1020
|
```
|
1021
1021
|
|
1022
1022
|
Behind the scenes, these convenience methods are using the `TwitterCldr::Shared::YAML` class. You can do the same thing if you're feeling adventurous:
|
1023
1023
|
|
1024
1024
|
```ruby
|
1025
|
-
TwitterCldr::Shared::YAML.dump({ :hello => "world" })
|
1026
|
-
TwitterCldr::Shared::YAML.dump(["hello", "world"])
|
1027
|
-
TwitterCldr::Shared::YAML.dump("hello, world")
|
1025
|
+
TwitterCldr::Shared::YAML.dump({ :hello => "world" })
|
1026
|
+
TwitterCldr::Shared::YAML.dump(["hello", "world"])
|
1027
|
+
TwitterCldr::Shared::YAML.dump("hello, world")
|
1028
1028
|
```
|
1029
1029
|
|
1030
1030
|
## Adding New Locales
|
data/Rakefile
CHANGED
@@ -13,7 +13,7 @@ require 'rubygems/package_task'
|
|
13
13
|
|
14
14
|
require './lib/twitter_cldr'
|
15
15
|
|
16
|
-
require 'pry-
|
16
|
+
require 'pry-byebug'
|
17
17
|
|
18
18
|
Bundler::GemHelper.install_tasks
|
19
19
|
|
@@ -89,6 +89,11 @@ namespace :update do
|
|
89
89
|
TwitterCldr::Resources::NumberFormatsImporter.new.import
|
90
90
|
end
|
91
91
|
|
92
|
+
desc 'Import list formats'
|
93
|
+
task :list_formats do
|
94
|
+
TwitterCldr::Resources::ListFormatsImporter.new.import
|
95
|
+
end
|
96
|
+
|
92
97
|
desc 'Import currency symbols'
|
93
98
|
task :currency_symbols do
|
94
99
|
TwitterCldr::Resources::CurrencySymbolsImporter.new.import
|
@@ -1,9 +1,10 @@
|
|
1
1
|
# encoding: UTF-8
|
2
|
+
require "bigdecimal"
|
2
3
|
|
3
4
|
# Copyright 2012 Twitter, Inc
|
4
5
|
# http://www.apache.org/licenses/LICENSE-2.0
|
5
6
|
|
6
|
-
[Integer, Float].each do |klass|
|
7
|
+
[Integer, Float, BigDecimal].each do |klass|
|
7
8
|
TwitterCldr::Localized::LocalizedNumber.localize(klass)
|
8
9
|
end
|
9
10
|
|
@@ -69,24 +69,35 @@ module TwitterCldr
|
|
69
69
|
precision = options[:precision] || precision_from(number)
|
70
70
|
rounding = options[:rounding] || 0
|
71
71
|
|
72
|
-
|
72
|
+
if number.is_a? BigDecimal
|
73
|
+
number = precision == 0 ?
|
74
|
+
round_to(number, precision, rounding).abs.fix.to_s("F") :
|
75
|
+
round_to(number, precision, rounding).abs.round(precision).to_s("F")
|
76
|
+
else
|
77
|
+
number = "%.#{precision}f" % round_to(number, precision, rounding).abs
|
78
|
+
end
|
73
79
|
number.split(".")
|
74
80
|
end
|
75
81
|
|
76
82
|
def round_to(number, precision, rounding = 0)
|
77
83
|
factor = 10 ** precision
|
78
|
-
result = (
|
84
|
+
result = number.is_a?(BigDecimal) ?
|
85
|
+
((number * factor).fix / factor) :
|
86
|
+
((number * factor).round.to_f / factor)
|
79
87
|
|
80
88
|
if rounding > 0
|
81
89
|
rounding = rounding.to_f / factor
|
82
|
-
result = (
|
90
|
+
result = number.is_a?(BigDecimal) ?
|
91
|
+
((result * (1.0 / rounding)).fix / (1.0 / rounding)) :
|
92
|
+
((result * (1.0 / rounding)).round.to_f / (1.0 / rounding))
|
83
93
|
end
|
84
94
|
|
85
95
|
result
|
86
96
|
end
|
87
97
|
|
88
98
|
def precision_from(num)
|
89
|
-
|
99
|
+
return 0 if num.is_a?(BigDecimal) && num.fix == num
|
100
|
+
parts = (num.is_a?(BigDecimal) ? num.to_s("F") : num.to_s ).split(".")
|
90
101
|
parts.size == 2 ? parts[1].size : 0
|
91
102
|
end
|
92
103
|
|
@@ -17,6 +17,7 @@ module TwitterCldr
|
|
17
17
|
autoload :Importer, 'twitter_cldr/resources/importer'
|
18
18
|
autoload :ImportResolver, 'twitter_cldr/resources/import_resolver'
|
19
19
|
autoload :LanguageCodesImporter, 'twitter_cldr/resources/language_codes_importer'
|
20
|
+
autoload :ListFormatsImporter, 'twitter_cldr/resources/list_formats_importer'
|
20
21
|
autoload :Loader, 'twitter_cldr/resources/loader'
|
21
22
|
autoload :LocalesResourcesImporter, 'twitter_cldr/resources/locales_resources_importer'
|
22
23
|
autoload :NumberFormatsImporter, 'twitter_cldr/resources/number_formats_importer'
|
@@ -58,6 +59,7 @@ module TwitterCldr
|
|
58
59
|
DayPeriodRulesImporter,
|
59
60
|
HyphenationImporter,
|
60
61
|
LanguageCodesImporter,
|
62
|
+
ListFormatsImporter,
|
61
63
|
LocalesResourcesImporter,
|
62
64
|
NumberFormatsImporter,
|
63
65
|
ParentLocalesImporter,
|
@@ -0,0 +1,140 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
|
3
|
+
# Copyright 2012 Twitter, Inc
|
4
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
5
|
+
|
6
|
+
require 'nokogiri'
|
7
|
+
require 'parallel'
|
8
|
+
require 'etc'
|
9
|
+
require 'set'
|
10
|
+
|
11
|
+
module TwitterCldr
|
12
|
+
module Resources
|
13
|
+
|
14
|
+
class ListFormatsImporter < Importer
|
15
|
+
|
16
|
+
requirement :cldr, Versions.cldr_version
|
17
|
+
output_path 'locales'
|
18
|
+
locales TwitterCldr.supported_locales
|
19
|
+
ruby_engine :mri
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
def execute
|
24
|
+
locales = Set.new
|
25
|
+
|
26
|
+
finish = -> (locale, *) do
|
27
|
+
locales.add(locale)
|
28
|
+
STDOUT.write "\rImported #{locale}, #{locales.size} of #{params[:locales].size} total"
|
29
|
+
end
|
30
|
+
|
31
|
+
Parallel.each(params[:locales], in_processes: Etc.nprocessors, finish: finish) do |locale|
|
32
|
+
import_locale(locale)
|
33
|
+
locales << locale
|
34
|
+
end
|
35
|
+
|
36
|
+
puts
|
37
|
+
end
|
38
|
+
|
39
|
+
def import_locale(locale)
|
40
|
+
# The merging that happens here works at the listPatternPart level of granularity.
|
41
|
+
# In other words, a missing part will be filled in by any part with the same key
|
42
|
+
# in the locale's ancestor chain. The raw CLDR data contains the inheritance marker
|
43
|
+
# (i.e. "↑↑↑") for listPatterns that are missing parts, but the expanded data we
|
44
|
+
# get in the downloadable CLDR zip file doesn't include them or the inherited data,
|
45
|
+
# making it impossible for TwitterCLDR to know how it should handle missing keys.
|
46
|
+
# I believe whatever massage tool the CLDR maintainers use to generate the final
|
47
|
+
# data set doesn't take aliases into account, which explains the holes in the data.
|
48
|
+
# By allowing individual listPatternParts to be populated by data from ancestor
|
49
|
+
# locales, we fill in any missing parts at the minor risk of being slightly wrong
|
50
|
+
# when formatting lists. In my opinion, it's far better to produce a slightly wrong
|
51
|
+
# string than to error or produce an entirely empty string.
|
52
|
+
data = requirements[:cldr].merge_each_ancestor(locale) do |ancestor_locale|
|
53
|
+
ListFormats.new(ancestor_locale, requirements[:cldr]).to_h
|
54
|
+
end
|
55
|
+
|
56
|
+
output_file = File.join(output_path, locale.to_s, 'lists.yml')
|
57
|
+
|
58
|
+
File.open(output_file, 'w:utf-8') do |output|
|
59
|
+
output.write(
|
60
|
+
TwitterCldr::Utils::YAML.dump(
|
61
|
+
TwitterCldr::Utils.deep_symbolize_keys(locale => data),
|
62
|
+
use_natural_symbols: true
|
63
|
+
)
|
64
|
+
)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
def output_path
|
69
|
+
params.fetch(:output_path)
|
70
|
+
end
|
71
|
+
|
72
|
+
end
|
73
|
+
|
74
|
+
|
75
|
+
class ListFormats
|
76
|
+
|
77
|
+
attr_reader :locale, :cldr_req
|
78
|
+
|
79
|
+
def initialize(locale, cldr_req)
|
80
|
+
@locale = locale
|
81
|
+
@cldr_req = cldr_req
|
82
|
+
end
|
83
|
+
|
84
|
+
def to_h
|
85
|
+
{ lists: lists }
|
86
|
+
end
|
87
|
+
|
88
|
+
def lists
|
89
|
+
doc.xpath('//ldml/listPatterns/listPattern').each_with_object({}) do |pattern_node, pattern_result|
|
90
|
+
pattern_type = if attribute = pattern_node.attribute('type')
|
91
|
+
attribute.value.to_sym
|
92
|
+
else
|
93
|
+
:default
|
94
|
+
end
|
95
|
+
|
96
|
+
pattern_node = pattern_for(pattern_type)
|
97
|
+
|
98
|
+
pattern_result[pattern_type] = pattern_node.xpath('listPatternPart').each_with_object({}) do |type_node, type_result|
|
99
|
+
type_result[type_node.attribute('type').value.to_sym] = type_node.content
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
def pattern_for(type)
|
105
|
+
xpath = xpath_for(type)
|
106
|
+
pattern_node = doc.xpath(xpath)[0]
|
107
|
+
alias_node = pattern_node.xpath('alias')[0]
|
108
|
+
|
109
|
+
if alias_node
|
110
|
+
alias_type = alias_node.attribute('path').value[/@type='([\w-]+)'/, 1] || :default
|
111
|
+
# follow aliases so we can fully expand them
|
112
|
+
pattern_node = pattern_for(alias_type)
|
113
|
+
end
|
114
|
+
|
115
|
+
pattern_node
|
116
|
+
end
|
117
|
+
|
118
|
+
def xpath_for(type)
|
119
|
+
if type == :default
|
120
|
+
'//ldml/listPatterns/listPattern[not(@type)]'
|
121
|
+
else
|
122
|
+
"//ldml/listPatterns/listPattern[@type='#{type}']"
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
def doc
|
127
|
+
@doc ||= begin
|
128
|
+
locale_fs = locale.to_s.gsub('-', '_')
|
129
|
+
Nokogiri.XML(File.read(File.join(cldr_main_path, "#{locale_fs}.xml")))
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
def cldr_main_path
|
134
|
+
@cldr_main_path ||= File.join(cldr_req.common_path, 'main')
|
135
|
+
end
|
136
|
+
|
137
|
+
end
|
138
|
+
|
139
|
+
end
|
140
|
+
end
|
@@ -138,7 +138,7 @@ module TwitterCldr
|
|
138
138
|
|
139
139
|
# this should be the last entry, but for some reason ICU returns
|
140
140
|
# one more out-of-order range past the Unicode max
|
141
|
-
break if range.
|
141
|
+
break if range.getEnd == 0x10FFFF
|
142
142
|
end
|
143
143
|
end
|
144
144
|
|
@@ -147,7 +147,7 @@ module TwitterCldr
|
|
147
147
|
end
|
148
148
|
|
149
149
|
def range_to_a(range)
|
150
|
-
[range.
|
150
|
+
[range.getStart, range.getEnd, range.getValue]
|
151
151
|
end
|
152
152
|
|
153
153
|
def rbbi_data_for(kind, locale)
|
@@ -13,8 +13,9 @@ module TwitterCldr
|
|
13
13
|
|
14
14
|
START_STATE = 1
|
15
15
|
STOP_STATE = 0
|
16
|
-
NEXT_STATES =
|
16
|
+
NEXT_STATES = 3
|
17
17
|
ACCEPTING = 0
|
18
|
+
ACCEPTING_UNCONDITIONAL = 1
|
18
19
|
|
19
20
|
class << self
|
20
21
|
def instance(boundary_type, locale)
|
@@ -70,7 +71,7 @@ module TwitterCldr
|
|
70
71
|
def handle_next(cursor)
|
71
72
|
result = initial_position = cursor.position
|
72
73
|
state = START_STATE
|
73
|
-
row = state * (metadata.category_count +
|
74
|
+
row = state * (metadata.category_count + NEXT_STATES)
|
74
75
|
category = 3
|
75
76
|
mode = :run
|
76
77
|
|
@@ -86,20 +87,15 @@ module TwitterCldr
|
|
86
87
|
category = 1
|
87
88
|
elsif mode == :run
|
88
89
|
category = category_table.get(cursor.codepoint)
|
89
|
-
|
90
|
-
if (category & 0x4000) != 0
|
91
|
-
category &= ~0x4000
|
92
|
-
end
|
93
|
-
|
94
90
|
cursor.advance
|
95
91
|
else
|
96
92
|
mode = :run
|
97
93
|
end
|
98
94
|
|
99
95
|
state = ftable[row + NEXT_STATES + category]
|
100
|
-
row = state * (metadata.category_count +
|
96
|
+
row = state * (metadata.category_count + NEXT_STATES)
|
101
97
|
|
102
|
-
if ftable[row + ACCEPTING] ==
|
98
|
+
if ftable[row + ACCEPTING] == ACCEPTING_UNCONDITIONAL
|
103
99
|
# match found
|
104
100
|
result = cursor.position
|
105
101
|
end
|
data/lib/twitter_cldr/version.rb
CHANGED