twitter_cldr 4.0.0 → 4.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (308) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -2
  3. data/README.md +18 -2
  4. data/Rakefile +39 -122
  5. data/lib/twitter_cldr.rb +3 -0
  6. data/lib/twitter_cldr/formatters/numbers/rbnf.rb +5 -1
  7. data/lib/twitter_cldr/resources.rb +86 -5
  8. data/lib/twitter_cldr/resources/bidi_test_importer.rb +50 -44
  9. data/lib/twitter_cldr/resources/casefolder_class_generator.rb +22 -13
  10. data/lib/twitter_cldr/resources/collation_tries_importer.rb +44 -0
  11. data/lib/twitter_cldr/resources/hyphenation_importer.rb +16 -42
  12. data/lib/twitter_cldr/resources/import_resolver.rb +71 -0
  13. data/lib/twitter_cldr/resources/importer.rb +107 -0
  14. data/lib/twitter_cldr/resources/language_codes_importer.rb +35 -38
  15. data/lib/twitter_cldr/resources/loader.rb +3 -3
  16. data/lib/twitter_cldr/resources/locales_resources_importer.rb +48 -35
  17. data/lib/twitter_cldr/resources/phone_codes_importer.rb +24 -23
  18. data/lib/twitter_cldr/resources/postal_codes_importer.rb +10 -11
  19. data/lib/twitter_cldr/resources/properties.rb +0 -4
  20. data/lib/twitter_cldr/resources/properties/age_property_importer.rb +13 -9
  21. data/lib/twitter_cldr/resources/properties/arabic_shaping_property_importer.rb +9 -11
  22. data/lib/twitter_cldr/resources/properties/bidi_brackets_property_importer.rb +11 -9
  23. data/lib/twitter_cldr/resources/properties/blocks_property_importer.rb +13 -9
  24. data/lib/twitter_cldr/resources/properties/derived_core_properties_importer.rb +9 -11
  25. data/lib/twitter_cldr/resources/properties/east_asian_width_property_importer.rb +13 -9
  26. data/lib/twitter_cldr/resources/properties/grapheme_break_property_importer.rb +13 -9
  27. data/lib/twitter_cldr/resources/properties/hangul_syllable_type_property_importer.rb +13 -9
  28. data/lib/twitter_cldr/resources/properties/indic_positional_category_property_importer.rb +13 -9
  29. data/lib/twitter_cldr/resources/properties/indic_syllabic_category_property_importer.rb +13 -9
  30. data/lib/twitter_cldr/resources/properties/jamo_property_importer.rb +13 -9
  31. data/lib/twitter_cldr/resources/properties/line_break_property_importer.rb +13 -9
  32. data/lib/twitter_cldr/resources/properties/prop_list_importer.rb +9 -11
  33. data/lib/twitter_cldr/resources/properties/property_importer.rb +13 -22
  34. data/lib/twitter_cldr/resources/properties/script_extensions_property_importer.rb +12 -10
  35. data/lib/twitter_cldr/resources/properties/script_property_importer.rb +13 -9
  36. data/lib/twitter_cldr/resources/properties/sentence_break_property_importer.rb +13 -9
  37. data/lib/twitter_cldr/resources/properties/unicode_data_properties_importer.rb +11 -9
  38. data/lib/twitter_cldr/resources/properties/word_break_property_importer.rb +13 -9
  39. data/lib/twitter_cldr/resources/rbnf_test_importer.rb +41 -38
  40. data/lib/twitter_cldr/resources/readme_renderer.rb +1 -2
  41. data/lib/twitter_cldr/resources/requirements.rb +18 -0
  42. data/lib/twitter_cldr/resources/requirements/cldr_requirement.rb +66 -0
  43. data/lib/twitter_cldr/resources/requirements/dependency_requirement.rb +23 -0
  44. data/lib/twitter_cldr/resources/requirements/git_requirement.rb +66 -0
  45. data/lib/twitter_cldr/resources/requirements/icu_requirement.rb +111 -0
  46. data/lib/twitter_cldr/resources/requirements/unicode_requirement.rb +51 -0
  47. data/lib/twitter_cldr/resources/segment_tests_importer.rb +15 -30
  48. data/lib/twitter_cldr/resources/tailoring_importer.rb +33 -26
  49. data/lib/twitter_cldr/resources/transform_test_importer.rb +15 -17
  50. data/lib/twitter_cldr/resources/uli/segment_exceptions_importer.rb +29 -17
  51. data/lib/twitter_cldr/resources/unicode_data_importer.rb +38 -31
  52. data/lib/twitter_cldr/resources/unicode_file_parser.rb +37 -0
  53. data/lib/twitter_cldr/resources/unicode_property_aliases_importer.rb +23 -27
  54. data/lib/twitter_cldr/shared/casefolder.rb +139 -115
  55. data/lib/twitter_cldr/version.rb +1 -1
  56. data/lib/twitter_cldr/versions.rb +0 -4
  57. data/resources/collation/tailoring/bo.yml +4 -0
  58. data/resources/collation/tries/bo.dump +0 -0
  59. data/resources/locales/bo/calendars.yml +247 -0
  60. data/resources/locales/bo/currencies.yml +208 -0
  61. data/resources/locales/bo/fields.yml +31 -0
  62. data/resources/locales/bo/languages.yml +24 -0
  63. data/resources/locales/bo/layout.yml +5 -0
  64. data/resources/locales/bo/lists.yml +12 -0
  65. data/resources/locales/bo/numbers.yml +111 -0
  66. data/resources/locales/bo/plural_rules.yml +6 -0
  67. data/resources/locales/bo/plurals.yml +12 -0
  68. data/resources/locales/bo/territories.yml +14 -0
  69. data/resources/locales/bo/units.yml +283 -0
  70. data/resources/shared/transforms/Arab-Latn.yml +109 -0
  71. data/resources/shared/transforms/Beng-Deva.yml +13 -0
  72. data/resources/shared/transforms/Beng-Gujr.yml +13 -0
  73. data/resources/shared/transforms/Beng-Guru.yml +13 -0
  74. data/resources/shared/transforms/Beng-Knda.yml +13 -0
  75. data/resources/shared/transforms/Beng-Latn.yml +13 -0
  76. data/resources/shared/transforms/Beng-Mlym.yml +13 -0
  77. data/resources/shared/transforms/Beng-Orya.yml +13 -0
  78. data/resources/shared/transforms/Beng-Taml.yml +13 -0
  79. data/resources/shared/transforms/Beng-Telu.yml +13 -0
  80. data/resources/shared/transforms/Cyrl-Latn.yml +128 -0
  81. data/resources/shared/transforms/Deva-Beng.yml +13 -0
  82. data/resources/shared/transforms/Deva-Gujr.yml +13 -0
  83. data/resources/shared/transforms/Deva-Guru.yml +13 -0
  84. data/resources/shared/transforms/Deva-Knda.yml +13 -0
  85. data/resources/shared/transforms/Deva-Latn.yml +13 -0
  86. data/resources/shared/transforms/Deva-Mlym.yml +13 -0
  87. data/resources/shared/transforms/Deva-Orya.yml +13 -0
  88. data/resources/shared/transforms/Deva-Taml.yml +13 -0
  89. data/resources/shared/transforms/Deva-Telu.yml +13 -0
  90. data/resources/shared/transforms/Geor-Latn.yml +43 -0
  91. data/resources/shared/transforms/Grek-Latn-UNGEGN.yml +160 -0
  92. data/resources/shared/transforms/Grek-Latn.yml +206 -0
  93. data/resources/shared/transforms/Gujr-Beng.yml +13 -0
  94. data/resources/shared/transforms/Gujr-Deva.yml +13 -0
  95. data/resources/shared/transforms/Gujr-Guru.yml +13 -0
  96. data/resources/shared/transforms/Gujr-Knda.yml +13 -0
  97. data/resources/shared/transforms/Gujr-Latn.yml +13 -0
  98. data/resources/shared/transforms/Gujr-Mlym.yml +13 -0
  99. data/resources/shared/transforms/Gujr-Orya.yml +13 -0
  100. data/resources/shared/transforms/Gujr-Taml.yml +13 -0
  101. data/resources/shared/transforms/Gujr-Telu.yml +13 -0
  102. data/resources/shared/transforms/Guru-Beng.yml +13 -0
  103. data/resources/shared/transforms/Guru-Deva.yml +13 -0
  104. data/resources/shared/transforms/Guru-Gujr.yml +13 -0
  105. data/resources/shared/transforms/Guru-Knda.yml +13 -0
  106. data/resources/shared/transforms/Guru-Latn.yml +13 -0
  107. data/resources/shared/transforms/Guru-Mlym.yml +13 -0
  108. data/resources/shared/transforms/Guru-Orya.yml +13 -0
  109. data/resources/shared/transforms/Guru-Taml.yml +13 -0
  110. data/resources/shared/transforms/Guru-Telu.yml +13 -0
  111. data/resources/shared/transforms/Han-Spacedhan.yml +1 -1
  112. data/resources/shared/transforms/Hang-Latn.yml +12 -0
  113. data/resources/shared/transforms/Hani-Latn.yml +1605 -0
  114. data/resources/shared/transforms/Hans-Hant.yml +3982 -0
  115. data/resources/shared/transforms/Hebr-Latn.yml +72 -0
  116. data/resources/shared/transforms/Hira-Kana.yml +114 -0
  117. data/resources/shared/transforms/Hira-Latn.yml +15 -0
  118. data/resources/shared/transforms/InterIndic-Latin.yml +2 -2
  119. data/resources/shared/transforms/Jamo-Latn.yml +12 -0
  120. data/resources/shared/transforms/Knda-Beng.yml +13 -0
  121. data/resources/shared/transforms/Knda-Deva.yml +13 -0
  122. data/resources/shared/transforms/Knda-Gujr.yml +13 -0
  123. data/resources/shared/transforms/Knda-Guru.yml +13 -0
  124. data/resources/shared/transforms/Knda-Latn.yml +13 -0
  125. data/resources/shared/transforms/Knda-Mlym.yml +13 -0
  126. data/resources/shared/transforms/Knda-Orya.yml +13 -0
  127. data/resources/shared/transforms/Knda-Taml.yml +13 -0
  128. data/resources/shared/transforms/Knda-Telu.yml +13 -0
  129. data/resources/shared/transforms/Latin-ASCII.yml +16 -1
  130. data/resources/shared/transforms/Latin-InterIndic.yml +2 -2
  131. data/resources/shared/transforms/Latn-Armn.yml +90 -0
  132. data/resources/shared/transforms/Latn-Beng.yml +14 -0
  133. data/resources/shared/transforms/Latn-Bopo.yml +1336 -0
  134. data/resources/shared/transforms/Latn-Cans.yml +190 -0
  135. data/resources/shared/transforms/Latn-Deva.yml +14 -0
  136. data/resources/shared/transforms/Latn-Ethi.yml +278 -0
  137. data/resources/shared/transforms/Latn-Gujr.yml +14 -0
  138. data/resources/shared/transforms/Latn-Guru.yml +14 -0
  139. data/resources/shared/transforms/Latn-Hang.yml +13 -0
  140. data/resources/shared/transforms/Latn-Jamo.yml +13 -0
  141. data/resources/shared/transforms/Latn-Kana.yml +274 -0
  142. data/resources/shared/transforms/Latn-Knda.yml +14 -0
  143. data/resources/shared/transforms/Latn-Mlym.yml +14 -0
  144. data/resources/shared/transforms/Latn-Orya.yml +14 -0
  145. data/resources/shared/transforms/Latn-Taml.yml +14 -0
  146. data/resources/shared/transforms/Latn-Telu.yml +14 -0
  147. data/resources/shared/transforms/Latn-Thaa.yml +439 -0
  148. data/resources/shared/transforms/Latn-Thai.yml +13 -0
  149. data/resources/shared/transforms/Mlym-Beng.yml +13 -0
  150. data/resources/shared/transforms/Mlym-Deva.yml +13 -0
  151. data/resources/shared/transforms/Mlym-Gujr.yml +13 -0
  152. data/resources/shared/transforms/Mlym-Guru.yml +13 -0
  153. data/resources/shared/transforms/Mlym-Knda.yml +13 -0
  154. data/resources/shared/transforms/Mlym-Latn.yml +13 -0
  155. data/resources/shared/transforms/Mlym-Orya.yml +13 -0
  156. data/resources/shared/transforms/Mlym-Taml.yml +13 -0
  157. data/resources/shared/transforms/Mlym-Telu.yml +13 -0
  158. data/resources/shared/transforms/Orya-Beng.yml +13 -0
  159. data/resources/shared/transforms/Orya-Deva.yml +13 -0
  160. data/resources/shared/transforms/Orya-Gujr.yml +13 -0
  161. data/resources/shared/transforms/Orya-Guru.yml +13 -0
  162. data/resources/shared/transforms/Orya-Knda.yml +13 -0
  163. data/resources/shared/transforms/Orya-Latn.yml +13 -0
  164. data/resources/shared/transforms/Orya-Mlym.yml +13 -0
  165. data/resources/shared/transforms/Orya-Taml.yml +13 -0
  166. data/resources/shared/transforms/Orya-Telu.yml +13 -0
  167. data/resources/shared/transforms/Syrc-Latn.yml +55 -0
  168. data/resources/shared/transforms/Taml-Beng.yml +13 -0
  169. data/resources/shared/transforms/Taml-Deva.yml +13 -0
  170. data/resources/shared/transforms/Taml-Gujr.yml +13 -0
  171. data/resources/shared/transforms/Taml-Guru.yml +13 -0
  172. data/resources/shared/transforms/Taml-Knda.yml +13 -0
  173. data/resources/shared/transforms/Taml-Latn.yml +13 -0
  174. data/resources/shared/transforms/Taml-Mlym.yml +13 -0
  175. data/resources/shared/transforms/Taml-Orya.yml +13 -0
  176. data/resources/shared/transforms/Taml-Telu.yml +13 -0
  177. data/resources/shared/transforms/Telu-Beng.yml +13 -0
  178. data/resources/shared/transforms/Telu-Deva.yml +13 -0
  179. data/resources/shared/transforms/Telu-Gujr.yml +13 -0
  180. data/resources/shared/transforms/Telu-Guru.yml +13 -0
  181. data/resources/shared/transforms/Telu-Knda.yml +13 -0
  182. data/resources/shared/transforms/Telu-Latn.yml +13 -0
  183. data/resources/shared/transforms/Telu-Mlym.yml +13 -0
  184. data/resources/shared/transforms/Telu-Orya.yml +13 -0
  185. data/resources/shared/transforms/Telu-Taml.yml +13 -0
  186. data/resources/shared/transforms/Thai-Latn.yml +15 -0
  187. data/resources/shared/transforms/am-am_FONIPA.yml +609 -0
  188. data/resources/shared/transforms/am-am_Latn-BGN.yml +336 -0
  189. data/resources/shared/transforms/am-ar.yml +11 -0
  190. data/resources/shared/transforms/am-fa.yml +10 -0
  191. data/resources/shared/transforms/ar-ar_Latn-BGN.yml +122 -0
  192. data/resources/shared/transforms/az_Cyrl-az-BGN.yml +93 -0
  193. data/resources/shared/transforms/be-be_Latn-BGN.yml +108 -0
  194. data/resources/shared/transforms/bg-bg_Latn-BGN.yml +99 -0
  195. data/resources/shared/transforms/ch-am.yml +10 -0
  196. data/resources/shared/transforms/ch-ar.yml +10 -0
  197. data/resources/shared/transforms/ch-ch_FONIPA.yml +0 -8
  198. data/resources/shared/transforms/ch-fa.yml +10 -0
  199. data/resources/shared/transforms/cs-am.yml +10 -0
  200. data/resources/shared/transforms/cs-ar.yml +10 -0
  201. data/resources/shared/transforms/cs-fa.yml +10 -0
  202. data/resources/shared/transforms/dsb-dsb_FONIPA.yml +0 -5
  203. data/resources/shared/transforms/dv-dv_Latn-BGN.yml +112 -0
  204. data/resources/shared/transforms/el-el_Latn-BGN.yml +208 -0
  205. data/resources/shared/transforms/eo-am.yml +10 -0
  206. data/resources/shared/transforms/eo-ar.yml +10 -0
  207. data/resources/shared/transforms/eo-eo_FONIPA.yml +52 -0
  208. data/resources/shared/transforms/eo-fa.yml +10 -0
  209. data/resources/shared/transforms/es-ar.yml +13 -0
  210. data/resources/shared/transforms/es-fa.yml +13 -0
  211. data/resources/shared/transforms/es_419-am.yml +11 -0
  212. data/resources/shared/transforms/es_419-ar.yml +14 -0
  213. data/resources/shared/transforms/es_419-fa.yml +14 -0
  214. data/resources/shared/transforms/fa-fa_Latn-BGN.yml +123 -0
  215. data/resources/shared/transforms/he-he_Latn-BGN.yml +62 -0
  216. data/resources/shared/transforms/hy-am.yml +10 -0
  217. data/resources/shared/transforms/hy-ar.yml +10 -0
  218. data/resources/shared/transforms/hy-fa.yml +10 -0
  219. data/resources/shared/transforms/hy-hy_FONIPA.yml +56 -0
  220. data/resources/shared/transforms/hy-hy_Latn-BGN.yml +133 -0
  221. data/resources/shared/transforms/hy_AREVMDA-am.yml +10 -0
  222. data/resources/shared/transforms/hy_AREVMDA-ar.yml +10 -0
  223. data/resources/shared/transforms/hy_AREVMDA-fa.yml +10 -0
  224. data/resources/shared/transforms/hy_AREVMDA-hy_AREVMDA_FONIPA.yml +82 -0
  225. data/resources/shared/transforms/ia-am.yml +10 -0
  226. data/resources/shared/transforms/ia-ar.yml +10 -0
  227. data/resources/shared/transforms/ia-fa.yml +10 -0
  228. data/resources/shared/transforms/ia-ia_FONIPA.yml +69 -0
  229. data/resources/shared/transforms/ja_Hrkt-ja_Latn-BGN.yml +310 -0
  230. data/resources/shared/transforms/ka-ka_Latn-BGN.yml +44 -0
  231. data/resources/shared/transforms/kk-am.yml +10 -0
  232. data/resources/shared/transforms/kk-ar.yml +10 -0
  233. data/resources/shared/transforms/kk-fa.yml +10 -0
  234. data/resources/shared/transforms/kk-kk_FONIPA.yml +53 -0
  235. data/resources/shared/transforms/kk-kk_Latn-BGN.yml +136 -0
  236. data/resources/shared/transforms/ko-ko_Latn-BGN.yml +282 -0
  237. data/resources/shared/transforms/ky-am.yml +10 -0
  238. data/resources/shared/transforms/ky-ar.yml +10 -0
  239. data/resources/shared/transforms/ky-fa.yml +10 -0
  240. data/resources/shared/transforms/ky-ky_FONIPA.yml +73 -0
  241. data/resources/shared/transforms/ky-ky_Latn-BGN.yml +107 -0
  242. data/resources/shared/transforms/la-la_FONIPA.yml +0 -8
  243. data/resources/shared/transforms/mk-mk_Latn-BGN.yml +89 -0
  244. data/resources/shared/transforms/mn-mn_Latn-BGN.yml +101 -0
  245. data/resources/shared/transforms/mn-mn_Latn-MNS.yml +89 -0
  246. data/resources/shared/transforms/my-am.yml +10 -0
  247. data/resources/shared/transforms/my-ar.yml +10 -0
  248. data/resources/shared/transforms/my-fa.yml +10 -0
  249. data/resources/shared/transforms/my-my_FONIPA.yml +260 -0
  250. data/resources/shared/transforms/pl-am.yml +10 -0
  251. data/resources/shared/transforms/pl-ar.yml +10 -0
  252. data/resources/shared/transforms/pl-fa.yml +10 -0
  253. data/resources/shared/transforms/ps-ps_Latn-BGN.yml +151 -0
  254. data/resources/shared/transforms/rm_SURSILV-am.yml +10 -0
  255. data/resources/shared/transforms/rm_SURSILV-ar.yml +10 -0
  256. data/resources/shared/transforms/rm_SURSILV-fa.yml +10 -0
  257. data/resources/shared/transforms/rm_SURSILV-rm_FONIPA_SURSILV.yml +84 -0
  258. data/resources/shared/transforms/ro-am.yml +10 -0
  259. data/resources/shared/transforms/ro-ar.yml +10 -0
  260. data/resources/shared/transforms/ro-fa.yml +10 -0
  261. data/resources/shared/transforms/ro-ro_FONIPA.yml +38 -6
  262. data/resources/shared/transforms/ro_FONIPA-ja.yml +1 -0
  263. data/resources/shared/transforms/ru-ru_Latn-BGN.yml +121 -0
  264. data/resources/shared/transforms/ru_Latn-ru-BGN.yml +101 -0
  265. data/resources/shared/transforms/sat-am.yml +10 -0
  266. data/resources/shared/transforms/sat-ar.yml +10 -0
  267. data/resources/shared/transforms/sat-fa.yml +10 -0
  268. data/resources/shared/transforms/sat_Olck-sat_FONIPA.yml +132 -0
  269. data/resources/shared/transforms/si-am.yml +10 -0
  270. data/resources/shared/transforms/si-ar.yml +10 -0
  271. data/resources/shared/transforms/si-fa.yml +10 -0
  272. data/resources/shared/transforms/si-si_FONIPA.yml +128 -0
  273. data/resources/shared/transforms/si-si_Latn.yml +96 -0
  274. data/resources/shared/transforms/sk-am.yml +10 -0
  275. data/resources/shared/transforms/sk-ar.yml +10 -0
  276. data/resources/shared/transforms/sk-fa.yml +10 -0
  277. data/resources/shared/transforms/sk-sk_FONIPA.yml +18 -2
  278. data/resources/shared/transforms/sk_FONIPA-ja.yml +2 -0
  279. data/resources/shared/transforms/sr-sr_Latn-BGN.yml +81 -0
  280. data/resources/shared/transforms/tk_Cyrl-tk-BGN.yml +122 -0
  281. data/resources/shared/transforms/tlh-am.yml +10 -0
  282. data/resources/shared/transforms/tlh-ar.yml +10 -0
  283. data/resources/shared/transforms/tlh-fa.yml +10 -0
  284. data/resources/shared/transforms/tlh-tlh_FONIPA.yml +0 -8
  285. data/resources/shared/transforms/uk-uk_Latn-BGN.yml +115 -0
  286. data/resources/shared/transforms/und_FONIPA-ar.yml +96 -0
  287. data/resources/shared/transforms/und_FONIPA-fa.yml +88 -0
  288. data/resources/shared/transforms/und_FONIPA-und_FONXSAMP.yml +198 -0
  289. data/resources/shared/transforms/uz_Cyrl-uz-BGN.yml +117 -0
  290. data/resources/shared/transforms/xh-am.yml +10 -0
  291. data/resources/shared/transforms/xh-ar.yml +10 -0
  292. data/resources/shared/transforms/xh-fa.yml +10 -0
  293. data/resources/shared/transforms/xh-xh_FONIPA.yml +71 -0
  294. data/resources/shared/transforms/zu-am.yml +10 -0
  295. data/resources/shared/transforms/zu-ar.yml +10 -0
  296. data/resources/shared/transforms/zu-fa.yml +10 -0
  297. data/resources/shared/transforms/zu-zu_FONIPA.yml +58 -0
  298. data/spec/formatters/numbers/rbnf/rbnf_spec.rb +3 -1
  299. data/spec/resources/loader_spec.rb +12 -5
  300. data/spec/spec_helper.rb +1 -1
  301. metadata +242 -10
  302. data/History.txt +0 -282
  303. data/lib/twitter_cldr/resources/collation_tries_dumper.rb +0 -43
  304. data/lib/twitter_cldr/resources/custom_locales_resources_importer.rb +0 -80
  305. data/lib/twitter_cldr/resources/download.rb +0 -64
  306. data/lib/twitter_cldr/resources/icu_based_importer.rb +0 -18
  307. data/lib/twitter_cldr/resources/properties/properties_importer.rb +0 -59
  308. data/lib/twitter_cldr/resources/unicode_importer.rb +0 -37
data/History.txt DELETED
@@ -1,282 +0,0 @@
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
-
8
- == 3.6.0
9
- * Override South Korean postal code format, which changed recently.
10
-
11
- == 3.5.0
12
- * Only add JSON as a dependency if running under Ruby < 2 (#191).
13
-
14
- == 3.4.0
15
- * Add units support, eg. "12 degrees Celsius", etc.
16
-
17
- == 3.3.0
18
- * Added `#as_territory` convenience method to LocalizedSymbol (@Anthony-Gaudino).
19
- * Improved documentation for world territories (@Anthony-Gaudino).
20
- * Fixed issues with Unicode regular expressions
21
- - Unicode properties not recognized correctly
22
- - Unicode properties not unioned correctly when placed side-by-side
23
- - Inverted unicode properties not unioned correctly
24
- - Leading dashes in character classes now treated as literals instead of as
25
- denoting a range
26
-
27
- == 3.2.1
28
- * Fix units for Gujarati, Kannada, Marathi
29
-
30
- == 3.2.0
31
- * Add Gujarati, Kannada, Marathi
32
-
33
- == 3.1.2
34
- * Add 'short' as a valid weekday names form in Shared::Calendar.
35
-
36
- == 3.1.1
37
- * Fixed an issue with single quotes appearing in dates formatting.
38
- * Added support for locale codes that have region code in lower case.
39
- * Fixed time zone formatting for DateTime objects.
40
-
41
- == 3.1.0
42
-
43
- * Updated resources from CLDR v26 (except the collation data).
44
- * Added support for ordinal plurals.
45
- * Added PostalCodes#find_all method.
46
- * Added negative numbers abbreviation.
47
- * Fixed pluralization for abbreviated numbers.
48
- * Fixed pluralization rules by not merging 'en' rules into every locale.
49
-
50
- == 3.0.10
51
-
52
- * Adding Date back in as a localizable object.
53
-
54
- == 3.0.9
55
-
56
- * Fixing date and time formatting issue where calling `to_additional_s` on an instance of `LocalizedDate` could raise an error.
57
-
58
- == 3.0.8
59
-
60
- * Fixing issue causing extraneous single quotes to appear in formatted dates and times.
61
-
62
- == 3.0.7
63
-
64
- * Territories containment support.
65
-
66
- == 3.0.6
67
-
68
- * Add en-150 and es-419 locales.
69
-
70
- == 3.0.5
71
-
72
- * Fixed short numbers formatting for ru and other locales that use patterns
73
- with literal periods.
74
-
75
- == 3.0.4
76
-
77
- * Fixed short numbers formatting for ja, ko, af, and a few other locales.
78
- * Added more locales: de-CH, en-AU, en-CA, en-GB, en-IE, en-SG, en-ZA,
79
- es-CO, es-MX, es-US, fr-BE, fr-CA, fr-CH, it-CH.
80
-
81
- == 3.0.3
82
-
83
- * Rubinius support.
84
-
85
- == 3.0.2
86
-
87
- * Adding ability to generate sample postal codes from their regexes.
88
-
89
- == 3.0.1
90
-
91
- * Fixing abbreviated timespan formats for en-GB (backport from 2.4.3).
92
-
93
- == 3.0.0
94
-
95
- * Adding maximum_level option to SortKeyBuilder to limit the size of collation sort keys (@jrochkind).
96
- * Significant performance enhancements for normalization via the eprun gem.
97
- * Adding the rule-based number formatters (123 becomes "one hundred twenty-three").
98
- * Major overhaul of most formatters, now using data readers to encapsulate format options and read pattern data.
99
- * Adding support for different numbering systems (eg. arab, latn, etc), number formatter updated accordingly.
100
- * Partial upgrade to CLDR v24 (missing units).
101
- * Support for simple/full/Turkic casefolding. Upper/lowercasing support still needed.
102
- * Support for Unicode regular expressions. Requires oniguruma for use in Ruby 1.8.
103
- * Text segmentation by sentence (word and line support coming soon).
104
- * Executable README.
105
-
106
- == 2.4.3
107
-
108
- * Fixing abbreviated timespan formats for en-GB.
109
-
110
- == 2.4.2
111
-
112
- * Fixing non-quoted symbol error in en-GB plural resource file.
113
-
114
- == 2.4.1
115
-
116
- * Upgrade to CLDR v23.1, ICU4J 51.2.
117
- * Adding en-GB locale (British English).
118
- * Partial support for Ruby 2.0 (yaml no longer breaks, may not dump correctly).
119
-
120
- == 2.4.0
121
-
122
- * Upgrade to CLDR v23.
123
- * Ability to disable loading of any custom locale resources.
124
- * Long and short decimal formatters now respect the :precision option.
125
-
126
- == 2.3.0
127
-
128
- * Adding timezone support to date/time formatting.
129
- * Removing the localize method from Date objects. Call to_date on a LocalizedDateTime or LocalizedTime object instead.
130
-
131
- == 2.2.0
132
-
133
- * Relaxing JSON dependency to give users more version flexibility. JSON gem now has no version number in twitter-cldr-rb.
134
-
135
- == 2.1.1
136
-
137
- * Modified AdditionalDateFormatSelector to return the correct format on exact format match.
138
-
139
- == 2.1.0
140
-
141
- * Significant performance improvements (memoization, resource preloading).
142
- * Number parsing.
143
- * Custom Hebrew units (thanks @yarons!)
144
- * Icelandic and Croatian support.
145
- * Global locale setter and fallbacks.
146
- * Support for territories from CLDR.
147
-
148
- == 2.0.2
149
-
150
- * Added support for Vietnamese.
151
-
152
- == 2.0.1
153
-
154
- * Fixed bug for additional date formats that was causing the wrong format to be returned.
155
-
156
- == 2.0.0
157
-
158
- * Added locales ga, ta, gl, cy, sr, bg, ku, ro, lv, be, sq, sk, and bn.
159
- * Added additional date formats.
160
- * Upgraded to CLDR 22.1.
161
- * Imported currency symbols and formatting rules from CLDR.
162
- * Added support for short/long numbers (eg. 1M for 1,000,000).
163
- * Improved RCov/Simplecov support.
164
- * Added custom Hungarian plurals rule.
165
- * Added support for approximate timespans (relative times).
166
-
167
- === 1.9.1
168
-
169
- * Locale resources now exported without Unicode escape sequences.
170
-
171
- === 1.9.0
172
-
173
- * Included Unicode-safe YAML dumping support via an adaptation of the ya2yaml gem.
174
- * Implemented the Unicode Bidirectional Algorithm to help reorder mixed right-to-left and left-to-right text.
175
- * Added list formatting support.
176
-
177
- === 1.8.1
178
-
179
- * Improved, more accurate Finnish and Chinese collation support.
180
- * Moved JavaScript build environment to twitter-cldr-js.
181
-
182
- === 1.8.0
183
-
184
- * Added support for language code conversion.
185
- * `#localize` methods (eg. for Hash, String, etc) now dynamically generated, part of the `TwitterCldr::Localized` namespace.
186
- * New convenience method `TwitterCldr::Normalization#normalize`.
187
-
188
- === 1.7.0
189
-
190
- * Wrote rake tasks to update CLDR and ICU resources.
191
- * All resource files now written with symbolized keys so the gem doesn't have to recursively symbolize them on load.
192
- * Unicode code points now represented internally with integers instead of strings for better performance.
193
- * Added number formatting in JavaScript.
194
- * Added telephone code lookup functionality (per country) and postal code validation.
195
-
196
- === 1.6.2
197
-
198
- * Collation tries now loaded from marshal dumps, collation running time improved by ~80%.
199
-
200
- === 1.6.1
201
-
202
- * Added case-first collation element tailoring support for languages like Danish.
203
- * Included a missing development dependency (ruby_parser).
204
-
205
- === 1.6.0
206
-
207
- * Added locale-aware collation via fractional collation element tailoring.
208
- * Added #sort and #sort! methods to LocalizedArray.
209
- * Added JavaScript relative time functionality, eg. "2 seconds ago".
210
-
211
- === 1.5.0
212
-
213
- * Added collation (sorting) support via the Unicode Collation Algorithm.
214
- * Added Catalan, Basque, Greek, Afrikaans, Ukrainian, and Czech support along with calendar fixes for existing locales.
215
- * DateTimeTokenizer now falls back on English if the given locale isn't supported.
216
-
217
- === 1.4.1
218
-
219
- * Added ability to use NFC and NFKC in core_ext/string
220
-
221
- === 1.4.0
222
-
223
- * Added NFC and NFKC algorithms.
224
- * Refactored Shared::UnicodeData::Attributes into Shared::CodePoint.
225
-
226
- === 1.3.6
227
-
228
- * Added relative time functionality, eg. "2 seconds ago".
229
-
230
- === 1.3.0
231
-
232
- * Reorganized locale resources.
233
- * Added explicit specs for examples in the README.
234
- * ArgumentError now raised if a resource can't be found.
235
- * Fixed behavior of the :precision option for number formatting.
236
- * Updated CLDR data to v21 (http://cldr.unicode.org/index/downloads/cldr-21).
237
- * Added support for localized arrays (i.e. arrays of Unicode code points).
238
-
239
- === 1.2.0
240
-
241
- * Added NFKD normalization algorithm.
242
- * Formatter tokens now cached for better performance.
243
- * Improvements to core extensions (Symbol, Date, etc).
244
- * Added full normalization test from unicode.org.
245
- * Autoload classes to improve performance.
246
-
247
- === 1.1.0
248
-
249
- * Plural support [@KL-7]
250
- * Unicode data, decomposition [@timothyandrew]
251
-
252
- === 1.0.1
253
-
254
- * Fixed a US-ASCII bug that caused rake errors. This fix applies to both Ruby 1.8 and 1.9.
255
- * Fixed a regexp error in a test function, as well as a tokenizer bug. All tests now pass.
256
- * Added support for Travis, a distributed build platform.
257
-
258
- === 1.0.0
259
-
260
- * Look ma, I'm open source!
261
-
262
- === 0.1.4
263
-
264
- * Added functionality to gracefully fall back on default locale if chosen locale is unsupported.
265
-
266
- === 0.1.3
267
-
268
- * Added support for Arabic, Hebrew, Farsi, Thai, and Urdu.
269
-
270
- === 0.1.2
271
-
272
- * Added world language support.
273
-
274
- === 0.1.1
275
-
276
- * Localized dates, times, and datetimes can now be interchangeably converted to each other.
277
- * Fixed a bug that would not allow lookup of resource data by string (only symbol).
278
- * Added really basic plural support.
279
-
280
- === 0.1.0
281
-
282
- * Birthday!
@@ -1,43 +0,0 @@
1
- # encoding: UTF-8
2
-
3
- # Copyright 2012 Twitter, Inc
4
- # http://www.apache.org/licenses/LICENSE-2.0
5
-
6
- module TwitterCldr
7
- module Resources
8
-
9
- module CollationTriesDumper
10
-
11
- class << self
12
-
13
- def update_dumps
14
- update_default_trie_dump
15
- TwitterCldr.supported_locales.each { |locale| update_tailoring_trie_dump(locale) }
16
- end
17
-
18
- private
19
-
20
- def update_default_trie_dump
21
- save_trie_dump(TwitterCldr::Collation::TrieLoader::DEFAULT_TRIE_LOCALE, default_trie)
22
- end
23
-
24
- def update_tailoring_trie_dump(locale)
25
- save_trie_dump(locale, TwitterCldr::Collation::TrieBuilder.load_tailored_trie(locale, @default_trie))
26
- end
27
-
28
- def save_trie_dump(locale, trie)
29
- path = TwitterCldr::Collation::TrieLoader.dump_path(locale)
30
- FileUtils.mkdir_p(File.dirname(path))
31
-
32
- File.open(path, 'w') { |f| f.write(Marshal.dump(trie)) }
33
- end
34
-
35
- def default_trie
36
- @default_trie ||= TwitterCldr::Collation::TrieBuilder.load_default_trie
37
- end
38
- end
39
-
40
- end
41
-
42
- end
43
- end
@@ -1,80 +0,0 @@
1
- # encoding: UTF-8
2
-
3
- # Copyright 2012 Twitter, Inc
4
- # http://www.apache.org/licenses/LICENSE-2.0
5
-
6
- require 'json'
7
- require 'open-uri'
8
-
9
- module TwitterCldr
10
- module Resources
11
-
12
- class CustomLocalesResourcesImporter
13
-
14
- API_ENDPOINT = "http://translate.twitter.com/api/2/twitter/phrase/%s/translations.json"
15
-
16
- TIME_PERIODS = {
17
- day: 19636,
18
- hour: 19638,
19
- minute: 19634,
20
- second: 19639
21
- }
22
-
23
- # Arguments:
24
- #
25
- # output_path - output directory for imported YAML files
26
- #
27
- def initialize(output_path)
28
- @output_path = output_path
29
- end
30
-
31
- def import
32
- import_units
33
- end
34
-
35
- private
36
-
37
- def import_units
38
- fetch_units_data.each do |locale, data|
39
- dir_path = File.join(@output_path, locale.to_s)
40
-
41
- FileUtils.mkpath(dir_path)
42
-
43
- File.open(File.join(dir_path, 'units.yml'), 'w:utf-8') do |output|
44
- output.write(YAML.dump({ locale => data }))
45
- end
46
- end
47
- end
48
-
49
- def fetch_units_data
50
- TIME_PERIODS.inject({}) do |result, (label, id)|
51
- api_response = JSON.parse(open(API_ENDPOINT % id).read)
52
-
53
- TwitterCldr.supported_locales.each do |locale|
54
- twitter_locale = TwitterCldr.twitter_locale(locale).to_s
55
-
56
- next unless api_response[twitter_locale]
57
-
58
- patterns = TwitterCldr::Formatters::Plurals::Rules.all_for(locale).inject({}) do |memo, rule|
59
- memo[rule] = api_response[twitter_locale].gsub("%{number}", "{0}"); memo
60
- end
61
-
62
- set_value(result, patterns, locale, :units, label, :abbreviated)
63
- end
64
-
65
- result
66
- end
67
- end
68
-
69
- def set_value(hash, value, *path)
70
- last = path[0..-2].inject(hash) do |current, level|
71
- current[level] ||= {}
72
- end
73
-
74
- last[path.last] = value
75
- end
76
-
77
- end
78
-
79
- end
80
- end
@@ -1,64 +0,0 @@
1
- # encoding: UTF-8
2
-
3
- # Copyright 2012 Twitter, Inc
4
- # http://www.apache.org/licenses/LICENSE-2.0
5
-
6
- module TwitterCldr
7
- module Resources
8
-
9
- CLDR_URL = "http://unicode.org/Public/cldr/#{Versions.cldr_version}/core.zip"
10
- ICU4J_URL = "http://download.icu-project.org/files/icu4j/#{Versions.icu_version}/icu4j-#{Versions.icu_version.gsub('.', '_')}.jar"
11
- UNICODE_URL = "ftp://ftp.unicode.org/Public/#{Versions.unicode_version}"
12
-
13
- class << self
14
-
15
- def download_if_necessary(path, url)
16
- if File.file?(path)
17
- puts "Using '#{path}'."
18
- else
19
- puts "Downloading '#{url}' to '#{path}'."
20
- FileUtils.mkdir_p(File.dirname(path))
21
- system("curl #{url} -o #{path}")
22
- end
23
-
24
- path
25
- end
26
-
27
- def download_cldr_if_necessary(path, url = CLDR_URL)
28
- if File.directory?(path)
29
- puts "Using CLDR data from '#{path}'."
30
- else
31
- begin
32
- require 'zip'
33
- rescue LoadError
34
- raise StandardError.new("Unable to require 'zip'. Please switch to at least Ruby 1.9, then rebundle and try again.")
35
- end
36
-
37
- require 'cldr/download'
38
-
39
- puts "Downloading CLDR data from '#{url}' to '#{path}'."
40
- Cldr.download(url, path)
41
- end
42
-
43
- path
44
- end
45
-
46
- def download_icu4j_if_necessary(path, url = ICU4J_URL)
47
- download_if_necessary(path, url)
48
- path
49
- end
50
-
51
- def download_unicode_data_if_necessary(path, url)
52
- download_if_necessary(path, join_urls(UNICODE_URL, url))
53
- end
54
-
55
- private
56
-
57
- def join_urls(*urls)
58
- urls.map { |u| u.chomp('/') }.join('/')
59
- end
60
-
61
- end
62
-
63
- end
64
- end