twitter_cldr 3.6.0 → 4.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +2 -1
- data/History.txt +7 -0
- data/README.md +133 -6
- data/Rakefile +23 -4
- data/lib/twitter_cldr.rb +3 -0
- data/lib/twitter_cldr/collation.rb +1 -2
- data/lib/twitter_cldr/collation/collator.rb +9 -1
- data/lib/twitter_cldr/collation/trie_builder.rb +2 -2
- data/lib/twitter_cldr/collation/trie_with_fallback.rb +2 -2
- data/lib/twitter_cldr/localized.rb +2 -2
- data/lib/twitter_cldr/localized/localized_date.rb +3 -15
- data/lib/twitter_cldr/localized/localized_string.rb +26 -5
- data/lib/twitter_cldr/normalization.rb +1 -1
- data/lib/twitter_cldr/resources.rb +2 -0
- data/lib/twitter_cldr/resources/hyphenation_importer.rb +115 -0
- data/lib/twitter_cldr/resources/loader.rb +17 -5
- data/lib/twitter_cldr/resources/locales_resources_importer.rb +3 -2
- data/lib/twitter_cldr/resources/properties/indic_positional_category_property_importer.rb +1 -1
- data/lib/twitter_cldr/resources/properties/properties_importer.rb +2 -2
- data/lib/twitter_cldr/resources/rbnf_test_importer.rb +15 -9
- data/lib/twitter_cldr/resources/transform_test_importer.rb +137 -0
- data/lib/twitter_cldr/segmentation/break_iterator.rb +1 -1
- data/lib/twitter_cldr/shared.rb +1 -0
- data/lib/twitter_cldr/shared/hyphenator.rb +188 -0
- data/lib/twitter_cldr/shared/likely_subtags.rb +18 -2
- data/lib/twitter_cldr/shared/locale.rb +20 -10
- data/lib/twitter_cldr/transforms.rb +24 -0
- data/lib/twitter_cldr/transforms/comment_rule.rb +30 -0
- data/lib/twitter_cldr/transforms/conversion_rule_set.rb +155 -0
- data/lib/twitter_cldr/transforms/conversions.rb +16 -0
- data/lib/twitter_cldr/transforms/conversions/conversion_rule.rb +131 -0
- data/lib/twitter_cldr/transforms/conversions/parser.rb +113 -0
- data/lib/twitter_cldr/transforms/conversions/side.rb +117 -0
- data/lib/twitter_cldr/transforms/cursor.rb +39 -0
- data/lib/twitter_cldr/transforms/filters.rb +16 -0
- data/lib/twitter_cldr/transforms/filters/filter_rule.rb +29 -0
- data/lib/twitter_cldr/transforms/filters/null_filter.rb +26 -0
- data/lib/twitter_cldr/transforms/filters/regex_filter.rb +74 -0
- data/lib/twitter_cldr/transforms/rule.rb +121 -0
- data/lib/twitter_cldr/transforms/rule_match.rb +37 -0
- data/lib/twitter_cldr/transforms/rule_set.rb +95 -0
- data/lib/twitter_cldr/transforms/tokenizer.rb +41 -0
- data/lib/twitter_cldr/transforms/transform_id.rb +164 -0
- data/lib/twitter_cldr/transforms/transformer.rb +220 -0
- data/lib/twitter_cldr/transforms/transforms.rb +21 -0
- data/lib/twitter_cldr/transforms/transforms/break_internal_transform.rb +20 -0
- data/lib/twitter_cldr/transforms/transforms/casing_transform.rb +76 -0
- data/lib/twitter_cldr/transforms/transforms/named_transform.rb +45 -0
- data/lib/twitter_cldr/transforms/transforms/normalization_transform.rb +57 -0
- data/lib/twitter_cldr/transforms/transforms/null_transform.rb +30 -0
- data/lib/twitter_cldr/transforms/transforms/parser.rb +129 -0
- data/lib/twitter_cldr/transforms/transforms/transform_pair.rb +47 -0
- data/lib/twitter_cldr/transforms/transforms/transform_rule.rb +92 -0
- data/lib/twitter_cldr/transforms/transliterator.rb +62 -0
- data/lib/twitter_cldr/transforms/variable_rule.rb +77 -0
- data/lib/twitter_cldr/utils.rb +1 -0
- data/lib/twitter_cldr/utils/regexp_ast.rb +1 -0
- data/lib/twitter_cldr/utils/regexp_sampler.rb +4 -0
- data/lib/twitter_cldr/utils/script_detector.rb +4 -0
- data/lib/twitter_cldr/{collation → utils}/trie.rb +7 -2
- data/lib/twitter_cldr/version.rb +1 -1
- data/lib/twitter_cldr/versions.rb +3 -3
- data/resources/collation/tries/af.dump +0 -0
- data/resources/collation/tries/ar.dump +0 -0
- data/resources/collation/tries/be.dump +0 -0
- data/resources/collation/tries/bg.dump +0 -0
- data/resources/collation/tries/bn.dump +0 -0
- data/resources/collation/tries/ca.dump +0 -0
- data/resources/collation/tries/cs.dump +0 -0
- data/resources/collation/tries/cy.dump +0 -0
- data/resources/collation/tries/da.dump +0 -0
- data/resources/collation/tries/de-CH.dump +0 -0
- data/resources/collation/tries/de.dump +0 -0
- data/resources/collation/tries/default.dump +0 -0
- data/resources/collation/tries/el.dump +0 -0
- data/resources/collation/tries/en-150.dump +0 -0
- data/resources/collation/tries/en-AU.dump +0 -0
- data/resources/collation/tries/en-CA.dump +0 -0
- data/resources/collation/tries/en-GB.dump +0 -0
- data/resources/collation/tries/en-IE.dump +0 -0
- data/resources/collation/tries/en-SG.dump +0 -0
- data/resources/collation/tries/en-ZA.dump +0 -0
- data/resources/collation/tries/en.dump +0 -0
- data/resources/collation/tries/es-419.dump +0 -0
- data/resources/collation/tries/es-CO.dump +0 -0
- data/resources/collation/tries/es-MX.dump +0 -0
- data/resources/collation/tries/es-US.dump +0 -0
- data/resources/collation/tries/es.dump +0 -0
- data/resources/collation/tries/eu.dump +0 -0
- data/resources/collation/tries/fa.dump +0 -0
- data/resources/collation/tries/fi.dump +0 -0
- data/resources/collation/tries/fil.dump +0 -0
- data/resources/collation/tries/fr-BE.dump +0 -0
- data/resources/collation/tries/fr-CA.dump +0 -0
- data/resources/collation/tries/fr-CH.dump +0 -0
- data/resources/collation/tries/fr.dump +0 -0
- data/resources/collation/tries/ga.dump +0 -0
- data/resources/collation/tries/gl.dump +0 -0
- data/resources/collation/tries/gu.dump +0 -0
- data/resources/collation/tries/he.dump +0 -0
- data/resources/collation/tries/hi.dump +0 -0
- data/resources/collation/tries/hr.dump +0 -0
- data/resources/collation/tries/hu.dump +0 -0
- data/resources/collation/tries/id.dump +0 -0
- data/resources/collation/tries/is.dump +0 -0
- data/resources/collation/tries/it-CH.dump +0 -0
- data/resources/collation/tries/it.dump +0 -0
- data/resources/collation/tries/ja.dump +0 -0
- data/resources/collation/tries/kn.dump +0 -0
- data/resources/collation/tries/ko.dump +0 -0
- data/resources/collation/tries/lv.dump +0 -0
- data/resources/collation/tries/mr.dump +0 -0
- data/resources/collation/tries/ms.dump +0 -0
- data/resources/collation/tries/nb.dump +0 -0
- data/resources/collation/tries/nl.dump +0 -0
- data/resources/collation/tries/pl.dump +0 -0
- data/resources/collation/tries/pt.dump +0 -0
- data/resources/collation/tries/ro.dump +0 -0
- data/resources/collation/tries/ru.dump +0 -0
- data/resources/collation/tries/sk.dump +0 -0
- data/resources/collation/tries/sq.dump +0 -0
- data/resources/collation/tries/sr.dump +0 -0
- data/resources/collation/tries/sv.dump +0 -0
- data/resources/collation/tries/ta.dump +0 -0
- data/resources/collation/tries/th.dump +0 -0
- data/resources/collation/tries/tr.dump +0 -0
- data/resources/collation/tries/uk.dump +0 -0
- data/resources/collation/tries/ur.dump +0 -0
- data/resources/collation/tries/vi.dump +0 -0
- data/resources/collation/tries/zh-Hant.dump +0 -0
- data/resources/collation/tries/zh.dump +0 -0
- data/resources/locales/af/calendars.yml +86 -44
- data/resources/locales/af/fields.yml +55 -26
- data/resources/locales/af/languages.yml +13 -4
- data/resources/locales/af/numbers.yml +49 -0
- data/resources/locales/af/territories.yml +12 -13
- data/resources/locales/af/units.yml +71 -6
- data/resources/locales/ar/calendars.yml +59 -4
- data/resources/locales/ar/fields.yml +276 -262
- data/resources/locales/ar/languages.yml +65 -41
- data/resources/locales/ar/lists.yml +8 -8
- data/resources/locales/ar/numbers.yml +135 -38
- data/resources/locales/ar/plurals.yml +3 -4
- data/resources/locales/ar/rbnf.yml +322 -0
- data/resources/locales/ar/territories.yml +15 -16
- data/resources/locales/ar/units.yml +380 -247
- data/resources/locales/be/calendars.yml +103 -29
- data/resources/locales/be/fields.yml +416 -1
- data/resources/locales/be/languages.yml +130 -10
- data/resources/locales/be/lists.yml +18 -3
- data/resources/locales/be/numbers.yml +200 -16
- data/resources/locales/be/plural_rules.yml +2 -1
- data/resources/locales/be/plurals.yml +9 -8
- data/resources/locales/be/territories.yml +23 -13
- data/resources/locales/be/units.yml +1212 -127
- data/resources/locales/bg/calendars.yml +65 -23
- data/resources/locales/bg/fields.yml +50 -2
- data/resources/locales/bg/languages.yml +13 -16
- data/resources/locales/bg/numbers.yml +51 -2
- data/resources/locales/bg/territories.yml +8 -9
- data/resources/locales/bg/units.yml +72 -7
- data/resources/locales/bn/calendars.yml +72 -23
- data/resources/locales/bn/fields.yml +37 -1
- data/resources/locales/bn/languages.yml +28 -22
- data/resources/locales/bn/numbers.yml +49 -0
- data/resources/locales/bn/plurals.yml +2 -2
- data/resources/locales/bn/territories.yml +6 -7
- data/resources/locales/bn/units.yml +108 -43
- data/resources/locales/ca/calendars.yml +87 -28
- data/resources/locales/ca/fields.yml +58 -10
- data/resources/locales/ca/languages.yml +61 -10
- data/resources/locales/ca/numbers.yml +49 -0
- data/resources/locales/ca/plurals.yml +2 -2
- data/resources/locales/ca/territories.yml +16 -17
- data/resources/locales/ca/units.yml +79 -12
- data/resources/locales/cs/calendars.yml +74 -19
- data/resources/locales/cs/fields.yml +48 -12
- data/resources/locales/cs/languages.yml +8 -3
- data/resources/locales/cs/numbers.yml +73 -0
- data/resources/locales/cs/plurals.yml +3 -3
- data/resources/locales/cs/territories.yml +1 -2
- data/resources/locales/cs/units.yml +129 -15
- data/resources/locales/cy/calendars.yml +47 -22
- data/resources/locales/cy/fields.yml +390 -52
- data/resources/locales/cy/languages.yml +83 -8
- data/resources/locales/cy/lists.yml +6 -1
- data/resources/locales/cy/numbers.yml +99 -2
- data/resources/locales/cy/territories.yml +4 -5
- data/resources/locales/cy/units.yml +1401 -71
- data/resources/locales/da/calendars.yml +67 -20
- data/resources/locales/da/fields.yml +59 -11
- data/resources/locales/da/languages.yml +10 -4
- data/resources/locales/da/numbers.yml +55 -6
- data/resources/locales/da/plurals.yml +2 -2
- data/resources/locales/da/rbnf.yml +353 -46
- data/resources/locales/da/territories.yml +8 -9
- data/resources/locales/da/units.yml +84 -16
- data/resources/locales/de-CH/calendars.yml +59 -15
- data/resources/locales/de-CH/fields.yml +36 -0
- data/resources/locales/de-CH/languages.yml +27 -23
- data/resources/locales/de-CH/numbers.yml +62 -13
- data/resources/locales/de-CH/plurals.yml +2 -2
- data/resources/locales/de-CH/rbnf.yml +532 -1
- data/resources/locales/de-CH/territories.yml +7 -8
- data/resources/locales/de-CH/units.yml +85 -16
- data/resources/locales/de/calendars.yml +59 -15
- data/resources/locales/de/fields.yml +36 -0
- data/resources/locales/de/languages.yml +27 -23
- data/resources/locales/de/numbers.yml +61 -12
- data/resources/locales/de/plurals.yml +2 -2
- data/resources/locales/de/territories.yml +8 -9
- data/resources/locales/de/units.yml +85 -16
- data/resources/locales/el/calendars.yml +54 -19
- data/resources/locales/el/fields.yml +69 -49
- data/resources/locales/el/languages.yml +12 -6
- data/resources/locales/el/lists.yml +6 -6
- data/resources/locales/el/numbers.yml +49 -0
- data/resources/locales/el/territories.yml +2 -3
- data/resources/locales/el/units.yml +81 -16
- data/resources/locales/en-150/calendars.yml +64 -26
- data/resources/locales/en-150/fields.yml +19 -12
- data/resources/locales/en-150/languages.yml +13 -8
- data/resources/locales/en-150/numbers.yml +49 -0
- data/resources/locales/en-150/plurals.yml +5 -5
- data/resources/locales/en-150/territories.yml +2 -3
- data/resources/locales/en-150/units.yml +125 -14
- data/resources/locales/en-AU/calendars.yml +117 -73
- data/resources/locales/en-AU/fields.yml +26 -19
- data/resources/locales/en-AU/languages.yml +13 -8
- data/resources/locales/en-AU/lists.yml +2 -2
- data/resources/locales/en-AU/numbers.yml +50 -1
- data/resources/locales/en-AU/plurals.yml +5 -5
- data/resources/locales/en-AU/territories.yml +6 -7
- data/resources/locales/en-AU/units.yml +171 -57
- data/resources/locales/en-CA/calendars.yml +58 -19
- data/resources/locales/en-CA/fields.yml +19 -12
- data/resources/locales/en-CA/languages.yml +13 -8
- data/resources/locales/en-CA/numbers.yml +49 -0
- data/resources/locales/en-CA/plurals.yml +5 -5
- data/resources/locales/en-CA/territories.yml +2 -3
- data/resources/locales/en-CA/units.yml +125 -14
- data/resources/locales/en-GB/calendars.yml +77 -40
- data/resources/locales/en-GB/fields.yml +77 -85
- data/resources/locales/en-GB/languages.yml +12 -7
- data/resources/locales/en-GB/lists.yml +1 -1
- data/resources/locales/en-GB/numbers.yml +49 -0
- data/resources/locales/en-GB/plurals.yml +5 -5
- data/resources/locales/en-GB/territories.yml +14 -15
- data/resources/locales/en-GB/units.yml +186 -75
- data/resources/locales/en-IE/calendars.yml +55 -17
- data/resources/locales/en-IE/fields.yml +19 -12
- data/resources/locales/en-IE/languages.yml +13 -8
- data/resources/locales/en-IE/numbers.yml +49 -0
- data/resources/locales/en-IE/plurals.yml +5 -5
- data/resources/locales/en-IE/territories.yml +2 -3
- data/resources/locales/en-IE/units.yml +126 -15
- data/resources/locales/en-SG/calendars.yml +52 -14
- data/resources/locales/en-SG/fields.yml +19 -12
- data/resources/locales/en-SG/languages.yml +13 -8
- data/resources/locales/en-SG/numbers.yml +49 -0
- data/resources/locales/en-SG/plurals.yml +5 -5
- data/resources/locales/en-SG/territories.yml +2 -3
- data/resources/locales/en-SG/units.yml +125 -14
- data/resources/locales/en-ZA/calendars.yml +54 -16
- data/resources/locales/en-ZA/fields.yml +19 -12
- data/resources/locales/en-ZA/languages.yml +13 -8
- data/resources/locales/en-ZA/numbers.yml +49 -0
- data/resources/locales/en-ZA/plurals.yml +5 -5
- data/resources/locales/en-ZA/territories.yml +2 -3
- data/resources/locales/en-ZA/units.yml +125 -14
- data/resources/locales/en/calendars.yml +51 -13
- data/resources/locales/en/fields.yml +19 -12
- data/resources/locales/en/languages.yml +13 -8
- data/resources/locales/en/numbers.yml +49 -0
- data/resources/locales/en/plurals.yml +5 -5
- data/resources/locales/en/rbnf.yml +37 -1
- data/resources/locales/en/territories.yml +2 -3
- data/resources/locales/en/units.yml +125 -14
- data/resources/locales/es-419/calendars.yml +159 -108
- data/resources/locales/es-419/fields.yml +122 -94
- data/resources/locales/es-419/languages.yml +22 -17
- data/resources/locales/es-419/lists.yml +4 -4
- data/resources/locales/es-419/numbers.yml +49 -0
- data/resources/locales/es-419/rbnf.yml +62 -1
- data/resources/locales/es-419/territories.yml +5 -6
- data/resources/locales/es-419/units.yml +193 -128
- data/resources/locales/es-CO/calendars.yml +128 -77
- data/resources/locales/es-CO/fields.yml +40 -12
- data/resources/locales/es-CO/languages.yml +22 -17
- data/resources/locales/es-CO/lists.yml +4 -4
- data/resources/locales/es-CO/numbers.yml +75 -26
- data/resources/locales/es-CO/territories.yml +5 -6
- data/resources/locales/es-CO/units.yml +167 -102
- data/resources/locales/es-MX/calendars.yml +119 -69
- data/resources/locales/es-MX/fields.yml +40 -12
- data/resources/locales/es-MX/languages.yml +26 -21
- data/resources/locales/es-MX/lists.yml +4 -4
- data/resources/locales/es-MX/numbers.yml +67 -18
- data/resources/locales/es-MX/territories.yml +8 -9
- data/resources/locales/es-MX/units.yml +160 -95
- data/resources/locales/es-US/calendars.yml +127 -77
- data/resources/locales/es-US/fields.yml +40 -12
- data/resources/locales/es-US/languages.yml +22 -17
- data/resources/locales/es-US/lists.yml +4 -4
- data/resources/locales/es-US/numbers.yml +73 -24
- data/resources/locales/es-US/territories.yml +5 -6
- data/resources/locales/es-US/units.yml +167 -102
- data/resources/locales/es/calendars.yml +124 -74
- data/resources/locales/es/fields.yml +40 -12
- data/resources/locales/es/languages.yml +22 -17
- data/resources/locales/es/lists.yml +4 -4
- data/resources/locales/es/numbers.yml +73 -24
- data/resources/locales/es/rbnf.yml +29 -14
- data/resources/locales/es/territories.yml +5 -6
- data/resources/locales/es/units.yml +171 -106
- data/resources/locales/eu/calendars.yml +18 -3
- data/resources/locales/eu/fields.yml +8 -0
- data/resources/locales/eu/languages.yml +1 -1
- data/resources/locales/eu/numbers.yml +49 -0
- data/resources/locales/eu/territories.yml +5 -6
- data/resources/locales/eu/units.yml +36 -6
- data/resources/locales/fa/calendars.yml +57 -14
- data/resources/locales/fa/fields.yml +64 -12
- data/resources/locales/fa/languages.yml +29 -17
- data/resources/locales/fa/numbers.yml +81 -32
- data/resources/locales/fa/plurals.yml +2 -2
- data/resources/locales/fa/territories.yml +11 -12
- data/resources/locales/fa/units.yml +144 -66
- data/resources/locales/fi/calendars.yml +55 -4
- data/resources/locales/fi/fields.yml +56 -4
- data/resources/locales/fi/languages.yml +8 -4
- data/resources/locales/fi/numbers.yml +49 -0
- data/resources/locales/fi/plurals.yml +2 -2
- data/resources/locales/fi/rbnf.yml +3649 -29
- data/resources/locales/fi/territories.yml +1 -2
- data/resources/locales/fi/units.yml +98 -12
- data/resources/locales/fil/calendars.yml +113 -60
- data/resources/locales/fil/fields.yml +78 -30
- data/resources/locales/fil/languages.yml +24 -12
- data/resources/locales/fil/lists.yml +4 -4
- data/resources/locales/fil/numbers.yml +61 -12
- data/resources/locales/fil/plurals.yml +4 -4
- data/resources/locales/fil/territories.yml +3 -4
- data/resources/locales/fil/units.yml +203 -138
- data/resources/locales/fr-BE/calendars.yml +103 -73
- data/resources/locales/fr-BE/fields.yml +32 -20
- data/resources/locales/fr-BE/languages.yml +12 -6
- data/resources/locales/fr-BE/numbers.yml +51 -2
- data/resources/locales/fr-BE/territories.yml +5 -6
- data/resources/locales/fr-BE/units.yml +100 -26
- data/resources/locales/fr-CA/calendars.yml +56 -26
- data/resources/locales/fr-CA/fields.yml +54 -42
- data/resources/locales/fr-CA/languages.yml +23 -17
- data/resources/locales/fr-CA/numbers.yml +54 -5
- data/resources/locales/fr-CA/territories.yml +4 -5
- data/resources/locales/fr-CA/units.yml +93 -19
- data/resources/locales/fr-CH/calendars.yml +103 -73
- data/resources/locales/fr-CH/fields.yml +32 -20
- data/resources/locales/fr-CH/languages.yml +12 -6
- data/resources/locales/fr-CH/numbers.yml +52 -3
- data/resources/locales/fr-CH/territories.yml +5 -6
- data/resources/locales/fr-CH/units.yml +100 -26
- data/resources/locales/fr/calendars.yml +103 -73
- data/resources/locales/fr/fields.yml +32 -20
- data/resources/locales/fr/languages.yml +12 -6
- data/resources/locales/fr/numbers.yml +51 -2
- data/resources/locales/fr/territories.yml +5 -6
- data/resources/locales/fr/units.yml +100 -26
- data/resources/locales/ga/calendars.yml +19 -4
- data/resources/locales/ga/fields.yml +82 -28
- data/resources/locales/ga/languages.yml +4 -3
- data/resources/locales/ga/numbers.yml +85 -0
- data/resources/locales/ga/plural_rules.yml +2 -1
- data/resources/locales/ga/plurals.yml +7 -5
- data/resources/locales/ga/territories.yml +0 -1
- data/resources/locales/ga/units.yml +140 -24
- data/resources/locales/gl/calendars.yml +60 -13
- data/resources/locales/gl/fields.yml +29 -0
- data/resources/locales/gl/languages.yml +42 -34
- data/resources/locales/gl/numbers.yml +50 -1
- data/resources/locales/gl/plurals.yml +2 -2
- data/resources/locales/gl/territories.yml +4 -5
- data/resources/locales/gl/units.yml +89 -24
- data/resources/locales/gu/calendars.yml +68 -25
- data/resources/locales/gu/fields.yml +55 -19
- data/resources/locales/gu/languages.yml +12 -7
- data/resources/locales/gu/lists.yml +8 -4
- data/resources/locales/gu/numbers.yml +97 -24
- data/resources/locales/gu/plurals.yml +2 -2
- data/resources/locales/gu/territories.yml +24 -25
- data/resources/locales/gu/units.yml +71 -6
- data/resources/locales/he/calendars.yml +42 -18
- data/resources/locales/he/languages.yml +9 -3
- data/resources/locales/he/numbers.yml +97 -24
- data/resources/locales/he/plurals.yml +3 -4
- data/resources/locales/he/rbnf.yml +4 -1
- data/resources/locales/he/territories.yml +7 -8
- data/resources/locales/he/units.yml +263 -164
- data/resources/locales/hi/calendars.yml +39 -3
- data/resources/locales/hi/fields.yml +12 -0
- data/resources/locales/hi/languages.yml +11 -5
- data/resources/locales/hi/numbers.yml +49 -0
- data/resources/locales/hi/plurals.yml +2 -2
- data/resources/locales/hi/territories.yml +0 -1
- data/resources/locales/hi/units.yml +75 -10
- data/resources/locales/hr/calendars.yml +46 -27
- data/resources/locales/hr/fields.yml +59 -11
- data/resources/locales/hr/languages.yml +8 -1
- data/resources/locales/hr/numbers.yml +61 -0
- data/resources/locales/hr/plurals.yml +4 -7
- data/resources/locales/hr/territories.yml +0 -1
- data/resources/locales/hr/units.yml +95 -13
- data/resources/locales/hu/calendars.yml +63 -2
- data/resources/locales/hu/fields.yml +48 -0
- data/resources/locales/hu/languages.yml +7 -1
- data/resources/locales/hu/numbers.yml +49 -0
- data/resources/locales/hu/territories.yml +3 -4
- data/resources/locales/hu/units.yml +73 -8
- data/resources/locales/id/calendars.yml +52 -2
- data/resources/locales/id/fields.yml +6 -6
- data/resources/locales/id/languages.yml +18 -21
- data/resources/locales/id/numbers.yml +37 -0
- data/resources/locales/id/rbnf.yml +4 -1
- data/resources/locales/id/territories.yml +2 -3
- data/resources/locales/id/units.yml +52 -4
- data/resources/locales/is/calendars.yml +53 -11
- data/resources/locales/is/fields.yml +61 -13
- data/resources/locales/is/languages.yml +10 -4
- data/resources/locales/is/numbers.yml +49 -0
- data/resources/locales/is/plurals.yml +2 -2
- data/resources/locales/is/territories.yml +4 -5
- data/resources/locales/is/units.yml +78 -12
- data/resources/locales/it-CH/calendars.yml +81 -31
- data/resources/locales/it-CH/fields.yml +22 -10
- data/resources/locales/it-CH/languages.yml +9 -5
- data/resources/locales/it-CH/lists.yml +4 -4
- data/resources/locales/it-CH/numbers.yml +61 -12
- data/resources/locales/it-CH/plurals.yml +2 -2
- data/resources/locales/it-CH/territories.yml +27 -28
- data/resources/locales/it-CH/units.yml +161 -96
- data/resources/locales/it/calendars.yml +67 -17
- data/resources/locales/it/fields.yml +22 -10
- data/resources/locales/it/languages.yml +9 -5
- data/resources/locales/it/lists.yml +4 -4
- data/resources/locales/it/numbers.yml +61 -12
- data/resources/locales/it/plurals.yml +2 -2
- data/resources/locales/it/rbnf.yml +3 -15
- data/resources/locales/it/territories.yml +27 -28
- data/resources/locales/it/units.yml +161 -96
- data/resources/locales/ja/calendars.yml +59 -2
- data/resources/locales/ja/fields.yml +36 -0
- data/resources/locales/ja/languages.yml +9 -6
- data/resources/locales/ja/numbers.yml +40 -3
- data/resources/locales/ja/territories.yml +1 -2
- data/resources/locales/ja/units.yml +57 -9
- data/resources/locales/kn/calendars.yml +56 -15
- data/resources/locales/kn/fields.yml +49 -1
- data/resources/locales/kn/languages.yml +6 -1
- data/resources/locales/kn/lists.yml +8 -4
- data/resources/locales/kn/numbers.yml +97 -24
- data/resources/locales/kn/plurals.yml +2 -2
- data/resources/locales/kn/territories.yml +0 -1
- data/resources/locales/kn/units.yml +83 -18
- data/resources/locales/ko/calendars.yml +61 -4
- data/resources/locales/ko/languages.yml +14 -21
- data/resources/locales/ko/numbers.yml +39 -2
- data/resources/locales/ko/territories.yml +29 -30
- data/resources/locales/ko/units.yml +58 -10
- data/resources/locales/lv/calendars.yml +58 -10
- data/resources/locales/lv/fields.yml +8 -8
- data/resources/locales/lv/languages.yml +8 -1
- data/resources/locales/lv/numbers.yml +62 -1
- data/resources/locales/lv/plurals.yml +4 -6
- data/resources/locales/lv/territories.yml +0 -1
- data/resources/locales/lv/units.yml +86 -8
- data/resources/locales/mr/calendars.yml +70 -11
- data/resources/locales/mr/fields.yml +97 -61
- data/resources/locales/mr/languages.yml +9 -3
- data/resources/locales/mr/lists.yml +8 -4
- data/resources/locales/mr/numbers.yml +97 -24
- data/resources/locales/mr/plurals.yml +2 -2
- data/resources/locales/mr/territories.yml +4 -5
- data/resources/locales/mr/units.yml +71 -6
- data/resources/locales/ms/calendars.yml +47 -6
- data/resources/locales/ms/fields.yml +48 -0
- data/resources/locales/ms/languages.yml +12 -4
- data/resources/locales/ms/numbers.yml +37 -0
- data/resources/locales/ms/rbnf.yml +2 -2
- data/resources/locales/ms/territories.yml +2 -3
- data/resources/locales/ms/units.yml +54 -6
- data/resources/locales/nb/calendars.yml +83 -38
- data/resources/locales/nb/fields.yml +89 -55
- data/resources/locales/nb/languages.yml +105 -8
- data/resources/locales/nb/numbers.yml +50 -1
- data/resources/locales/nb/rbnf.yml +762 -22
- data/resources/locales/nb/territories.yml +2 -3
- data/resources/locales/nb/units.yml +92 -19
- data/resources/locales/nl/calendars.yml +88 -52
- data/resources/locales/nl/fields.yml +62 -10
- data/resources/locales/nl/languages.yml +12 -9
- data/resources/locales/nl/lists.yml +1 -1
- data/resources/locales/nl/numbers.yml +50 -1
- data/resources/locales/nl/plurals.yml +2 -2
- data/resources/locales/nl/territories.yml +2 -3
- data/resources/locales/nl/units.yml +101 -30
- data/resources/locales/pl/calendars.yml +70 -31
- data/resources/locales/pl/fields.yml +12 -0
- data/resources/locales/pl/languages.yml +8 -5
- data/resources/locales/pl/numbers.yml +73 -0
- data/resources/locales/pl/plurals.yml +4 -8
- data/resources/locales/pl/rbnf.yml +965 -50
- data/resources/locales/pl/territories.yml +3 -4
- data/resources/locales/pl/units.yml +109 -10
- data/resources/locales/pt/calendars.yml +65 -23
- data/resources/locales/pt/fields.yml +76 -76
- data/resources/locales/pt/languages.yml +20 -13
- data/resources/locales/pt/numbers.yml +49 -0
- data/resources/locales/pt/plurals.yml +2 -2
- data/resources/locales/pt/rbnf.yml +1 -1
- data/resources/locales/pt/territories.yml +4 -5
- data/resources/locales/pt/units.yml +75 -10
- data/resources/locales/ro/calendars.yml +90 -50
- data/resources/locales/ro/fields.yml +15 -3
- data/resources/locales/ro/languages.yml +10 -4
- data/resources/locales/ro/numbers.yml +62 -1
- data/resources/locales/ro/plurals.yml +3 -4
- data/resources/locales/ro/territories.yml +4 -5
- data/resources/locales/ro/units.yml +100 -18
- data/resources/locales/ru/calendars.yml +88 -41
- data/resources/locales/ru/fields.yml +24 -12
- data/resources/locales/ru/languages.yml +13 -6
- data/resources/locales/ru/lists.yml +7 -7
- data/resources/locales/ru/numbers.yml +73 -0
- data/resources/locales/ru/plurals.yml +4 -8
- data/resources/locales/ru/rbnf.yml +3916 -8
- data/resources/locales/ru/territories.yml +6 -7
- data/resources/locales/ru/units.yml +127 -28
- data/resources/locales/sk/calendars.yml +97 -42
- data/resources/locales/sk/fields.yml +30 -18
- data/resources/locales/sk/languages.yml +20 -14
- data/resources/locales/sk/lists.yml +1 -1
- data/resources/locales/sk/numbers.yml +99 -26
- data/resources/locales/sk/plurals.yml +3 -3
- data/resources/locales/sk/territories.yml +1 -2
- data/resources/locales/sk/units.yml +114 -15
- data/resources/locales/sq/calendars.yml +66 -11
- data/resources/locales/sq/fields.yml +49 -49
- data/resources/locales/sq/languages.yml +48 -39
- data/resources/locales/sq/numbers.yml +49 -0
- data/resources/locales/sq/plurals.yml +2 -2
- data/resources/locales/sq/territories.yml +25 -25
- data/resources/locales/sq/units.yml +112 -47
- data/resources/locales/sr/calendars.yml +70 -21
- data/resources/locales/sr/fields.yml +26 -14
- data/resources/locales/sr/languages.yml +12 -6
- data/resources/locales/sr/numbers.yml +62 -1
- data/resources/locales/sr/plurals.yml +4 -7
- data/resources/locales/sr/territories.yml +2 -3
- data/resources/locales/sr/units.yml +99 -17
- data/resources/locales/sv/calendars.yml +110 -71
- data/resources/locales/sv/fields.yml +69 -21
- data/resources/locales/sv/languages.yml +35 -5
- data/resources/locales/sv/numbers.yml +51 -2
- data/resources/locales/sv/plurals.yml +4 -4
- data/resources/locales/sv/territories.yml +0 -1
- data/resources/locales/sv/units.yml +95 -9
- data/resources/locales/ta/calendars.yml +112 -47
- data/resources/locales/ta/fields.yml +145 -97
- data/resources/locales/ta/languages.yml +30 -26
- data/resources/locales/ta/numbers.yml +49 -0
- data/resources/locales/ta/territories.yml +31 -32
- data/resources/locales/ta/units.yml +90 -25
- data/resources/locales/th/calendars.yml +66 -6
- data/resources/locales/th/fields.yml +36 -0
- data/resources/locales/th/languages.yml +10 -3
- data/resources/locales/th/numbers.yml +37 -0
- data/resources/locales/th/rbnf.yml +2 -2
- data/resources/locales/th/territories.yml +0 -1
- data/resources/locales/th/units.yml +54 -6
- data/resources/locales/tr/calendars.yml +63 -2
- data/resources/locales/tr/fields.yml +28 -0
- data/resources/locales/tr/languages.yml +9 -4
- data/resources/locales/tr/numbers.yml +49 -0
- data/resources/locales/tr/rbnf.yml +9 -28
- data/resources/locales/tr/territories.yml +1 -2
- data/resources/locales/tr/units.yml +81 -16
- data/resources/locales/uk/calendars.yml +93 -61
- data/resources/locales/uk/fields.yml +44 -12
- data/resources/locales/uk/languages.yml +27 -6
- data/resources/locales/uk/numbers.yml +86 -13
- data/resources/locales/uk/plurals.yml +6 -10
- data/resources/locales/uk/territories.yml +3 -4
- data/resources/locales/uk/units.yml +122 -23
- data/resources/locales/ur/calendars.yml +58 -9
- data/resources/locales/ur/fields.yml +51 -19
- data/resources/locales/ur/languages.yml +23 -13
- data/resources/locales/ur/numbers.yml +49 -0
- data/resources/locales/ur/plurals.yml +2 -2
- data/resources/locales/ur/territories.yml +8 -9
- data/resources/locales/ur/units.yml +76 -11
- data/resources/locales/vi/calendars.yml +72 -23
- data/resources/locales/vi/fields.yml +65 -29
- data/resources/locales/vi/languages.yml +42 -3
- data/resources/locales/vi/numbers.yml +38 -1
- data/resources/locales/vi/territories.yml +7 -8
- data/resources/locales/vi/units.yml +58 -10
- data/resources/locales/zh-Hant/calendars.yml +64 -21
- data/resources/locales/zh-Hant/fields.yml +12 -0
- data/resources/locales/zh-Hant/languages.yml +13 -8
- data/resources/locales/zh-Hant/lists.yml +8 -8
- data/resources/locales/zh-Hant/numbers.yml +50 -13
- data/resources/locales/zh-Hant/territories.yml +11 -12
- data/resources/locales/zh-Hant/units.yml +204 -156
- data/resources/locales/zh/calendars.yml +69 -26
- data/resources/locales/zh/languages.yml +8 -1
- data/resources/locales/zh/numbers.yml +40 -3
- data/resources/locales/zh/territories.yml +2 -3
- data/resources/locales/zh/units.yml +71 -23
- data/resources/shared/aliases.yml +31 -0
- data/resources/shared/hyphenation/af-ZA.yml +3343 -0
- data/resources/shared/hyphenation/bg-BG.yml +5963 -0
- data/resources/shared/hyphenation/ca.yml +2310 -0
- data/resources/shared/hyphenation/cs-CZ.yml +3639 -0
- data/resources/shared/hyphenation/da-DK.yml +1148 -0
- data/resources/shared/hyphenation/de-AT.yml +11392 -0
- data/resources/shared/hyphenation/de-CH.yml +11392 -0
- data/resources/shared/hyphenation/de-DE.yml +11392 -0
- data/resources/shared/hyphenation/el-GR.yml +581 -0
- data/resources/shared/hyphenation/en-GB.yml +14064 -0
- data/resources/shared/hyphenation/en-US.yml +11132 -0
- data/resources/shared/hyphenation/es.yml +867 -0
- data/resources/shared/hyphenation/et-EE.yml +3694 -0
- data/resources/shared/hyphenation/fr.yml +2844 -0
- data/resources/shared/hyphenation/gl.yml +292 -0
- data/resources/shared/hyphenation/hr-HR.yml +1599 -0
- data/resources/shared/hyphenation/hu-HU.yml +96292 -0
- data/resources/shared/hyphenation/is.yml +7697 -0
- data/resources/shared/hyphenation/it-IT.yml +401 -0
- data/resources/shared/hyphenation/lt.yml +1549 -0
- data/resources/shared/hyphenation/lv-LV.yml +11902 -0
- data/resources/shared/hyphenation/nb-NO.yml +27144 -0
- data/resources/shared/hyphenation/nl-NL.yml +16259 -0
- data/resources/shared/hyphenation/nn-NO.yml +27144 -0
- data/resources/shared/hyphenation/pl-PL.yml +4826 -0
- data/resources/shared/hyphenation/pt-BR.yml +1249 -0
- data/resources/shared/hyphenation/pt-PT.yml +310 -0
- data/resources/shared/hyphenation/ro-RO.yml +5206 -0
- data/resources/shared/hyphenation/ru-RU.yml +3877 -0
- data/resources/shared/hyphenation/sk-SK.yml +2470 -0
- data/resources/shared/hyphenation/sl-SI.yml +1415 -0
- data/resources/shared/hyphenation/sr-Latn.yml +3414 -0
- data/resources/shared/hyphenation/sr.yml +3367 -0
- data/resources/shared/hyphenation/sv.yml +14956 -0
- data/resources/shared/hyphenation/te-IN.yml +75 -0
- data/resources/shared/hyphenation/uk-UA.yml +1656 -0
- data/resources/shared/hyphenation/zu-ZA.yml +133 -0
- data/resources/shared/language_codes_table.dump +0 -0
- data/resources/shared/likely_subtags.yml +61 -16
- data/resources/shared/numbering_systems.yml +45 -0
- data/resources/shared/postal_codes.yml +318 -309
- data/resources/shared/rbnf_root.yml +613 -273
- data/resources/shared/segments/segments_root.yml +4 -1
- data/resources/shared/territories_containment.yml +3 -3
- data/resources/shared/transforms/Amharic-Latin-BGN.yml +336 -0
- data/resources/shared/transforms/Amharic-Latin.yml +335 -0
- data/resources/shared/transforms/Any-Accents.yml +52 -0
- data/resources/shared/transforms/Any-Publishing.yml +22 -0
- data/resources/shared/transforms/Arabic-Latin-BGN.yml +122 -0
- data/resources/shared/transforms/Arabic-Latin.yml +109 -0
- data/resources/shared/transforms/Armenian-Latin-BGN.yml +133 -0
- data/resources/shared/transforms/Armenian-Latin.yml +132 -0
- data/resources/shared/transforms/Azerbaijani-Latin-BGN.yml +93 -0
- data/resources/shared/transforms/Azerbaijani-Latin.yml +92 -0
- data/resources/shared/transforms/Belarusian-Latin-BGN.yml +108 -0
- data/resources/shared/transforms/Belarusian-Latin.yml +107 -0
- data/resources/shared/transforms/Bengali-Devanagari.yml +13 -0
- data/resources/shared/transforms/Bengali-Gujarati.yml +13 -0
- data/resources/shared/transforms/Bengali-Gurmukhi.yml +13 -0
- data/resources/shared/transforms/Bengali-InterIndic.yml +100 -0
- data/resources/shared/transforms/Bengali-Kannada.yml +13 -0
- data/resources/shared/transforms/Bengali-Latin.yml +13 -0
- data/resources/shared/transforms/Bengali-Malayalam.yml +13 -0
- data/resources/shared/transforms/Bengali-Oriya.yml +13 -0
- data/resources/shared/transforms/Bengali-Tamil.yml +13 -0
- data/resources/shared/transforms/Bengali-Telugu.yml +13 -0
- data/resources/shared/transforms/Bulgarian-Latin-BGN.yml +99 -0
- data/resources/shared/transforms/Bulgarian-Latin.yml +98 -0
- data/resources/shared/transforms/Cyrillic-Latin.yml +128 -0
- data/resources/shared/transforms/Devanagari-Bengali.yml +13 -0
- data/resources/shared/transforms/Devanagari-Gujarati.yml +13 -0
- data/resources/shared/transforms/Devanagari-Gurmukhi.yml +13 -0
- data/resources/shared/transforms/Devanagari-InterIndic.yml +114 -0
- data/resources/shared/transforms/Devanagari-Kannada.yml +13 -0
- data/resources/shared/transforms/Devanagari-Latin.yml +13 -0
- data/resources/shared/transforms/Devanagari-Malayalam.yml +13 -0
- data/resources/shared/transforms/Devanagari-Oriya.yml +13 -0
- data/resources/shared/transforms/Devanagari-Tamil.yml +13 -0
- data/resources/shared/transforms/Devanagari-Telugu.yml +13 -0
- data/resources/shared/transforms/Fullwidth-Halfwidth.yml +260 -0
- data/resources/shared/transforms/Georgian-Latin-BGN.yml +44 -0
- data/resources/shared/transforms/Georgian-Latin.yml +43 -0
- data/resources/shared/transforms/Greek-Latin-BGN.yml +208 -0
- data/resources/shared/transforms/Greek-Latin-UNGEGN.yml +160 -0
- data/resources/shared/transforms/Greek-Latin.yml +206 -0
- data/resources/shared/transforms/Gujarati-Bengali.yml +13 -0
- data/resources/shared/transforms/Gujarati-Devanagari.yml +13 -0
- data/resources/shared/transforms/Gujarati-Gurmukhi.yml +13 -0
- data/resources/shared/transforms/Gujarati-InterIndic.yml +91 -0
- data/resources/shared/transforms/Gujarati-Kannada.yml +13 -0
- data/resources/shared/transforms/Gujarati-Latin.yml +13 -0
- data/resources/shared/transforms/Gujarati-Malayalam.yml +13 -0
- data/resources/shared/transforms/Gujarati-Oriya.yml +13 -0
- data/resources/shared/transforms/Gujarati-Tamil.yml +13 -0
- data/resources/shared/transforms/Gujarati-Telugu.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-Bengali.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-Devanagari.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-Gujarati.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-InterIndic.yml +84 -0
- data/resources/shared/transforms/Gurmukhi-Kannada.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-Latin.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-Malayalam.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-Oriya.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-Tamil.yml +13 -0
- data/resources/shared/transforms/Gurmukhi-Telugu.yml +13 -0
- data/resources/shared/transforms/Han-Latin-Names.yml +53 -0
- data/resources/shared/transforms/Han-Latin.yml +1606 -0
- data/resources/shared/transforms/Han-Spacedhan.yml +17 -0
- data/resources/shared/transforms/Hangul-Latin.yml +12 -0
- data/resources/shared/transforms/Hebrew-Latin-BGN.yml +62 -0
- data/resources/shared/transforms/Hebrew-Latin.yml +72 -0
- data/resources/shared/transforms/Hiragana-Katakana.yml +114 -0
- data/resources/shared/transforms/Hiragana-Latin.yml +15 -0
- data/resources/shared/transforms/IPA-XSampa.yml +176 -0
- data/resources/shared/transforms/InterIndic-Bengali.yml +137 -0
- data/resources/shared/transforms/InterIndic-Devanagari.yml +149 -0
- data/resources/shared/transforms/InterIndic-Gujarati.yml +137 -0
- data/resources/shared/transforms/InterIndic-Gurmukhi.yml +141 -0
- data/resources/shared/transforms/InterIndic-Kannada.yml +139 -0
- data/resources/shared/transforms/InterIndic-Latin.yml +461 -0
- data/resources/shared/transforms/InterIndic-Malayalam.yml +139 -0
- data/resources/shared/transforms/InterIndic-Oriya.yml +137 -0
- data/resources/shared/transforms/InterIndic-Tamil.yml +138 -0
- data/resources/shared/transforms/InterIndic-Telugu.yml +138 -0
- data/resources/shared/transforms/Jamo-Latin.yml +12 -0
- data/resources/shared/transforms/JapaneseKana-Latin.yml +309 -0
- data/resources/shared/transforms/Kannada-Bengali.yml +13 -0
- data/resources/shared/transforms/Kannada-Devanagari.yml +13 -0
- data/resources/shared/transforms/Kannada-Gujarati.yml +13 -0
- data/resources/shared/transforms/Kannada-Gurmukhi.yml +13 -0
- data/resources/shared/transforms/Kannada-InterIndic.yml +91 -0
- data/resources/shared/transforms/Kannada-Latin.yml +13 -0
- data/resources/shared/transforms/Kannada-Malayalam.yml +13 -0
- data/resources/shared/transforms/Kannada-Oriya.yml +13 -0
- data/resources/shared/transforms/Kannada-Tamil.yml +13 -0
- data/resources/shared/transforms/Kannada-Telugu.yml +13 -0
- data/resources/shared/transforms/Katakana-Latin-BGN.yml +310 -0
- data/resources/shared/transforms/Katakana-Latin.yml +309 -0
- data/resources/shared/transforms/Kazakh-Latin-BGN.yml +136 -0
- data/resources/shared/transforms/Kazakh-Latin.yml +135 -0
- data/resources/shared/transforms/Kirghiz-Latin-BGN.yml +107 -0
- data/resources/shared/transforms/Kirghiz-Latin.yml +106 -0
- data/resources/shared/transforms/Korean-Latin-BGN.yml +282 -0
- data/resources/shared/transforms/Korean-Latin.yml +281 -0
- data/resources/shared/transforms/Latin-ASCII.yml +694 -0
- data/resources/shared/transforms/Latin-Armenian.yml +90 -0
- data/resources/shared/transforms/Latin-Bengali.yml +14 -0
- data/resources/shared/transforms/Latin-Bopomofo.yml +1451 -0
- data/resources/shared/transforms/Latin-CanadianAboriginal.yml +190 -0
- data/resources/shared/transforms/Latin-ConjoiningJamo.yml +263 -0
- data/resources/shared/transforms/Latin-Devanagari.yml +14 -0
- data/resources/shared/transforms/Latin-Ethiopic.yml +278 -0
- data/resources/shared/transforms/Latin-Gujarati.yml +14 -0
- data/resources/shared/transforms/Latin-Gurmukhi.yml +14 -0
- data/resources/shared/transforms/Latin-Hangul.yml +13 -0
- data/resources/shared/transforms/Latin-InterIndic.yml +341 -0
- data/resources/shared/transforms/Latin-Jamo.yml +13 -0
- data/resources/shared/transforms/Latin-Kannada.yml +14 -0
- data/resources/shared/transforms/Latin-Katakana.yml +274 -0
- data/resources/shared/transforms/Latin-Malayalam.yml +14 -0
- data/resources/shared/transforms/Latin-NumericPinyin.yml +21 -0
- data/resources/shared/transforms/Latin-Oriya.yml +14 -0
- data/resources/shared/transforms/Latin-Tamil.yml +14 -0
- data/resources/shared/transforms/Latin-Telugu.yml +14 -0
- data/resources/shared/transforms/Latin-Thaana.yml +439 -0
- data/resources/shared/transforms/Latin-Thai.yml +13 -0
- data/resources/shared/transforms/Macedonian-Latin-BGN.yml +89 -0
- data/resources/shared/transforms/Macedonian-Latin.yml +88 -0
- data/resources/shared/transforms/Malayalam-Bengali.yml +13 -0
- data/resources/shared/transforms/Malayalam-Devanagari.yml +13 -0
- data/resources/shared/transforms/Malayalam-Gujarati.yml +13 -0
- data/resources/shared/transforms/Malayalam-Gurmukhi.yml +13 -0
- data/resources/shared/transforms/Malayalam-InterIndic.yml +83 -0
- data/resources/shared/transforms/Malayalam-Kannada.yml +13 -0
- data/resources/shared/transforms/Malayalam-Latin.yml +13 -0
- data/resources/shared/transforms/Malayalam-Oriya.yml +13 -0
- data/resources/shared/transforms/Malayalam-Tamil.yml +13 -0
- data/resources/shared/transforms/Malayalam-Telugu.yml +13 -0
- data/resources/shared/transforms/Maldivian-Latin-BGN.yml +77 -0
- data/resources/shared/transforms/Maldivian-Latin.yml +76 -0
- data/resources/shared/transforms/Mongolian-Latin-BGN.yml +101 -0
- data/resources/shared/transforms/Mongolian-Latin.yml +100 -0
- data/resources/shared/transforms/Oriya-Bengali.yml +13 -0
- data/resources/shared/transforms/Oriya-Devanagari.yml +13 -0
- data/resources/shared/transforms/Oriya-Gujarati.yml +13 -0
- data/resources/shared/transforms/Oriya-Gurmukhi.yml +13 -0
- data/resources/shared/transforms/Oriya-InterIndic.yml +89 -0
- data/resources/shared/transforms/Oriya-Kannada.yml +13 -0
- data/resources/shared/transforms/Oriya-Latin.yml +13 -0
- data/resources/shared/transforms/Oriya-Malayalam.yml +13 -0
- data/resources/shared/transforms/Oriya-Tamil.yml +13 -0
- data/resources/shared/transforms/Oriya-Telugu.yml +13 -0
- data/resources/shared/transforms/Pashto-Latin-BGN.yml +151 -0
- data/resources/shared/transforms/Pashto-Latin.yml +150 -0
- data/resources/shared/transforms/Persian-Latin-BGN.yml +123 -0
- data/resources/shared/transforms/Persian-Latin.yml +122 -0
- data/resources/shared/transforms/Pinyin-NumericPinyin.yml +13 -0
- data/resources/shared/transforms/Russian-Latin-BGN.yml +113 -0
- data/resources/shared/transforms/Russian-Latin.yml +112 -0
- data/resources/shared/transforms/Serbian-Latin-BGN.yml +81 -0
- data/resources/shared/transforms/Serbian-Latin.yml +80 -0
- data/resources/shared/transforms/Simplified-Traditional.yml +3988 -0
- data/resources/shared/transforms/Syriac-Latin.yml +55 -0
- data/resources/shared/transforms/Tamil-Bengali.yml +13 -0
- data/resources/shared/transforms/Tamil-Devanagari.yml +13 -0
- data/resources/shared/transforms/Tamil-Gujarati.yml +13 -0
- data/resources/shared/transforms/Tamil-Gurmukhi.yml +13 -0
- data/resources/shared/transforms/Tamil-InterIndic.yml +72 -0
- data/resources/shared/transforms/Tamil-Kannada.yml +13 -0
- data/resources/shared/transforms/Tamil-Latin.yml +13 -0
- data/resources/shared/transforms/Tamil-Malayalam.yml +13 -0
- data/resources/shared/transforms/Tamil-Oriya.yml +13 -0
- data/resources/shared/transforms/Tamil-Telugu.yml +13 -0
- data/resources/shared/transforms/Telugu-Bengali.yml +13 -0
- data/resources/shared/transforms/Telugu-Devanagari.yml +13 -0
- data/resources/shared/transforms/Telugu-Gujarati.yml +13 -0
- data/resources/shared/transforms/Telugu-Gurmukhi.yml +13 -0
- data/resources/shared/transforms/Telugu-InterIndic.yml +89 -0
- data/resources/shared/transforms/Telugu-Kannada.yml +13 -0
- data/resources/shared/transforms/Telugu-Latin.yml +13 -0
- data/resources/shared/transforms/Telugu-Malayalam.yml +13 -0
- data/resources/shared/transforms/Telugu-Oriya.yml +13 -0
- data/resources/shared/transforms/Telugu-Tamil.yml +13 -0
- data/resources/shared/transforms/Thai-Latin.yml +15 -0
- data/resources/shared/transforms/Thai-ThaiLogical.yml +15 -0
- data/resources/shared/transforms/Thai-ThaiSemi.yml +10 -0
- data/resources/shared/transforms/ThaiLogical-Latin.yml +119 -0
- data/resources/shared/transforms/Turkmen-Latin-BGN.yml +122 -0
- data/resources/shared/transforms/Turkmen-Latin.yml +121 -0
- data/resources/shared/transforms/Ukrainian-Latin-BGN.yml +115 -0
- data/resources/shared/transforms/Ukrainian-Latin.yml +114 -0
- data/resources/shared/transforms/Uzbek-Latin-BGN.yml +117 -0
- data/resources/shared/transforms/Uzbek-Latin.yml +116 -0
- data/resources/shared/transforms/az-Lower.yml +12 -0
- data/resources/shared/transforms/az-Title.yml +13 -0
- data/resources/shared/transforms/az-Upper.yml +10 -0
- data/resources/shared/transforms/ch-ch_FONIPA.yml +71 -0
- data/resources/shared/transforms/cs-cs_FONIPA.yml +62 -0
- data/resources/shared/transforms/cs-ja.yml +10 -0
- data/resources/shared/transforms/cs-ko.yml +10 -0
- data/resources/shared/transforms/cs_FONIPA-ja.yml +201 -0
- data/resources/shared/transforms/cs_FONIPA-ko.yml +88 -0
- data/resources/shared/transforms/dsb-dsb_FONIPA.yml +73 -0
- data/resources/shared/transforms/el-Lower.yml +13 -0
- data/resources/shared/transforms/el-Title.yml +14 -0
- data/resources/shared/transforms/el-Upper.yml +13 -0
- data/resources/shared/transforms/es-am.yml +10 -0
- data/resources/shared/transforms/es-es_FONIPA.yml +81 -0
- data/resources/shared/transforms/es-ja.yml +10 -0
- data/resources/shared/transforms/es-zh.yml +10 -0
- data/resources/shared/transforms/es_419-ja.yml +11 -0
- data/resources/shared/transforms/es_419-zh.yml +11 -0
- data/resources/shared/transforms/es_FONIPA-am.yml +167 -0
- data/resources/shared/transforms/es_FONIPA-es_419_FONIPA.yml +10 -0
- data/resources/shared/transforms/es_FONIPA-ja.yml +145 -0
- data/resources/shared/transforms/es_FONIPA-zh.yml +497 -0
- data/resources/shared/transforms/it-am.yml +198 -0
- data/resources/shared/transforms/it-ja.yml +185 -0
- data/resources/shared/transforms/ja_Latn-ko.yml +92 -0
- data/resources/shared/transforms/ja_Latn-ru.yml +63 -0
- data/resources/shared/transforms/la-la_FONIPA.yml +81 -0
- data/resources/shared/transforms/lt-Lower.yml +17 -0
- data/resources/shared/transforms/lt-Title.yml +19 -0
- data/resources/shared/transforms/lt-Upper.yml +12 -0
- data/resources/shared/transforms/nl-Title.yml +10 -0
- data/resources/shared/transforms/pl-ja.yml +10 -0
- data/resources/shared/transforms/pl-pl_FONIPA.yml +98 -0
- data/resources/shared/transforms/pl_FONIPA-ja.yml +218 -0
- data/resources/shared/transforms/ro-ja.yml +10 -0
- data/resources/shared/transforms/ro-ro_FONIPA.yml +88 -0
- data/resources/shared/transforms/ro_FONIPA-ja.yml +157 -0
- data/resources/shared/transforms/ru-ja.yml +441 -0
- data/resources/shared/transforms/ru-zh.yml +975 -0
- data/resources/shared/transforms/sk-ja.yml +10 -0
- data/resources/shared/transforms/sk-sk_FONIPA.yml +74 -0
- data/resources/shared/transforms/sk_FONIPA-ja.yml +190 -0
- data/resources/shared/transforms/tlh-tlh_FONIPA.yml +54 -0
- data/resources/shared/transforms/tr-Lower.yml +12 -0
- data/resources/shared/transforms/tr-Title.yml +13 -0
- data/resources/shared/transforms/tr-Upper.yml +10 -0
- data/resources/shared/transforms/uz_Cyrl-uz_Latn.yml +102 -0
- data/resources/shared/transforms/yo-yo_BJ.yml +16 -0
- data/resources/shared/transforms/zh_Latn_PINYIN-ru.yml +120 -0
- data/resources/unicode_data/blocks.yml +168 -0
- data/resources/unicode_data/blocks/ancient_greek_numbers.yml +32 -0
- data/resources/unicode_data/blocks/ancient_symbols.yml +16 -0
- data/resources/unicode_data/blocks/arabic.yml +16 -0
- data/resources/unicode_data/blocks/arabic_extended_a.yml +176 -0
- data/resources/unicode_data/blocks/arabic_presentation_forms_a.yml +2 -2
- data/resources/unicode_data/blocks/armenian.yml +32 -0
- data/resources/unicode_data/blocks/bengali.yml +16 -0
- data/resources/unicode_data/blocks/brahmi.yml +16 -0
- data/resources/unicode_data/blocks/cherokee.yml +281 -169
- data/resources/unicode_data/blocks/cjk_unified_ideographs.yml +2 -2
- data/resources/unicode_data/blocks/combining_diacritical_marks_supplement.yml +240 -0
- data/resources/unicode_data/blocks/combining_half_marks.yml +144 -0
- data/resources/unicode_data/blocks/cuneiform.yml +688 -0
- data/resources/unicode_data/blocks/cuneiform_numbers_and_punctuation.yml +208 -0
- data/resources/unicode_data/blocks/currency_symbols.yml +64 -0
- data/resources/unicode_data/blocks/cyrillic_extended_b.yml +112 -0
- data/resources/unicode_data/blocks/cyrillic_supplement.yml +128 -0
- data/resources/unicode_data/blocks/devanagari.yml +16 -0
- data/resources/unicode_data/blocks/devanagari_extended.yml +32 -0
- data/resources/unicode_data/blocks/dingbats.yml +16 -0
- data/resources/unicode_data/blocks/emoticons.yml +64 -0
- data/resources/unicode_data/blocks/enclosed_alphanumeric_supplement.yml +32 -0
- data/resources/unicode_data/blocks/greek_and_coptic.yml +18 -2
- data/resources/unicode_data/blocks/gujarati.yml +16 -0
- data/resources/unicode_data/blocks/ipa_extensions.yml +12 -12
- data/resources/unicode_data/blocks/kannada.yml +16 -0
- data/resources/unicode_data/blocks/latin_extended_d.yml +400 -0
- data/resources/unicode_data/blocks/limbu.yml +32 -0
- data/resources/unicode_data/blocks/malayalam.yml +32 -0
- data/resources/unicode_data/blocks/meroitic_cursive.yml +1024 -0
- data/resources/unicode_data/blocks/miscellaneous_symbols_and_arrows.yml +1904 -0
- data/resources/unicode_data/blocks/miscellaneous_symbols_and_pictographs.yml +4816 -1088
- data/resources/unicode_data/blocks/miscellaneous_technical.yml +112 -0
- data/resources/unicode_data/blocks/musical_symbols.yml +176 -0
- data/resources/unicode_data/blocks/myanmar_extended_a.yml +64 -0
- data/resources/unicode_data/blocks/new_tai_lue.yml +19 -19
- data/resources/unicode_data/blocks/number_forms.yml +32 -0
- data/resources/unicode_data/blocks/old_italic.yml +16 -0
- data/resources/unicode_data/blocks/playing_cards.yml +368 -0
- data/resources/unicode_data/blocks/runic.yml +128 -0
- data/resources/unicode_data/blocks/sharada.yml +176 -0
- data/resources/unicode_data/blocks/sinhala.yml +160 -0
- data/resources/unicode_data/blocks/sundanese.yml +4 -4
- data/resources/unicode_data/blocks/supplemental_punctuation.yml +112 -0
- data/resources/unicode_data/blocks/telugu.yml +48 -0
- data/resources/unicode_data/blocks/transport_and_map_symbols.yml +448 -0
- data/resources/unicode_data/blocks/vedic_extensions.yml +32 -0
- data/resources/unicode_data/casefolding.yml +760 -0
- data/resources/unicode_data/properties/Age/7.0/value.dump +0 -0
- data/resources/unicode_data/properties/Age/8.0/value.dump +0 -0
- data/resources/unicode_data/properties/Bidi_Paired_Bracket_Type/Close/value.dump +62 -0
- data/resources/unicode_data/properties/Bidi_Paired_Bracket_Type/Open/value.dump +66 -0
- data/resources/unicode_data/properties/Block/Ahom/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Anatolian Hieroglyphs/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Bassa Vah/value.dump +3 -0
- data/resources/unicode_data/properties/Block/CJK Unified Ideographs Extension E/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Caucasian Albanian/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Cherokee Supplement/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Combining Diacritical Marks Extended/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Coptic Epact Numbers/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Duployan/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Early Dynastic Cuneiform/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Elbasan/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Geometric Shapes Extended/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Grantha/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Hatran/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Khojki/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Khudawadi/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Latin Extended-E/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Linear A/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Mahajani/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Manichaean/value.dump +5 -0
- data/resources/unicode_data/properties/Block/Mende Kikakui/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Modi/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Mro/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Multani/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Myanmar Extended-B/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Nabataean/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Old Hungarian/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Old North Arabian/value.dump +5 -0
- data/resources/unicode_data/properties/Block/Old Permic/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Ornamental Dingbats/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Pahawh Hmong/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Palmyrene/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Pau Cin Hau/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Psalter Pahlavi/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Shorthand Format Controls/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Siddham/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Sinhala Archaic Numbers/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Supplemental Arrows-C/value.dump +0 -0
- Pictographs/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Sutton SignWriting/value.dump +0 -0
- data/resources/unicode_data/properties/Block/Tirhuta/value.dump +3 -0
- data/resources/unicode_data/properties/Block/Warang Citi/value.dump +3 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Brahmi_Joining_Number/value.dump +3 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Cantillation_Mark/value.dump +10 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Killer/value.dump +4 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Preceding_Repha/value.dump +3 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Prefixed/value.dump +3 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Succeeding_Repha/value.dump +6 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_With_Stacker/value.dump +4 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Gemination_Mark/value.dump +6 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Invisible_Stacker/value.dump +11 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Joiner/value.dump +3 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Non_Joiner/value.dump +3 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Number/value.dump +0 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Number_Joiner/value.dump +3 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Pure_Killer/value.dump +17 -0
- data/resources/unicode_data/properties/Indic_Syllabic_Category/Syllable_Modifier/value.dump +15 -0
- data/resources/unicode_data/properties/Joining_Group/AIN/value.dump +8 -0
- data/resources/unicode_data/properties/Joining_Group/ALAPH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/ALEF/value.dump +8 -0
- data/resources/unicode_data/properties/Joining_Group/BEH/value.dump +8 -0
- data/resources/unicode_data/properties/Joining_Group/BETH/value.dump +4 -0
- data/resources/unicode_data/properties/Joining_Group/BURUSHASKI YEH BARREE/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/DAL/value.dump +8 -0
- data/resources/unicode_data/properties/Joining_Group/DALATH RISH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/E/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/FARSI YEH/value.dump +6 -0
- data/resources/unicode_data/properties/Joining_Group/FE/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/FEH/value.dump +6 -0
- data/resources/unicode_data/properties/Joining_Group/FINAL SEMKATH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/GAF/value.dump +8 -0
- data/resources/unicode_data/properties/Joining_Group/GAMAL/value.dump +4 -0
- data/resources/unicode_data/properties/Joining_Group/HAH/value.dump +10 -0
- data/resources/unicode_data/properties/Joining_Group/HE/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/HEH GOAL/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/HEH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/HETH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/KAF/value.dump +6 -0
- data/resources/unicode_data/properties/Joining_Group/KAPH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/KHAPH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/KNOTTED HEH/value.dump +4 -0
- data/resources/unicode_data/properties/Joining_Group/LAM/value.dump +6 -0
- data/resources/unicode_data/properties/Joining_Group/LAMADH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN ALEPH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN AYIN/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN BETH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN DALETH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN DHAMEDH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN FIVE/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN GIMEL/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN HETH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN HUNDRED/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN KAPH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN LAMEDH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN MEM/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN NUN/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN ONE/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN PE/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN QOPH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN RESH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN SADHE/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN SAMEKH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN TAW/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN TEN/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN TETH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN THAMEDH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN TWENTY/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN WAW/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN YODH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MANICHAEAN ZAYIN/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MEEM/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/MIM/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/NOON/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/NUN/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/NYA/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/No_Joining_Group/value.dump +0 -0
- data/resources/unicode_data/properties/Joining_Group/PE/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/QAF/value.dump +6 -0
- data/resources/unicode_data/properties/Joining_Group/QAPH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/REH/value.dump +10 -0
- data/resources/unicode_data/properties/Joining_Group/REVERSED PE/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/ROHINGYA YEH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/SAD/value.dump +6 -0
- data/resources/unicode_data/properties/Joining_Group/SADHE/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/SEEN/value.dump +9 -0
- data/resources/unicode_data/properties/Joining_Group/SEMKATH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/SHIN/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/STRAIGHT WAW/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/SWASH KAF/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/SYRIAC WAW/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/TAH/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/TAW/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/TEH MARBUTA GOAL/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/TEH MARBUTA/value.dump +5 -0
- data/resources/unicode_data/properties/Joining_Group/TETH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/WAW/value.dump +9 -0
- data/resources/unicode_data/properties/Joining_Group/YEH BARREE/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/YEH WITH TAIL/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/YEH/value.dump +9 -0
- data/resources/unicode_data/properties/Joining_Group/YUDH HE/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/YUDH/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/ZAIN/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Group/ZHAIN/value.dump +3 -0
- data/resources/unicode_data/properties/Joining_Type/Dual_Joining/value.dump +65 -0
- data/resources/unicode_data/properties/Joining_Type/Join_Causing/value.dump +8 -0
- data/resources/unicode_data/properties/Joining_Type/Left_Joining/value.dump +9 -0
- data/resources/unicode_data/properties/Joining_Type/Non_Joining/value.dump +0 -0
- data/resources/unicode_data/properties/Joining_Type/Right_Joining/value.dump +68 -0
- data/resources/unicode_data/properties/Script/Ahom/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Anatolian_Hieroglyphs/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Bassa_Vah/value.dump +4 -0
- data/resources/unicode_data/properties/Script/Caucasian_Albanian/value.dump +4 -0
- data/resources/unicode_data/properties/Script/Duployan/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Elbasan/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Grantha/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Hatran/value.dump +5 -0
- data/resources/unicode_data/properties/Script/Khojki/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Khudawadi/value.dump +4 -0
- data/resources/unicode_data/properties/Script/Linear_A/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Mahajani/value.dump +3 -0
- data/resources/unicode_data/properties/Script/Manichaean/value.dump +8 -0
- data/resources/unicode_data/properties/Script/Mende_Kikakui/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Modi/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Mro/value.dump +5 -0
- data/resources/unicode_data/properties/Script/Multani/value.dump +8 -0
- data/resources/unicode_data/properties/Script/Nabataean/value.dump +4 -0
- data/resources/unicode_data/properties/Script/Old_Hungarian/value.dump +5 -0
- data/resources/unicode_data/properties/Script/Old_North_Arabian/value.dump +5 -0
- data/resources/unicode_data/properties/Script/Old_Permic/value.dump +3 -0
- data/resources/unicode_data/properties/Script/Pahawh_Hmong/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Palmyrene/value.dump +3 -0
- data/resources/unicode_data/properties/Script/Pau_Cin_Hau/value.dump +3 -0
- data/resources/unicode_data/properties/Script/Psalter_Pahlavi/value.dump +5 -0
- data/resources/unicode_data/properties/Script/Siddham/value.dump +4 -0
- data/resources/unicode_data/properties/Script/SignWriting/value.dump +0 -0
- data/resources/unicode_data/properties/Script/Tirhuta/value.dump +4 -0
- data/resources/unicode_data/properties/Script/Warang_Citi/value.dump +4 -0
- data/resources/unicode_data/properties/Script_Extensions/Copt/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Dupl/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Glag/value.dump +4 -0
- data/resources/unicode_data/properties/Script_Extensions/Gran/value.dump +12 -0
- data/resources/unicode_data/properties/Script_Extensions/Kali/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Khoj/value.dump +4 -0
- data/resources/unicode_data/properties/Script_Extensions/Knda/value.dump +6 -0
- data/resources/unicode_data/properties/Script_Extensions/Limb/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Mahj/value.dump +4 -0
- data/resources/unicode_data/properties/Script_Extensions/Mani/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Mlym/value.dump +5 -0
- data/resources/unicode_data/properties/Script_Extensions/Modi/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Mult/value.dump +4 -0
- data/resources/unicode_data/properties/Script_Extensions/Perm/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Phlp/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Shrd/value.dump +8 -0
- data/resources/unicode_data/properties/Script_Extensions/Sind/value.dump +4 -0
- data/resources/unicode_data/properties/Script_Extensions/Sinh/value.dump +3 -0
- data/resources/unicode_data/properties/Script_Extensions/Taml/value.dump +9 -0
- data/resources/unicode_data/properties/Script_Extensions/Telu/value.dump +5 -0
- data/resources/unicode_data/properties/Script_Extensions/Tirh/value.dump +4 -0
- data/resources/unicode_data/property_aliases.yml +9 -3
- data/resources/unicode_data/property_value_aliases.yml +34 -0
- data/spec/collation/collator_spec.rb +53 -32
- data/spec/collation/trie_builder_spec.rb +2 -2
- data/spec/collation/trie_dumps_spec.rb +2 -2
- data/spec/collation/trie_loader_spec.rb +3 -3
- data/spec/collation/trie_with_fallback_spec.rb +1 -1
- data/spec/data_readers/additional_date_format_selector_spec.rb +1 -1
- data/spec/data_readers/timespan_data_reader_spec.rb +4 -4
- data/spec/formatters/list_formatter_spec.rb +1 -1
- data/spec/formatters/numbers/abbreviated/long_decimal_formatter_spec.rb +4 -4
- data/spec/formatters/numbers/abbreviated/short_decimal_formatter_spec.rb +0 -2
- data/spec/formatters/numbers/decimal_formatter_spec.rb +1 -1
- data/spec/formatters/numbers/rbnf/locales/af/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/ar/rbnf_test.yml +248 -14
- data/spec/formatters/numbers/rbnf/locales/be/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/bg/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/bn/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/ca/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/cs/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/cy/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/da/rbnf_test.yml +307 -307
- data/spec/formatters/numbers/rbnf/locales/de-CH/rbnf_test.yml +146 -146
- data/spec/formatters/numbers/rbnf/locales/de/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/el/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/en-150/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/en-AU/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/en-CA/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/en-GB/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/en-IE/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/en-SG/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/en-ZA/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/en/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/es-419/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/es-CO/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/es-MX/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/es-US/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/es/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/eu/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/fa/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/fi/rbnf_test.yml +5067 -387
- data/spec/formatters/numbers/rbnf/locales/fil/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/fr-BE/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/fr-CA/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/fr-CH/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/fr/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/ga/rbnf_test.yml +95 -95
- data/spec/formatters/numbers/rbnf/locales/gl/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/gu/rbnf_test.yml +1634 -1283
- data/spec/formatters/numbers/rbnf/locales/he/rbnf_test.yml +120 -120
- data/spec/formatters/numbers/rbnf/locales/hi/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/hr/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/hu/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/id/rbnf_test.yml +35 -35
- data/spec/formatters/numbers/rbnf/locales/is/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/it-CH/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/it/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/ja/rbnf_test.yml +7 -7
- data/spec/formatters/numbers/rbnf/locales/kn/rbnf_test.yml +1634 -1283
- data/spec/formatters/numbers/rbnf/locales/ko/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/lv/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/mr/rbnf_test.yml +1634 -1283
- data/spec/formatters/numbers/rbnf/locales/ms/rbnf_test.yml +35 -35
- data/spec/formatters/numbers/rbnf/locales/nb/rbnf_test.yml +950 -599
- data/spec/formatters/numbers/rbnf/locales/nl/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/pl/rbnf_test.yml +2152 -46
- data/spec/formatters/numbers/rbnf/locales/pt/rbnf_test.yml +28 -28
- data/spec/formatters/numbers/rbnf/locales/ro/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/ru/rbnf_test.yml +5265 -52
- data/spec/formatters/numbers/rbnf/locales/sk/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/sq/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/sr/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/sv/rbnf_test.yml +42 -42
- data/spec/formatters/numbers/rbnf/locales/ta/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/th/rbnf_test.yml +123 -123
- data/spec/formatters/numbers/rbnf/locales/tr/rbnf_test.yml +134 -134
- data/spec/formatters/numbers/rbnf/locales/uk/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/ur/rbnf_test.yml +488 -488
- data/spec/formatters/numbers/rbnf/locales/vi/rbnf_test.yml +14 -14
- data/spec/formatters/numbers/rbnf/locales/zh-Hant/rbnf_test.yml +7 -7
- data/spec/formatters/numbers/rbnf/locales/zh/rbnf_test.yml +7 -7
- data/spec/localized/localized_date_spec.rb +11 -2
- data/spec/localized/localized_datetime_spec.rb +1 -1
- data/spec/localized/localized_string_spec.rb +9 -1
- data/spec/localized/localized_symbol_spec.rb +4 -4
- data/spec/resources/loader_spec.rb +1 -1
- data/spec/segmentation/break_iterator_spec.rb +9 -9
- data/spec/shared/hunspell/base.hyph +4543 -0
- data/spec/shared/hunspell/base.pat +5536 -0
- data/spec/shared/hunspell/base.word +4543 -0
- data/spec/shared/hyphenator_spec.rb +103 -0
- data/spec/shared/likely_subtags_spec.rb +5 -0
- data/spec/shared/locale_spec.rb +34 -2
- data/spec/shared/postal_code_generator_spec.rb +8 -9
- data/spec/shared/postal_codes_spec.rb +9 -8
- data/spec/shared/unit_spec.rb +1 -1
- data/spec/transforms/rule_set_spec.rb +35 -0
- data/spec/transforms/test_data.yml +820 -0
- data/spec/transforms/transform_id_spec.rb +146 -0
- data/spec/transforms/transformer_spec.rb +113 -0
- data/spec/transforms/transliterator_spec.rb +35 -0
- data/spec/utils/script_detector_spec.rb +12 -3
- data/spec/{collation → utils}/trie_spec.rb +2 -2
- metadata +524 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77d562387667ce48ca9f7fd86dfbfe300c387342
|
4
|
+
data.tar.gz: 3269c97b2f7b47a84264c1c4766cd6fcf2205a97
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ae5ee0153fd3c1c12aa558f7315d815af5f592a4924674adc5c8786fc87d402c5e7db65f62d48a1fbf7df596dc23f0997126eaee622c1af42f9e1e214763097
|
7
|
+
data.tar.gz: f003b9f2514a86b1f1aa1af1ab1ffaf04c233f200b38e1d63a9bc52a80fc4f802ba2ea741602562d577a04f05086ec0234c8ed93f5b01cb570560a13452bfd2f
|
data/Gemfile
CHANGED
data/History.txt
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
== 4.0.0
|
2
|
+
* Upgrade to Unicode v8.0.0, CLDR v29, and ICU 57.1.
|
3
|
+
* Add support for fields.
|
4
|
+
* Update plural rules with several bug fixes.
|
5
|
+
* Add support for hyphenation (uses LibreOffice/Hunspell data).
|
6
|
+
* Add support for transliteration.
|
7
|
+
|
1
8
|
== 3.6.0
|
2
9
|
* Override South Korean postal code format, which changed recently.
|
3
10
|
|
data/README.md
CHANGED
@@ -177,7 +177,7 @@ For English (and other languages), you can also specify an ordinal spellout:
|
|
177
177
|
```ruby
|
178
178
|
DateTime.now.localize(:es).to_full_s # "viernes, 14 de febrero de 2014, 12:20:05 (UTC +00:00)"
|
179
179
|
DateTime.now.localize(:es).to_long_s # "14 de febrero de 2014, 12:20:05 UTC"
|
180
|
-
DateTime.now.localize(:es).to_medium_s # "14
|
180
|
+
DateTime.now.localize(:es).to_medium_s # "14 feb. 2014 12:20:05"
|
181
181
|
DateTime.now.localize(:es).to_short_s # "14/2/14 12:20"
|
182
182
|
|
183
183
|
Time.now.localize(:es).to_full_s # "12:20:05 (UTC +00:00)"
|
@@ -187,7 +187,7 @@ Time.now.localize(:es).to_short_s # "12:20"
|
|
187
187
|
|
188
188
|
DateTime.now.localize(:es).to_date.to_full_s # "viernes, 14 de febrero de 2014"
|
189
189
|
DateTime.now.localize(:es).to_date.to_long_s # "14 de febrero de 2014"
|
190
|
-
DateTime.now.localize(:es).to_date.to_medium_s # "14
|
190
|
+
DateTime.now.localize(:es).to_date.to_medium_s # "14 feb. 2014"
|
191
191
|
DateTime.now.localize(:es).to_date.to_short_s # "14/2/14"
|
192
192
|
```
|
193
193
|
|
@@ -237,22 +237,28 @@ It's important to know that, even though any given format may not be available a
|
|
237
237
|
| H | 12 |
|
238
238
|
| Hm | 12:20 |
|
239
239
|
| Hms | 12:20:05 |
|
240
|
+
| Hmsv | 12:20:05 v |
|
241
|
+
| Hmv | 12:20 v |
|
240
242
|
| M | 2 |
|
241
243
|
| MEd | Fri, 2/14 |
|
242
244
|
| MMM | Feb |
|
243
245
|
| MMMEd | Fri, Feb 14 |
|
246
|
+
| MMMMd | February 14 |
|
244
247
|
| MMMd | Feb 14 |
|
245
248
|
| Md | 2/14 |
|
246
249
|
| d | 14 |
|
247
250
|
| h | 12 PM |
|
248
251
|
| hm | 12:20 PM |
|
249
252
|
| hms | 12:20:05 PM |
|
253
|
+
| hmsv | 12:20:05 PM v |
|
254
|
+
| hmv | 12:20 PM v |
|
250
255
|
| ms | 20:05 |
|
251
256
|
| y | 2014 |
|
252
257
|
| yM | 2/2014 |
|
253
258
|
| yMEd | Fri, 2/14/2014 |
|
254
259
|
| yMMM | Feb 2014 |
|
255
260
|
| yMMMEd | Fri, Feb 14, 2014 |
|
261
|
+
| yMMMM | February 2014 |
|
256
262
|
| yMMMd | Feb 14, 2014 |
|
257
263
|
| yMd | 2/14/2014 |
|
258
264
|
| yQQQ | Q1 2014 |
|
@@ -320,7 +326,7 @@ TwitterCldr::Localized::LocalizedTimespan.new(52).to_s(:approximate => true) #
|
|
320
326
|
CLDR contains a trove of calendar data, much of which can be accessed. One example is names of months, days, years.
|
321
327
|
|
322
328
|
```ruby
|
323
|
-
TwitterCldr::Shared::Calendar.new(:sv).months.take(3) # ["
|
329
|
+
TwitterCldr::Shared::Calendar.new(:sv).months.take(3) # ["januari", "februari", "mars"]
|
324
330
|
```
|
325
331
|
|
326
332
|
|
@@ -490,14 +496,14 @@ TwitterCldr::Shared::Territories.all
|
|
490
496
|
TwitterCldr::Shared::Territories.all_for(:pt) # { ... :tl => "República Democrática de Timor-Leste", :tm => "Turcomenistão" ... }
|
491
497
|
|
492
498
|
# get a territory by its code for the default locale
|
493
|
-
TwitterCldr::Shared::Territories.from_territory_code(:'gb') # "
|
499
|
+
TwitterCldr::Shared::Territories.from_territory_code(:'gb') # "UK"
|
494
500
|
|
495
501
|
# get a territory from its code for a specific locale
|
496
502
|
TwitterCldr::Shared::Territories.from_territory_code_for_locale(:gb, :pt) # "Reino Unido"
|
497
503
|
|
498
504
|
# translate a territory from one locale to another
|
499
505
|
# signature: translate_territory(territory_name, source_locale, destination_locale)
|
500
|
-
TwitterCldr::Shared::Territories.translate_territory("Reino Unido", :pt, :en) # "
|
506
|
+
TwitterCldr::Shared::Territories.translate_territory("Reino Unido", :pt, :en) # "UK"
|
501
507
|
TwitterCldr::Shared::Territories.translate_territory("U.K.", :en, :pt) # "Reino Unido"
|
502
508
|
```
|
503
509
|
|
@@ -548,7 +554,7 @@ postal_code.regexp # /(\d{5})(?:[ \-](\d{4}))?/
|
|
548
554
|
Get a sample of valid postal codes with the `#sample` method:
|
549
555
|
|
550
556
|
```ruby
|
551
|
-
postal_code.sample(5) # ["
|
557
|
+
postal_code.sample(5) # ["49037", "77863", "11631-2555", "09849-9066", "60383"]
|
552
558
|
```
|
553
559
|
|
554
560
|
### Phone Codes
|
@@ -753,6 +759,37 @@ Convert code points to characters:
|
|
753
759
|
TwitterCldr::Utils::CodePoints.to_string([0xBF]) # "¿"
|
754
760
|
```
|
755
761
|
|
762
|
+
#### Unicode Properties
|
763
|
+
|
764
|
+
Each character in the Unicode standard comes with a set of properties. Property data includes what type of script the character is written in, which version of the standard it was first introduced in, whether it represent a digit or an alphabetical symbol, its casing, and much more. Certain properties are boolean true/false values while others contain a set of property values. For example, the Hiragana letter "く" ("ku") has an `"Alphabetic"` property (i.e. Alphabetic = true) but does not have an `"Uppercase"` property (i.e. Uppercase = false). In addition, "く" has a property of `"Script"` with a property value for `"Script"` of `["Hiragana"]` (Note that property values are always arrays, since a single property can contain more than one property value).
|
765
|
+
|
766
|
+
TwitterCLDR supports all the various Unicode properties and can look them up by character or retrieve a set of matching characters for the given property and property value. Let's use "く" again as an example. "く"'s Unicode code point is 12367 (i.e. `'く'.unpack("U*").first`):
|
767
|
+
|
768
|
+
|
769
|
+
|
770
|
+
```ruby
|
771
|
+
properties = TwitterCldr::Shared::CodePoint.get(12367).properties
|
772
|
+
|
773
|
+
properties.alphabetic # true
|
774
|
+
properties.uppercase # false
|
775
|
+
properties.script.to_a # ["Hiragana"]
|
776
|
+
```
|
777
|
+
|
778
|
+
Use `TwitterCldr::Shared::CodePoint.properties` to look up additional property information:
|
779
|
+
|
780
|
+
|
781
|
+
|
782
|
+
|
783
|
+
|
784
|
+
|
785
|
+
```ruby
|
786
|
+
properties = TwitterCldr::Shared::CodePoint.properties.code_points_for_property('Script', 'Hiragana')
|
787
|
+
|
788
|
+
properties.to_a # [12353..12438, 12445..12447 ... ]
|
789
|
+
```
|
790
|
+
|
791
|
+
Behind the scenes, these methods are using instances of `TwitterCldr::Shared::PropertiesDatabase`. Most of the time you probably won't need to use your own instance, but it is worth mentioning that `PropertiesDatabase` supplies methods for retrieving a list of available property names and normalizing property names and values. Finally, `TwitterCldr::Shared::CodePoint.properties` is an instance of `PropertiesDatabase` that you can use in place of creating a separate instance.
|
792
|
+
|
756
793
|
#### Normalization
|
757
794
|
|
758
795
|
Normalize/decompose a Unicode string (NFD, NFKD, NFC, and NFKC implementations available). Note that the normalized string will almost always look the same as the original string because most character display systems automatically combine decomposed characters.
|
@@ -806,6 +843,42 @@ Turkic languages make use of the regular and dotted uppercase i characters "I" a
|
|
806
843
|
"Istanbul".localize(:tr).casefold.to_s # ıstanbul
|
807
844
|
```
|
808
845
|
|
846
|
+
### Hyphenation
|
847
|
+
|
848
|
+
TwitterCLDR uses data from the LibreOffice project to offer an implementation of [Franklin Liang's hyphenation algorithm](http://www.tug.org/docs/liang/). Try the `#hyphenate` method on instances of `LocalizedString`:
|
849
|
+
|
850
|
+
```ruby
|
851
|
+
'foolhardy undulate'.localize.hyphenate('-').to_s # fool-hardy un-du-late
|
852
|
+
```
|
853
|
+
|
854
|
+
Since the data doesn't come packaged with CLDR, only a certain subset of locales are supported. To get a list of supported locales, use the `supported_locales` method:
|
855
|
+
|
856
|
+
|
857
|
+
|
858
|
+
|
859
|
+
|
860
|
+
```ruby
|
861
|
+
TwitterCldr::Shared::Hyphenator.supported_locales # ["af-ZA", "de-CH", "en-US", ...]
|
862
|
+
```
|
863
|
+
|
864
|
+
You can also ask the `Hyphenator` class if a locale is supported:
|
865
|
+
|
866
|
+
```ruby
|
867
|
+
TwitterCldr::Shared::Hyphenator.supported_locale?(:en) # true
|
868
|
+
TwitterCldr::Shared::Hyphenator.supported_locale?(:ja) # false
|
869
|
+
```
|
870
|
+
|
871
|
+
Create a new hyphenator instance via the `.get` method. If the locale is not supported, `.get` will raise an error.
|
872
|
+
|
873
|
+
```ruby
|
874
|
+
hyphenator = TwitterCldr::Shared::Hyphenator.get(:en)
|
875
|
+
hyphenator.hyphenate('absolutely', '-') # ab-so-lutely
|
876
|
+
```
|
877
|
+
|
878
|
+
The `.get` method will identify the best rule set to use by "maximizing" the given locale, a process that tries different combinations of the locale's language, region, and script based on CLDR's likely subtag data. In practice this means passing in `:en` works even though the hyphenator specifically supports en-US and en-GB.
|
879
|
+
|
880
|
+
The second argument to `#hyphenate` is the delimiter to use, i.e. the hyphen text to insert at syllable boundaries. By default, the delimiter is the Unicode soft hyphen character (\u00AD). Depending on the system that's used to display the hyphenated text (word processor, browser, etc), the soft hyphen may render differently. Soft hyphens are supposed to be rendered only when the word needs to be displayed on multiple lines, and should be invisible otherwise.
|
881
|
+
|
809
882
|
### Sorting (Collation)
|
810
883
|
|
811
884
|
TwitterCLDR contains an implementation of the [Unicode Collation Algorithm (UCA)](http://unicode.org/reports/tr10/) that provides language-sensitive text sorting capabilities. Conveniently, all you have to do is use the `sort` method in combination with the familiar `localize` method. Notice the difference between the default Ruby sort, which simply compares bytes, and the proper language-aware sort from TwitterCLDR in this German example:
|
@@ -840,6 +913,60 @@ collator.get_sort_key("Älg") # [39, 61, 51, 1, 134, 157, 6, 1, 143,
|
|
840
913
|
|
841
914
|
**Note**: The TwitterCLDR collator does not currently pass all the collation tests provided by Unicode, but for some strange reasons. See the [summary](https://gist.github.com/f4ee3bd280a2257c5641) of these discrepancies if you're curious.
|
842
915
|
|
916
|
+
### Transliteration
|
917
|
+
|
918
|
+
Transliteration is the process of converting the text in one language or script into another with the goal of preserving the source language's pronunciation as much as possible. It can be useful in making text pronounceable in the target language. For example, most native English speakers would not be able to read or pronounce Japanese characters like these: "くろねこさま". Transliterating these characters into Latin script yields "kuronekosama", which should be pronounceable by most English speakers (in fact, probably speakers of many languages that use Latin characters). Remember, transliteration isn't translation; the actual meaning of the words is not taken into consideration, only the sound patterns.
|
919
|
+
|
920
|
+
TwitterCLDR supports transliteration via the `#transliterate_into` method on `LocalizedString`. For example:
|
921
|
+
|
922
|
+
```ruby
|
923
|
+
"くろねこさま".localize.transliterate_into(:en) # "kuronekosama"
|
924
|
+
```
|
925
|
+
|
926
|
+
This simple method hides quite a bit of complexity. First, TwitterCLDR identifies the scripts present in the source text. It then attempts to find any available transliterators to convert between the source language and the target language. If more than one transliterator is found, all of them will be applied to the source text.
|
927
|
+
|
928
|
+
You can provide hints to the transliterator by providing additional locale information. For example, you can provide a source and target script:
|
929
|
+
|
930
|
+
```ruby
|
931
|
+
"くろねこさま".localize(:ja_Hiragana).transliterate_into(:en_Latin) # "kuronekosama"
|
932
|
+
```
|
933
|
+
You may supply only the target script, only the source script, neither, or both. TwitterCLDR will try to find the best set of transliterators to get the job done.
|
934
|
+
|
935
|
+
Behind the scenes, `LocalizedString#transliterate_into` creates instances of `TwitterCldr::Transforms::Transformer`. You can do this too if you're feeling adventurous. Here's our Japanese example again that uses `Transformer`:
|
936
|
+
|
937
|
+
```ruby
|
938
|
+
|
939
|
+
rule_set = TwitterCldr::Transforms::Transformer.get('Hiragana-Latin')
|
940
|
+
rule_set.transform('くろねこさま') # "kuronekosama"
|
941
|
+
```
|
942
|
+
Notice that the `.get` method was called with 'Hiragana-Latin' instead of 'ja-en' or something similar. This is because `.get` must be passed an exact transform id. To get a list of all supported transform ids, use the `Transformer#each_transform` method:
|
943
|
+
|
944
|
+
|
945
|
+
|
946
|
+
|
947
|
+
|
948
|
+
```ruby
|
949
|
+
TwitterCldr::Transforms::Transformer.each_transform.to_a # ['Hiragana-Latin', 'Gujarati-Bengali', ...]
|
950
|
+
```
|
951
|
+
|
952
|
+
You can also search for transform ids using the `TransformId` class, which will attempt to find the closest matching transformer for the given source and target locales. Note that `.find` will return `nil` if no transformer can be found. You can pass instances of `TransformId` instead of a string when calling `Transformer.get`:
|
953
|
+
|
954
|
+
|
955
|
+
|
956
|
+
|
957
|
+
|
958
|
+
|
959
|
+
```ruby
|
960
|
+
TwitterCldr::Transforms::TransformId.find('ja', 'en') # nil
|
961
|
+
|
962
|
+
id = TwitterCldr::Transforms::TransformId.find('ja_Hiragana', 'en')
|
963
|
+
id.source # Hiragana
|
964
|
+
id.target # Latin
|
965
|
+
|
966
|
+
rule_set = TwitterCldr::Transforms::Transformer.get(id)
|
967
|
+
rule_set.transform('くろねこさま') # "kuronekosama"
|
968
|
+
```
|
969
|
+
|
843
970
|
### Handling Bidirectional Text
|
844
971
|
|
845
972
|
When it comes to displaying text written in both right-to-left (RTL) and left-to-right (LTR) languages, most display systems run into problems. The trouble is that Arabic or Hebrew text and English text (for example) often get scrambled visually and are therefore difficult to read. It's not usually the basic ASCII characters like A-Z that get scrambled - it's most often punctuation marks and the like that are confusingly mixed up (they are considered "weak" types by Unicode).
|
data/Rakefile
CHANGED
@@ -17,7 +17,7 @@ require 'pry-nav'
|
|
17
17
|
|
18
18
|
Bundler::GemHelper.install_tasks
|
19
19
|
|
20
|
-
task :
|
20
|
+
task default: :spec
|
21
21
|
|
22
22
|
desc 'Run specs'
|
23
23
|
RSpec::Core::RakeTask.new do |t|
|
@@ -26,7 +26,7 @@ end
|
|
26
26
|
|
27
27
|
namespace :spec do
|
28
28
|
desc 'Run full specs suit'
|
29
|
-
task :
|
29
|
+
task full: [:full_spec_env, :spec]
|
30
30
|
|
31
31
|
task :full_spec_env do
|
32
32
|
ENV['FULL_SPEC'] = 'true'
|
@@ -35,7 +35,7 @@ end
|
|
35
35
|
|
36
36
|
namespace :spec do
|
37
37
|
desc 'Run specs with SimpleCov'
|
38
|
-
task :
|
38
|
+
task cov: ['spec:simplecov_env', :spec] do
|
39
39
|
require 'launchy'
|
40
40
|
Launchy.open 'coverage/index.html'
|
41
41
|
end
|
@@ -58,6 +58,7 @@ task :update do
|
|
58
58
|
"update:tailoring_data", # per locale
|
59
59
|
"update:collation_tries", # per locale, must come after update:tailoring_data
|
60
60
|
"update:rbnf_tests", # per locale
|
61
|
+
"update:transform_tests",
|
61
62
|
"update:bidi_tests"
|
62
63
|
]
|
63
64
|
else
|
@@ -74,7 +75,8 @@ task :update do
|
|
74
75
|
"update:language_codes",
|
75
76
|
"update:segment_exceptions", # per locale
|
76
77
|
"update:segment_tests",
|
77
|
-
"update:readme"
|
78
|
+
"update:readme",
|
79
|
+
"update:hyphenation"
|
78
80
|
]
|
79
81
|
end
|
80
82
|
|
@@ -196,6 +198,14 @@ namespace :update do
|
|
196
198
|
).import(TwitterCldr.supported_locales)
|
197
199
|
end
|
198
200
|
|
201
|
+
desc 'Import (generate) transformation tests (should be executed using JRuby 1.7 in 1.9 mode)'
|
202
|
+
task :transform_tests, :icu4j_jar_path do |_, args|
|
203
|
+
TwitterCldr::Resources::TransformTestImporter.new(
|
204
|
+
'./spec/transforms/test_data.yml',
|
205
|
+
args[:icu4j_jar_path] || ICU_JAR
|
206
|
+
).import
|
207
|
+
end
|
208
|
+
|
199
209
|
desc 'Import segment exceptions'
|
200
210
|
task :segment_exceptions do
|
201
211
|
TwitterCldr::Resources::Uli::SegmentExceptionsImporter.new(
|
@@ -212,6 +222,15 @@ namespace :update do
|
|
212
222
|
).import
|
213
223
|
end
|
214
224
|
|
225
|
+
desc 'Import hyphenation dictionaries'
|
226
|
+
task :hyphenation_dictionaries do
|
227
|
+
TwitterCldr::Resources::HyphenationImporter.new(
|
228
|
+
'./vendor/hyphenation/dictionaries',
|
229
|
+
'./resources/shared/hyphenation',
|
230
|
+
'0d3b5e5314e68c3cf5d573b2e7bdc11143dcb821'
|
231
|
+
).import
|
232
|
+
end
|
233
|
+
|
215
234
|
desc 'Update README'
|
216
235
|
task :readme do |_, args|
|
217
236
|
renderer = TwitterCldr::Resources::ReadmeRenderer.new(
|
data/lib/twitter_cldr.rb
CHANGED
@@ -27,6 +27,7 @@ module TwitterCldr
|
|
27
27
|
autoload :Shared, 'twitter_cldr/shared'
|
28
28
|
autoload :Tokenizers, 'twitter_cldr/tokenizers'
|
29
29
|
autoload :Utils, 'twitter_cldr/utils'
|
30
|
+
autoload :Transforms, 'twitter_cldr/transforms'
|
30
31
|
autoload :Versions, 'twitter_cldr/versions'
|
31
32
|
|
32
33
|
extend SingleForwardable
|
@@ -50,6 +51,8 @@ module TwitterCldr
|
|
50
51
|
|
51
52
|
def_delegator :resources, :get_resource
|
52
53
|
def_delegator :resources, :get_locale_resource
|
54
|
+
def_delegator :resources, :resource_exists?
|
55
|
+
def_delegator :resources, :absolute_resource_path
|
53
56
|
|
54
57
|
class << self
|
55
58
|
|
@@ -8,9 +8,8 @@ module TwitterCldr
|
|
8
8
|
autoload :Collator, 'twitter_cldr/collation/collator'
|
9
9
|
autoload :ImplicitCollationElements, 'twitter_cldr/collation/implicit_collation_elements'
|
10
10
|
autoload :SortKeyBuilder, 'twitter_cldr/collation/sort_key_builder'
|
11
|
-
autoload :Trie, 'twitter_cldr/collation/trie'
|
12
11
|
autoload :TrieBuilder, 'twitter_cldr/collation/trie_builder'
|
13
12
|
autoload :TrieLoader, 'twitter_cldr/collation/trie_loader'
|
14
13
|
autoload :TrieWithFallback, 'twitter_cldr/collation/trie_with_fallback'
|
15
14
|
end
|
16
|
-
end
|
15
|
+
end
|
@@ -6,6 +6,8 @@
|
|
6
6
|
module TwitterCldr
|
7
7
|
module Collation
|
8
8
|
|
9
|
+
class UnexpectedCodePointError < StandardError; end
|
10
|
+
|
9
11
|
# Collator uses fractional collation elements table form CLDR to generate sort keys for Unicode strings as well as
|
10
12
|
# compare and sort such strings by generated sort keys.
|
11
13
|
#
|
@@ -108,7 +110,13 @@ module TwitterCldr
|
|
108
110
|
while non_starter_pos < code_points.size && !suffixes.empty?
|
109
111
|
# get next code point (possibly non-starter)
|
110
112
|
non_starter_code_point = code_points[non_starter_pos]
|
111
|
-
|
113
|
+
non_starter_metadata = TwitterCldr::Shared::CodePoint.get(non_starter_code_point)
|
114
|
+
|
115
|
+
unless non_starter_metadata
|
116
|
+
raise UnexpectedCodePointError, "'#{non_starter_code_point}' does not appear to be a valid Unicode code point"
|
117
|
+
end
|
118
|
+
|
119
|
+
combining_class = non_starter_metadata.combining_class.to_i
|
112
120
|
|
113
121
|
# code point is a starter or combining class has been already used (non-starter is 'blocked' from the prefix)
|
114
122
|
break if combining_class == 0 || used_combining_classes[combining_class]
|
@@ -30,7 +30,7 @@ module TwitterCldr
|
|
30
30
|
|
31
31
|
private
|
32
32
|
|
33
|
-
def parse_collation_elements_table(table, trie = TwitterCldr::
|
33
|
+
def parse_collation_elements_table(table, trie = TwitterCldr::Utils::Trie.new)
|
34
34
|
table.each_line do |line|
|
35
35
|
trie.set(parse_code_points($1), parse_collation_element($2)) if COLLATION_ELEMENT_REGEXP =~ line
|
36
36
|
end
|
@@ -80,4 +80,4 @@ module TwitterCldr
|
|
80
80
|
end
|
81
81
|
|
82
82
|
end
|
83
|
-
end
|
83
|
+
end
|
@@ -28,7 +28,7 @@ module TwitterCldr
|
|
28
28
|
# by adding their one element prefixes to the trie itself. This feature is useful for some applications, e.g., for
|
29
29
|
# suppressing contractions in a tailored fractional collation elements trie.
|
30
30
|
#
|
31
|
-
class TrieWithFallback < TwitterCldr::
|
31
|
+
class TrieWithFallback < TwitterCldr::Utils::Trie
|
32
32
|
|
33
33
|
attr_accessor :fallback
|
34
34
|
|
@@ -54,4 +54,4 @@ module TwitterCldr
|
|
54
54
|
end
|
55
55
|
|
56
56
|
end
|
57
|
-
end
|
57
|
+
end
|
@@ -6,7 +6,7 @@
|
|
6
6
|
module TwitterCldr
|
7
7
|
module Localized
|
8
8
|
autoload :LocalizedArray, 'twitter_cldr/localized/localized_array'
|
9
|
-
autoload :LocalizedHash,
|
9
|
+
autoload :LocalizedHash, 'twitter_cldr/localized/localized_hash'
|
10
10
|
autoload :LocalizedDate, 'twitter_cldr/localized/localized_date'
|
11
11
|
autoload :LocalizedDateTime, 'twitter_cldr/localized/localized_datetime'
|
12
12
|
autoload :LocalizedNumber, 'twitter_cldr/localized/localized_number'
|
@@ -16,4 +16,4 @@ module TwitterCldr
|
|
16
16
|
autoload :LocalizedTime, 'twitter_cldr/localized/localized_time'
|
17
17
|
autoload :LocalizedTimespan, 'twitter_cldr/localized/localized_timespan'
|
18
18
|
end
|
19
|
-
end
|
19
|
+
end
|
@@ -16,20 +16,8 @@ module TwitterCldr
|
|
16
16
|
case @base_obj
|
17
17
|
when Time
|
18
18
|
LocalizedTime.new(@base_obj, @locale, chain_params)
|
19
|
-
when DateTime
|
20
|
-
|
21
|
-
|
22
|
-
time = Time.gm(
|
23
|
-
utc_dt.year,
|
24
|
-
utc_dt.month,
|
25
|
-
utc_dt.day,
|
26
|
-
utc_dt.hour,
|
27
|
-
utc_dt.min,
|
28
|
-
utc_dt.sec,
|
29
|
-
utc_dt.sec_fraction * 1_000_000
|
30
|
-
)
|
31
|
-
|
32
|
-
LocalizedTime.new(time, @locale, chain_params)
|
19
|
+
when Date, DateTime
|
20
|
+
LocalizedTime.new(@base_obj.to_time, @locale, chain_params)
|
33
21
|
else
|
34
22
|
nil
|
35
23
|
end
|
@@ -57,4 +45,4 @@ module TwitterCldr
|
|
57
45
|
|
58
46
|
end
|
59
47
|
end
|
60
|
-
end
|
48
|
+
end
|