twitter_cldr 1.9.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. data/Gemfile +7 -0
  2. data/History.txt +11 -0
  3. data/README.md +93 -13
  4. data/Rakefile +27 -6
  5. data/lib/twitter_cldr/formatters.rb +15 -12
  6. data/lib/twitter_cldr/formatters/base.rb +1 -1
  7. data/lib/twitter_cldr/formatters/calendars/datetime_formatter.rb +18 -3
  8. data/lib/twitter_cldr/formatters/calendars/timespan_formatter.rb +24 -26
  9. data/lib/twitter_cldr/formatters/numbers/abbreviated/abbreviated_number_formatter.rb +47 -0
  10. data/lib/twitter_cldr/formatters/numbers/abbreviated/long_decimal_formatter.rb +18 -0
  11. data/lib/twitter_cldr/formatters/numbers/abbreviated/short_decimal_formatter.rb +18 -0
  12. data/lib/twitter_cldr/formatters/numbers/currency_formatter.rb +22 -17
  13. data/lib/twitter_cldr/formatters/numbers/decimal_formatter.rb +0 -9
  14. data/lib/twitter_cldr/formatters/numbers/helpers/base.rb +1 -1
  15. data/lib/twitter_cldr/formatters/numbers/number_formatter.rb +25 -10
  16. data/lib/twitter_cldr/formatters/numbers/percent_formatter.rb +9 -6
  17. data/lib/twitter_cldr/localized/localized_datetime.rb +6 -2
  18. data/lib/twitter_cldr/localized/localized_number.rb +9 -3
  19. data/lib/twitter_cldr/localized/localized_timespan.rb +1 -1
  20. data/lib/twitter_cldr/resources.rb +13 -12
  21. data/lib/twitter_cldr/resources/custom_locales_resources_importer.rb +1 -1
  22. data/lib/twitter_cldr/resources/download.rb +1 -1
  23. data/lib/twitter_cldr/resources/locales_resources_importer.rb +10 -6
  24. data/lib/twitter_cldr/shared/bidi.rb +27 -27
  25. data/lib/twitter_cldr/shared/currencies.rb +20 -13
  26. data/lib/twitter_cldr/tokenizers.rb +10 -9
  27. data/lib/twitter_cldr/tokenizers/base.rb +33 -21
  28. data/lib/twitter_cldr/tokenizers/calendars/additional_date_format_selector.rb +86 -0
  29. data/lib/twitter_cldr/tokenizers/calendars/date_tokenizer.rb +20 -11
  30. data/lib/twitter_cldr/tokenizers/calendars/datetime_tokenizer.rb +50 -13
  31. data/lib/twitter_cldr/tokenizers/calendars/time_tokenizer.rb +19 -10
  32. data/lib/twitter_cldr/tokenizers/calendars/timespan_tokenizer.rb +32 -32
  33. data/lib/twitter_cldr/tokenizers/numbers/number_tokenizer.rb +45 -22
  34. data/lib/twitter_cldr/utils.rb +16 -1
  35. data/lib/twitter_cldr/version.rb +1 -1
  36. data/resources/collation/tailoring/af.yml +1 -0
  37. data/resources/collation/tailoring/ar.yml +3 -2
  38. data/resources/collation/tailoring/be.yml +7 -0
  39. data/resources/collation/tailoring/bg.yml +5 -0
  40. data/resources/collation/tailoring/bn.yml +9 -0
  41. data/resources/collation/tailoring/ca.yml +3 -2
  42. data/resources/collation/tailoring/cs.yml +3 -2
  43. data/resources/collation/tailoring/cy.yml +51 -0
  44. data/resources/collation/tailoring/da.yml +3 -2
  45. data/resources/collation/tailoring/de.yml +1 -0
  46. data/resources/collation/tailoring/el.yml +1 -0
  47. data/resources/collation/tailoring/en.yml +1 -0
  48. data/resources/collation/tailoring/es.yml +3 -2
  49. data/resources/collation/tailoring/eu.yml +1 -0
  50. data/resources/collation/tailoring/fa.yml +3 -2
  51. data/resources/collation/tailoring/fi.yml +3 -2
  52. data/resources/collation/tailoring/fil.yml +3 -2
  53. data/resources/collation/tailoring/fr.yml +1 -0
  54. data/resources/collation/tailoring/ga.yml +5 -0
  55. data/resources/collation/tailoring/gl.yml +5 -0
  56. data/resources/collation/tailoring/he.yml +1 -0
  57. data/resources/collation/tailoring/hi.yml +3 -2
  58. data/resources/collation/tailoring/hu.yml +3 -2
  59. data/resources/collation/tailoring/id.yml +1 -0
  60. data/resources/collation/tailoring/it.yml +1 -0
  61. data/resources/collation/tailoring/ja.yml +107 -54
  62. data/resources/collation/tailoring/ko.yml +3 -2
  63. data/resources/collation/tailoring/lv.yml +35 -0
  64. data/resources/collation/tailoring/ms.yml +1 -0
  65. data/resources/collation/tailoring/nb.yml +3 -2
  66. data/resources/collation/tailoring/nl.yml +1 -0
  67. data/resources/collation/tailoring/pl.yml +3 -2
  68. data/resources/collation/tailoring/pt.yml +1 -0
  69. data/resources/collation/tailoring/ro.yml +31 -0
  70. data/resources/collation/tailoring/ru.yml +1 -0
  71. data/resources/collation/tailoring/sk.yml +35 -0
  72. data/resources/collation/tailoring/sq.yml +65 -0
  73. data/resources/collation/tailoring/sr.yml +5 -0
  74. data/resources/collation/tailoring/sv.yml +3 -2
  75. data/resources/collation/tailoring/ta.yml +57 -0
  76. data/resources/collation/tailoring/th.yml +3 -2
  77. data/resources/collation/tailoring/tr.yml +3 -2
  78. data/resources/collation/tailoring/uk.yml +3 -2
  79. data/resources/collation/tailoring/ur.yml +3 -2
  80. data/resources/collation/tailoring/zh-Hant.yml +3 -2
  81. data/resources/collation/tailoring/zh.yml +3 -2
  82. data/resources/collation/tries/be.dump +0 -0
  83. data/resources/collation/tries/bg.dump +0 -0
  84. data/resources/collation/tries/bn.dump +0 -0
  85. data/resources/collation/tries/cy.dump +0 -0
  86. data/resources/collation/tries/ga.dump +0 -0
  87. data/resources/collation/tries/gl.dump +0 -0
  88. data/resources/collation/tries/lv.dump +0 -0
  89. data/resources/collation/tries/ro.dump +0 -0
  90. data/resources/collation/tries/sk.dump +0 -0
  91. data/resources/collation/tries/sq.dump +0 -0
  92. data/resources/collation/tries/sr.dump +0 -0
  93. data/resources/collation/tries/ta.dump +0 -0
  94. data/resources/custom/locales/ar/units.yml +6 -6
  95. data/resources/custom/locales/be/units.yml +27 -0
  96. data/resources/custom/locales/bg/units.yml +19 -0
  97. data/resources/custom/locales/bn/units.yml +7 -0
  98. data/resources/custom/locales/cs/units.yml +3 -3
  99. data/resources/custom/locales/cy/units.yml +35 -0
  100. data/resources/custom/locales/fil/units.yml +2 -2
  101. data/resources/custom/locales/ga/units.yml +24 -0
  102. data/resources/custom/locales/gl/units.yml +19 -0
  103. data/resources/custom/locales/hu/plurals.yml +3 -0
  104. data/resources/custom/locales/hu/units.yml +4 -0
  105. data/resources/custom/locales/lv/units.yml +23 -0
  106. data/resources/custom/locales/ms/units.yml +1 -1
  107. data/resources/custom/locales/ro/units.yml +23 -0
  108. data/resources/custom/locales/sk/units.yml +23 -0
  109. data/resources/custom/locales/sr/units.yml +27 -0
  110. data/resources/custom/locales/ta/units.yml +11 -0
  111. data/resources/custom/locales/th/calendars.yml +14 -0
  112. data/resources/locales/af/calendars.yml +56 -0
  113. data/resources/locales/af/currencies.yml +358 -0
  114. data/resources/locales/af/languages.yml +23 -3
  115. data/resources/locales/af/numbers.yml +22 -8
  116. data/resources/locales/af/units.yml +26 -54
  117. data/resources/locales/ar/calendars.yml +99 -6
  118. data/resources/locales/ar/currencies.yml +1491 -0
  119. data/resources/locales/ar/languages.yml +33 -6
  120. data/resources/locales/ar/numbers.yml +27 -14
  121. data/resources/locales/ar/units.yml +31 -31
  122. data/resources/locales/be/calendars.yml +229 -0
  123. data/resources/locales/be/currencies.yml +66 -0
  124. data/resources/locales/be/languages.yml +149 -0
  125. data/resources/locales/be/layout.yml +4 -0
  126. data/resources/locales/be/lists.yml +7 -0
  127. data/resources/locales/be/numbers.yml +43 -0
  128. data/resources/locales/be/plurals.yml +5 -0
  129. data/resources/locales/be/units.yml +87 -0
  130. data/resources/locales/bg/calendars.yml +220 -0
  131. data/resources/locales/bg/currencies.yml +773 -0
  132. data/resources/locales/bg/languages.yml +513 -0
  133. data/resources/locales/bg/layout.yml +4 -0
  134. data/resources/locales/bg/lists.yml +7 -0
  135. data/resources/locales/bg/numbers.yml +57 -0
  136. data/resources/locales/bg/plurals.yml +3 -0
  137. data/resources/locales/bg/units.yml +108 -0
  138. data/resources/locales/bn/calendars.yml +205 -0
  139. data/resources/locales/bn/currencies.yml +564 -0
  140. data/resources/locales/bn/languages.yml +513 -0
  141. data/resources/locales/bn/layout.yml +4 -0
  142. data/resources/locales/bn/lists.yml +7 -0
  143. data/resources/locales/bn/numbers.yml +57 -0
  144. data/resources/locales/bn/plurals.yml +3 -0
  145. data/resources/locales/bn/units.yml +108 -0
  146. data/resources/locales/ca/calendars.yml +70 -21
  147. data/resources/locales/ca/currencies.yml +904 -0
  148. data/resources/locales/ca/languages.yml +70 -5
  149. data/resources/locales/ca/numbers.yml +19 -6
  150. data/resources/locales/ca/units.yml +0 -28
  151. data/resources/locales/cs/calendars.yml +73 -27
  152. data/resources/locales/cs/currencies.yml +1063 -0
  153. data/resources/locales/cs/languages.yml +113 -31
  154. data/resources/locales/cs/numbers.yml +17 -4
  155. data/resources/locales/cs/units.yml +0 -28
  156. data/resources/locales/cy/calendars.yml +266 -0
  157. data/resources/locales/cy/currencies.yml +54 -0
  158. data/resources/locales/cy/languages.yml +92 -0
  159. data/resources/locales/cy/layout.yml +4 -0
  160. data/resources/locales/cy/lists.yml +7 -0
  161. data/resources/locales/cy/numbers.yml +49 -0
  162. data/resources/locales/cy/plurals.yml +4 -0
  163. data/resources/locales/cy/units.yml +73 -0
  164. data/resources/locales/da/calendars.yml +117 -16
  165. data/resources/locales/da/currencies.yml +814 -0
  166. data/resources/locales/da/languages.yml +66 -5
  167. data/resources/locales/da/numbers.yml +16 -3
  168. data/resources/locales/da/units.yml +21 -35
  169. data/resources/locales/de/calendars.yml +115 -17
  170. data/resources/locales/de/currencies.yml +843 -0
  171. data/resources/locales/de/languages.yml +5 -3
  172. data/resources/locales/de/numbers.yml +18 -5
  173. data/resources/locales/de/units.yml +0 -28
  174. data/resources/locales/el/calendars.yml +61 -8
  175. data/resources/locales/el/currencies.yml +866 -0
  176. data/resources/locales/el/languages.yml +61 -5
  177. data/resources/locales/el/numbers.yml +18 -5
  178. data/resources/locales/el/units.yml +7 -42
  179. data/resources/locales/en/calendars.yml +43 -4
  180. data/resources/locales/en/currencies.yml +912 -0
  181. data/resources/locales/en/languages.yml +26 -6
  182. data/resources/locales/en/numbers.yml +17 -4
  183. data/resources/locales/es/calendars.yml +60 -0
  184. data/resources/locales/es/currencies.yml +820 -0
  185. data/resources/locales/es/languages.yml +66 -1
  186. data/resources/locales/es/numbers.yml +20 -7
  187. data/resources/locales/es/units.yml +0 -28
  188. data/resources/locales/eu/calendars.yml +43 -2
  189. data/resources/locales/eu/currencies.yml +378 -0
  190. data/resources/locales/eu/languages.yml +29 -13
  191. data/resources/locales/eu/numbers.yml +17 -4
  192. data/resources/locales/eu/units.yml +22 -43
  193. data/resources/locales/fa/calendars.yml +57 -0
  194. data/resources/locales/fa/currencies.yml +449 -0
  195. data/resources/locales/fa/languages.yml +8 -3
  196. data/resources/locales/fa/numbers.yml +20 -7
  197. data/resources/locales/fa/units.yml +0 -42
  198. data/resources/locales/fi/calendars.yml +49 -1
  199. data/resources/locales/fi/currencies.yml +903 -0
  200. data/resources/locales/fi/languages.yml +58 -2
  201. data/resources/locales/fi/numbers.yml +25 -12
  202. data/resources/locales/fi/units.yml +0 -28
  203. data/resources/locales/fil/calendars.yml +51 -0
  204. data/resources/locales/fil/currencies.yml +357 -0
  205. data/resources/locales/fil/languages.yml +25 -8
  206. data/resources/locales/fil/numbers.yml +18 -5
  207. data/resources/locales/fil/units.yml +14 -28
  208. data/resources/locales/fr/calendars.yml +114 -12
  209. data/resources/locales/fr/currencies.yml +884 -0
  210. data/resources/locales/fr/languages.yml +43 -9
  211. data/resources/locales/fr/numbers.yml +22 -9
  212. data/resources/locales/fr/units.yml +2 -30
  213. data/resources/locales/ga/calendars.yml +187 -0
  214. data/resources/locales/ga/currencies.yml +513 -0
  215. data/resources/locales/ga/languages.yml +147 -0
  216. data/resources/locales/ga/layout.yml +4 -0
  217. data/resources/locales/ga/lists.yml +7 -0
  218. data/resources/locales/ga/numbers.yml +43 -0
  219. data/resources/locales/ga/plurals.yml +4 -0
  220. data/resources/locales/ga/units.yml +66 -0
  221. data/resources/locales/gl/calendars.yml +216 -0
  222. data/resources/locales/gl/currencies.yml +476 -0
  223. data/resources/locales/gl/languages.yml +213 -0
  224. data/resources/locales/gl/layout.yml +4 -0
  225. data/resources/locales/gl/lists.yml +7 -0
  226. data/resources/locales/gl/numbers.yml +57 -0
  227. data/resources/locales/gl/plurals.yml +3 -0
  228. data/resources/locales/gl/units.yml +108 -0
  229. data/resources/locales/he/calendars.yml +70 -18
  230. data/resources/locales/he/currencies.yml +497 -0
  231. data/resources/locales/he/languages.yml +301 -7
  232. data/resources/locales/he/lists.yml +2 -2
  233. data/resources/locales/he/numbers.yml +23 -8
  234. data/resources/locales/he/plurals.yml +3 -2
  235. data/resources/locales/he/units.yml +72 -30
  236. data/resources/locales/hi/calendars.yml +54 -1
  237. data/resources/locales/hi/currencies.yml +388 -0
  238. data/resources/locales/hi/languages.yml +2 -0
  239. data/resources/locales/hi/numbers.yml +21 -8
  240. data/resources/locales/hi/units.yml +15 -29
  241. data/resources/locales/hu/calendars.yml +52 -5
  242. data/resources/locales/hu/currencies.yml +640 -0
  243. data/resources/locales/hu/languages.yml +60 -4
  244. data/resources/locales/hu/numbers.yml +25 -12
  245. data/resources/locales/hu/units.yml +1 -29
  246. data/resources/locales/id/calendars.yml +125 -21
  247. data/resources/locales/id/currencies.yml +603 -0
  248. data/resources/locales/id/languages.yml +113 -51
  249. data/resources/locales/id/numbers.yml +16 -3
  250. data/resources/locales/id/units.yml +0 -28
  251. data/resources/locales/it/calendars.yml +59 -6
  252. data/resources/locales/it/currencies.yml +722 -0
  253. data/resources/locales/it/languages.yml +77 -5
  254. data/resources/locales/it/numbers.yml +22 -9
  255. data/resources/locales/it/units.yml +0 -14
  256. data/resources/locales/ja/calendars.yml +55 -5
  257. data/resources/locales/ja/currencies.yml +602 -0
  258. data/resources/locales/ja/languages.yml +103 -43
  259. data/resources/locales/ja/numbers.yml +18 -5
  260. data/resources/locales/ja/units.yml +6 -34
  261. data/resources/locales/ko/calendars.yml +50 -0
  262. data/resources/locales/ko/currencies.yml +596 -0
  263. data/resources/locales/ko/languages.yml +75 -8
  264. data/resources/locales/ko/numbers.yml +17 -4
  265. data/resources/locales/ko/units.yml +0 -28
  266. data/resources/locales/lv/calendars.yml +275 -0
  267. data/resources/locales/lv/currencies.yml +765 -0
  268. data/resources/locales/lv/languages.yml +576 -0
  269. data/resources/locales/lv/layout.yml +4 -0
  270. data/resources/locales/lv/lists.yml +7 -0
  271. data/resources/locales/lv/numbers.yml +58 -0
  272. data/resources/locales/lv/plurals.yml +4 -0
  273. data/resources/locales/lv/units.yml +136 -0
  274. data/resources/locales/ms/calendars.yml +86 -4
  275. data/resources/locales/ms/currencies.yml +341 -0
  276. data/resources/locales/ms/languages.yml +25 -3
  277. data/resources/locales/ms/numbers.yml +19 -6
  278. data/resources/locales/ms/units.yml +0 -56
  279. data/resources/locales/nb/calendars.yml +48 -1
  280. data/resources/locales/nb/currencies.yml +846 -0
  281. data/resources/locales/nb/languages.yml +44 -2
  282. data/resources/locales/nb/numbers.yml +16 -3
  283. data/resources/locales/nb/units.yml +6 -28
  284. data/resources/locales/nl/calendars.yml +110 -9
  285. data/resources/locales/nl/currencies.yml +640 -0
  286. data/resources/locales/nl/languages.yml +68 -8
  287. data/resources/locales/nl/numbers.yml +25 -12
  288. data/resources/locales/nl/units.yml +14 -28
  289. data/resources/locales/pl/calendars.yml +53 -6
  290. data/resources/locales/pl/currencies.yml +1100 -0
  291. data/resources/locales/pl/languages.yml +13 -6
  292. data/resources/locales/pl/lists.yml +2 -2
  293. data/resources/locales/pl/numbers.yml +18 -5
  294. data/resources/locales/pl/units.yml +51 -92
  295. data/resources/locales/pt/calendars.yml +121 -9
  296. data/resources/locales/pt/currencies.yml +904 -0
  297. data/resources/locales/pt/languages.yml +5 -3
  298. data/resources/locales/pt/numbers.yml +17 -4
  299. data/resources/locales/pt/units.yml +0 -28
  300. data/resources/locales/ro/calendars.yml +278 -0
  301. data/resources/locales/ro/currencies.yml +946 -0
  302. data/resources/locales/ro/languages.yml +576 -0
  303. data/resources/locales/ro/layout.yml +4 -0
  304. data/resources/locales/ro/lists.yml +7 -0
  305. data/resources/locales/ro/numbers.yml +58 -0
  306. data/resources/locales/ro/plurals.yml +3 -0
  307. data/resources/locales/ro/units.yml +136 -0
  308. data/resources/locales/ru/calendars.yml +72 -12
  309. data/resources/locales/ru/currencies.yml +1061 -0
  310. data/resources/locales/ru/languages.yml +51 -6
  311. data/resources/locales/ru/numbers.yml +21 -5
  312. data/resources/locales/ru/units.yml +0 -28
  313. data/resources/locales/sk/calendars.yml +275 -0
  314. data/resources/locales/sk/currencies.yml +713 -0
  315. data/resources/locales/sk/languages.yml +576 -0
  316. data/resources/locales/sk/layout.yml +4 -0
  317. data/resources/locales/sk/lists.yml +7 -0
  318. data/resources/locales/sk/numbers.yml +58 -0
  319. data/resources/locales/sk/plurals.yml +3 -0
  320. data/resources/locales/sk/units.yml +136 -0
  321. data/resources/locales/sq/calendars.yml +188 -0
  322. data/resources/locales/sq/currencies.yml +56 -0
  323. data/resources/locales/sq/languages.yml +17 -0
  324. data/resources/locales/sq/layout.yml +4 -0
  325. data/resources/locales/sq/lists.yml +7 -0
  326. data/resources/locales/sq/numbers.yml +43 -0
  327. data/resources/locales/sq/plurals.yml +3 -0
  328. data/resources/locales/sq/units.yml +73 -0
  329. data/resources/locales/sr/calendars.yml +285 -0
  330. data/resources/locales/sr/currencies.yml +1494 -0
  331. data/resources/locales/sr/languages.yml +513 -0
  332. data/resources/locales/sr/layout.yml +4 -0
  333. data/resources/locales/sr/lists.yml +7 -0
  334. data/resources/locales/sr/numbers.yml +59 -0
  335. data/resources/locales/sr/plurals.yml +5 -0
  336. data/resources/locales/sr/units.yml +164 -0
  337. data/resources/locales/sv/calendars.yml +59 -1
  338. data/resources/locales/sv/currencies.yml +919 -0
  339. data/resources/locales/sv/languages.yml +47 -2
  340. data/resources/locales/sv/numbers.yml +27 -12
  341. data/resources/locales/sv/units.yml +4 -32
  342. data/resources/locales/ta/calendars.yml +264 -0
  343. data/resources/locales/ta/currencies.yml +346 -0
  344. data/resources/locales/ta/languages.yml +512 -0
  345. data/resources/locales/ta/layout.yml +4 -0
  346. data/resources/locales/ta/lists.yml +7 -0
  347. data/resources/locales/ta/numbers.yml +57 -0
  348. data/resources/locales/ta/plurals.yml +3 -0
  349. data/resources/locales/ta/units.yml +108 -0
  350. data/resources/locales/th/calendars.yml +125 -27
  351. data/resources/locales/th/currencies.yml +602 -0
  352. data/resources/locales/th/languages.yml +70 -5
  353. data/resources/locales/th/numbers.yml +24 -11
  354. data/resources/locales/th/units.yml +0 -28
  355. data/resources/locales/tr/calendars.yml +62 -12
  356. data/resources/locales/tr/currencies.yml +571 -0
  357. data/resources/locales/tr/languages.yml +94 -29
  358. data/resources/locales/tr/numbers.yml +19 -6
  359. data/resources/locales/tr/units.yml +1 -29
  360. data/resources/locales/uk/calendars.yml +52 -0
  361. data/resources/locales/uk/currencies.yml +799 -0
  362. data/resources/locales/uk/languages.yml +57 -2
  363. data/resources/locales/uk/numbers.yml +18 -5
  364. data/resources/locales/uk/units.yml +0 -28
  365. data/resources/locales/ur/calendars.yml +96 -32
  366. data/resources/locales/ur/currencies.yml +360 -0
  367. data/resources/locales/ur/languages.yml +49 -32
  368. data/resources/locales/ur/numbers.yml +13 -13
  369. data/resources/locales/ur/units.yml +28 -56
  370. data/resources/locales/zh-Hant/calendars.yml +59 -1
  371. data/resources/locales/zh-Hant/currencies.yml +602 -0
  372. data/resources/locales/zh-Hant/languages.yml +74 -8
  373. data/resources/locales/zh-Hant/numbers.yml +17 -4
  374. data/resources/locales/zh-Hant/units.yml +0 -28
  375. data/resources/locales/zh/calendars.yml +95 -35
  376. data/resources/locales/zh/currencies.yml +602 -0
  377. data/resources/locales/zh/languages.yml +116 -46
  378. data/resources/locales/zh/numbers.yml +20 -7
  379. data/resources/locales/zh/units.yml +6 -34
  380. data/resources/shared/currency_digits_and_rounding.yml +187 -0
  381. data/spec/bidi/bidi_spec.rb +1 -1
  382. data/spec/collation/tailoring_spec.rb +29 -25
  383. data/spec/formatters/calendars/datetime_formatter_spec.rb +50 -2
  384. data/spec/formatters/calendars/timespan_formatter_spec.rb +52 -8
  385. data/spec/formatters/numbers/abbreviated/abbreviated_number_formatter_spec.rb +81 -0
  386. data/spec/formatters/numbers/abbreviated/long_decimal_formatter_spec.rb +37 -0
  387. data/spec/formatters/numbers/abbreviated/short_decimal_formatter_spec.rb +37 -0
  388. data/spec/formatters/numbers/currency_formatter_spec.rb +10 -1
  389. data/spec/localized/localized_date_spec.rb +11 -11
  390. data/spec/localized/localized_datetime_spec.rb +27 -3
  391. data/spec/localized/localized_number_spec.rb +34 -6
  392. data/spec/localized/localized_time_spec.rb +1 -1
  393. data/spec/readme_spec.rb +24 -3
  394. data/spec/shared/currencies_spec.rb +7 -9
  395. data/spec/spec_helper.rb +7 -0
  396. data/spec/tokenizers/base_spec.rb +71 -21
  397. data/spec/tokenizers/calendars/additional_date_format_selector_spec.rb +131 -0
  398. data/spec/tokenizers/calendars/datetime_tokenizer_spec.rb +54 -27
  399. data/spec/tokenizers/calendars/time_tokenizer_spec.rb +16 -16
  400. data/spec/tokenizers/numbers/number_tokenizer_spec.rb +9 -21
  401. data/spec/utils/yaml/yaml_spec.rb +21 -16
  402. data/spec/utils_spec.rb +6 -2
  403. metadata +218 -37
@@ -82,8 +82,9 @@
82
82
  :chn: żargon Chinook
83
83
  :cho: choctaw
84
84
  :chp: chipewyan
85
- :chr: czirokezki
85
+ :chr: czirokeski
86
86
  :chy: język Czejenów
87
+ :ckb: sorani kurdyjski
87
88
  :cmc: czam
88
89
  :co: korsykański
89
90
  :cop: koptyjski
@@ -125,12 +126,15 @@
125
126
  :el: grecki
126
127
  :elx: elamicki
127
128
  :en: angielski
129
+ :en-AU: australijski angielski
128
130
  :en-CA: kanadyjski angielski
129
131
  :en-GB: brytyjski angielski
130
132
  :en-US: angielski (USA)
131
133
  :enm: średnioangielski
132
134
  :eo: esperanto
133
135
  :es: hiszpański
136
+ :es-419: amerykański hiszpański
137
+ :es-ES: europejski hiszpański
134
138
  :et: estoński
135
139
  :eu: baskijski
136
140
  :ewo: ewondo
@@ -146,12 +150,13 @@
146
150
  :fon: fon
147
151
  :fr: francuski
148
152
  :fr-CA: kanadyjski francuski
153
+ :fr-CH: szwajcarski francuski
149
154
  :frm: średniofrancuski
150
155
  :fro: starofrancuski
151
156
  :frr: północnofryzyjski
152
157
  :frs: fryzyjski wschodni
153
158
  :fur: friulijski
154
- :fy: fryzyjski
159
+ :fy: zachodniofryzyjski
155
160
  :ga: irlandzki
156
161
  :gaa: ga
157
162
  :gay: gayo
@@ -169,7 +174,7 @@
169
174
  :got: gocki
170
175
  :grb: grebo
171
176
  :grc: starogrecki
172
- :gsw: niemiecki (Szwajcaria)
177
+ :gsw: szwajcarski niemiecki
173
178
  :gu: gudźaracki
174
179
  :gv: manx
175
180
  :gwi: gwichʼin
@@ -281,6 +286,7 @@
281
286
  :mdf: moksha
282
287
  :mdr: mandar
283
288
  :men: mende
289
+ :mfe: kreolski Mauritiusa
284
290
  :mg: malgaski
285
291
  :mga: średnioirlandzki
286
292
  :mh: marshall
@@ -362,9 +368,10 @@
362
368
  :pon: ponpejski
363
369
  :pra: prakryty
364
370
  :pro: staroprowansalski
365
- :ps: paszto
371
+ :ps: pasztuński
366
372
  :pt: portugalski
367
- :pt-PT: portugalski (Półwysep Iberyjski)
373
+ :pt-BR: brazylijski portugalski
374
+ :pt-PT: europejski portugalski
368
375
  :qu: keczua
369
376
  :raj: radźasthani
370
377
  :rap: rapanui
@@ -468,7 +475,7 @@
468
475
  :uga: ugarycki
469
476
  :uk: ukraiński
470
477
  :umb: umbundu
471
- :und: nieznany lub niepoprawny język
478
+ :und: nieznany język
472
479
  :ur: urdu
473
480
  :uz: uzbecki
474
481
  :vai: wai
@@ -3,5 +3,5 @@
3
3
  :lists:
4
4
  2: ! '{0} i {1}'
5
5
  :end: ! '{0} i {1}'
6
- :middle: ! '{0}; {1}'
7
- :start: ! '{0}; {1}'
6
+ :middle: ! '{0}, {1}'
7
+ :start: ! '{0}, {1}'
@@ -4,7 +4,7 @@
4
4
  :formats:
5
5
  :currency:
6
6
  :patterns:
7
- :default: ! '#,##0.00 ¤'
7
+ :default: ! '#,##0.00 ¤;(#,##0.00 ¤)'
8
8
  :unit:
9
9
  :few: ! '{0} {1}'
10
10
  :many: ! '{0} {1}'
@@ -13,17 +13,30 @@
13
13
  :decimal:
14
14
  :patterns:
15
15
  :default: ! '#,##0.###'
16
+ :long:
17
+ 1000: 0 tysiąca
18
+ 10000: 00 tysiąca
19
+ 100000: 000 tysiąca
20
+ 1000000: 0 miliona
21
+ 10000000: 00 miliona
22
+ 100000000: 000 miliona
23
+ 1000000000: 0 miliarda
24
+ 10000000000: 00 miliarda
25
+ 100000000000: 000 miliarda
26
+ 1000000000000: 0 biliona
27
+ 10000000000000: 00 biliona
28
+ 100000000000000: 000 biliona
16
29
  :short:
17
- 1000: 0
30
+ 1000: 0 tys'.'
18
31
  10000: 00 tys'.'
19
32
  100000: 000 tys'.'
20
- 1000000: 0.0 mln
33
+ 1000000: 0 mln
21
34
  10000000: 00 mln
22
35
  100000000: 000 mln
23
- 1000000000: 0.0 mld
36
+ 1000000000: 0 mld
24
37
  10000000000: 00 mld
25
38
  100000000000: 000 mld
26
- 1000000000000: 0.0 bln
39
+ 1000000000000: 0 bln
27
40
  10000000000000: 00 bln
28
41
  100000000000000: 000 bln
29
42
  :percent:
@@ -3,203 +3,162 @@
3
3
  :units:
4
4
  :day:
5
5
  :default:
6
- 0: 0 dni
7
- 1: 1 dzień
8
6
  :few: ! '{0} dni'
9
7
  :many: ! '{0} dni'
10
8
  :one: ! '{0} dzień'
11
- :other: ! '{0} dni'
9
+ :other: ! '{0} dnia'
12
10
  :short:
13
- 0: 0 dni
14
- 1: 1 dzień
15
11
  :few: ! '{0} dni'
16
12
  :many: ! '{0} dni'
17
13
  :one: ! '{0} dzień'
18
- :other: ! '{0} dni'
14
+ :other: ! '{0} dnia'
19
15
  :day-future:
20
16
  :default:
21
- 0: Za 0 dni
22
- 1: Za 1 dzień
23
17
  :few: Za {0} dni
24
- :many: In {0} days
25
- :other: Za {0} dni
18
+ :many: Za {0} dni
19
+ :one: Za {0} dzień
20
+ :other: Za {0} dnia
26
21
  :day-past:
27
22
  :default:
28
- 0: 0 dni temu
29
- 1: 1 dzień temu
30
23
  :few: ! '{0} dni temu'
31
- :many: ! '{0} days ago'
32
- :other: ! '{0} dni temu'
24
+ :many: ! '{0} dni temu'
25
+ :one: ! '{0} dzień temu'
26
+ :other: ! '{0} dnia temu'
33
27
  :hour:
34
28
  :default:
35
- 0: 0 godzin
36
- 1: 1 godzina
37
29
  :few: ! '{0} godziny'
38
30
  :many: ! '{0} godzin'
39
31
  :one: ! '{0} godzina'
40
32
  :other: ! '{0} godzin'
41
33
  :short:
42
- 0: 0 godz.
43
- 1: 1 godz.
44
34
  :few: ! '{0} godz.'
45
35
  :many: ! '{0} godz.'
46
36
  :one: ! '{0} godz.'
47
37
  :other: ! '{0} godz.'
48
38
  :hour-future:
49
39
  :default:
50
- 0: Za 0 godzin
51
- 1: Za 1 godzinę
52
40
  :few: Za {0} godziny
53
- :many: In {0} hours
54
- :other: Za {0} godzin
41
+ :many: Za {0} godzin
42
+ :one: Za {0} godzinę
43
+ :other: Za {0} godziny
55
44
  :hour-past:
56
45
  :default:
57
- 0: 0 godzin temu
58
- 1: 1 godzinę temu
59
46
  :few: ! '{0} godziny temu'
60
- :many: ! '{0} hours ao'
61
- :other: ! '{0} godzin temu'
47
+ :many: ! '{0} godzin temu'
48
+ :one: ! '{0} godzinę temu'
49
+ :other: ! '{0} godziny temu'
62
50
  :minute:
63
51
  :default:
64
- 0: 0 minut
65
- 1: 1 minuta
66
52
  :few: ! '{0} minuty'
67
53
  :many: ! '{0} minut'
68
54
  :one: ! '{0} minuta'
69
- :other: ! '{0} minut'
55
+ :other: ! '{0} minuty'
70
56
  :short:
71
- 0: 0 min
72
- 1: 1 min
73
- :few: ! '{0} min'
57
+ :few: ! '{0} min.'
74
58
  :many: ! '{0} min.'
75
59
  :one: ! '{0} min.'
76
- :other: ! '{0} min'
60
+ :other: ! '{0} min.'
77
61
  :minute-future:
78
62
  :default:
79
- 0: Za 0 minut
80
- 1: Za 1 minutę
81
63
  :few: Za {0} minuty
82
- :many: In {0} minutes
83
- :other: Za {0} minut
64
+ :many: Za {0} minut
65
+ :one: Za {0} minutę
66
+ :other: Za {0} minuty
84
67
  :minute-past:
85
68
  :default:
86
- 0: 0 minut temu
87
- 1: 1 minutę temu
88
69
  :few: ! '{0} minuty temu'
89
- :many: ! '{0} minutes ago'
90
- :other: ! '{0} minut temu'
70
+ :many: ! '{0} minut temu'
71
+ :one: ! '{0} minutę temu'
72
+ :other: ! '{0} minuty temu'
91
73
  :month:
92
74
  :default:
93
- 0: 0 miesięcy
94
- 1: 1 miesiąc
95
75
  :few: ! '{0} miesiące'
96
76
  :many: ! '{0} miesięcy'
97
77
  :one: ! '{0} miesiąc'
98
- :other: ! '{0} miesięcy'
78
+ :other: ! '{0} miesiąca'
99
79
  :short:
100
- 0: 0 mies.
101
- 1: 1 mies.
102
80
  :few: ! '{0} mies.'
103
81
  :many: ! '{0} mies.'
104
82
  :one: ! '{0} mies.'
105
83
  :other: ! '{0} mies.'
106
84
  :month-future:
107
85
  :default:
108
- 0: Za 0 miesięcy
109
- 1: Za 1 miesiąc
110
86
  :few: Za {0} miesiące
111
- :many: In {0} months
112
- :other: Za {0} miesięcy
87
+ :many: Za {0} miesięcy
88
+ :one: Za {0} miesiąc
89
+ :other: Za {0} miesiąca
113
90
  :month-past:
114
91
  :default:
115
- 0: 0 miesięcy temu
116
- 1: 1 miesiąc temu
117
92
  :few: ! '{0} miesiące temu'
118
- :many: ! '{0} months ago'
119
- :other: ! '{0} miesięcy temu'
93
+ :many: ! '{0} miesięcy temu'
94
+ :one: ! '{0} miesiąc temu'
95
+ :other: ! '{0} miesiąca temu'
120
96
  :second:
121
97
  :default:
122
- 0: 0 sekund
123
- 1: 1 sekunda
124
98
  :few: ! '{0} sekundy'
125
99
  :many: ! '{0} sekund'
126
100
  :one: ! '{0} sekunda'
127
101
  :other: ! '{0} sekund'
128
102
  :short:
129
- 0: 0 s
130
- 1: 1 s
131
103
  :few: ! '{0} sek.'
132
104
  :many: ! '{0} sek.'
133
105
  :one: ! '{0} sek.'
134
- :other: ! '{0} s'
106
+ :other: ! '{0} sek.'
135
107
  :second-future:
136
108
  :default:
137
- 0: Za 0 sekund
138
- 1: Za 1 sekundę
139
109
  :few: Za {0} sekundy
140
- :many: In {0} seconds
141
- :other: Za {0} sekund
110
+ :many: Za {0} sekund
111
+ :one: Za {0} sekundę
112
+ :other: Za {0} sekundy
142
113
  :second-past:
143
114
  :default:
144
- 0: 0 sekund temu
145
- 1: 1 sekundę temu
146
115
  :few: ! '{0} sekundy temu'
147
- :many: ! '{0} seconds ago'
148
- :other: ! '{0} sekund temu'
116
+ :many: ! '{0} sekund temu'
117
+ :one: ! '{0} sekundę temu'
118
+ :other: ! '{0} sekundy temu'
149
119
  :week:
150
120
  :default:
151
- 0: 0 tygodni
152
- 1: 1 tydzień
153
121
  :few: ! '{0} tygodnie'
154
122
  :many: ! '{0} tygodni'
155
123
  :one: ! '{0} tydzień'
156
- :other: ! '{0} tygodni'
124
+ :other: ! '{0} tygodnia'
157
125
  :short:
158
- 0: 0 tyg.
159
- 1: 1 tydz.
160
126
  :few: ! '{0} tyg.'
161
127
  :many: ! '{0} tyg.'
162
128
  :one: ! '{0} tydz.'
163
129
  :other: ! '{0} tyg.'
164
130
  :week-future:
165
131
  :default:
166
- 0: Za 0 tygodni
167
- 1: Za 1 tydzień
168
132
  :few: Za {0} tygodnie
169
- :many: In {0} weeks
170
- :other: Za {0} tygodni
133
+ :many: Za {0} tygodni
134
+ :one: Za {0} tydzień
135
+ :other: Za {0} tygodnia
171
136
  :week-past:
172
137
  :default:
173
- 0: 0 tygodni temu
174
- 1: 1 tydzień temu
175
138
  :few: ! '{0} tygodnie temu'
176
- :many: ! '{0} weeks ago'
177
- :other: ! '{0} tygodni temu'
139
+ :many: ! '{0} tygodni temu'
140
+ :one: ! '{0} tydzień temu'
141
+ :other: ! '{0} tygodnia temu'
178
142
  :year:
179
143
  :default:
180
- 0: 0 lat
181
- 1: 1 rok
182
144
  :few: ! '{0} lata'
183
145
  :many: ! '{0} lat'
184
146
  :one: ! '{0} rok'
185
147
  :other: ! '{0} roku'
186
148
  :short:
187
- 0: 0 lat
188
- 1: 1 rok
189
149
  :few: ! '{0} lata'
190
150
  :many: ! '{0} lat'
191
151
  :one: ! '{0} rok'
152
+ :other: ! '{0} roku'
192
153
  :year-future:
193
154
  :default:
194
- 0: Za 0 lat
195
- 1: Za 1 rok
196
155
  :few: Za {0} lata
197
- :many: In {0} years
198
- :other: Za {0} lat
156
+ :many: Za {0} lat
157
+ :one: Za {0} rok
158
+ :other: Za {0} roku
199
159
  :year-past:
200
160
  :default:
201
- 0: 0 lat temu
202
- 1: 1 rok temu
203
161
  :few: ! '{0} lata temu'
204
- :many: ! '{0} years ago'
205
- :other: ! '{0} lat temu'
162
+ :many: ! '{0} lat temu'
163
+ :one: ! '{0} rok temu'
164
+ :other: ! '{0} roku temu'
@@ -2,6 +2,41 @@
2
2
  :pt:
3
3
  :calendars:
4
4
  :gregorian:
5
+ :additional_formats:
6
+ :Ed: E, d
7
+ :H: HH
8
+ :HHmm: HH:mm
9
+ :HHmmss: HH:mm:ss
10
+ :Hm: HH:mm
11
+ :Hms: HH:mm:ss
12
+ :M: L
13
+ :MEd: E, dd/MM
14
+ :MMM: LLL
15
+ :MMMEd: E, d 'de' MMM
16
+ :MMMd: d 'de' MMM
17
+ :MMdd: dd/MM
18
+ :Md: d/M
19
+ :d: d
20
+ :h: h a
21
+ :hm: h:mm a
22
+ :hms: h:mm:ss a
23
+ :ms: mm:ss
24
+ :y: y
25
+ :yM: MM/yyyy
26
+ :yMEd: E, dd/MM/yyyy
27
+ :yMMM: MMM 'de' y
28
+ :yMMMEd: E, d 'de' MMM 'de' y
29
+ :yMMMd: d 'de' MMM 'de' y
30
+ :yMd: dd/MM/yyyy
31
+ :yQQQ: y QQQ
32
+ :yQQQQ: y QQQQ
33
+ :yyMM: MM/yy
34
+ :yyMMM: MMM 'de' yy
35
+ :yyMMMEd: E, d 'de' MMM 'de' yy
36
+ :yyMMMd: d 'de' MMM 'de' yy
37
+ :yyQQQ: QQQ yy
38
+ :yyyyMM: MM/yyyy
39
+ :yyyyMMM: MMM 'de' y
5
40
  :days:
6
41
  :format:
7
42
  :abbreviated:
@@ -12,7 +47,22 @@
12
47
  :thu: qui
13
48
  :tue: ter
14
49
  :wed: qua
15
- :narrow: :calendars.gregorian.days.stand-alone.narrow
50
+ :narrow:
51
+ :fri: S
52
+ :mon: S
53
+ :sat: S
54
+ :sun: D
55
+ :thu: Q
56
+ :tue: T
57
+ :wed: Q
58
+ :short:
59
+ :fri: sex
60
+ :mon: seg
61
+ :sat: sáb
62
+ :sun: dom
63
+ :thu: qui
64
+ :tue: ter
65
+ :wed: qua
16
66
  :wide:
17
67
  :fri: sexta-feira
18
68
  :mon: segunda-feira
@@ -22,7 +72,14 @@
22
72
  :tue: terça-feira
23
73
  :wed: quarta-feira
24
74
  :stand-alone:
25
- :abbreviated: :calendars.gregorian.days.format.abbreviated
75
+ :abbreviated:
76
+ :fri: sex
77
+ :mon: seg
78
+ :sat: sáb
79
+ :sun: dom
80
+ :thu: qui
81
+ :tue: ter
82
+ :wed: qua
26
83
  :narrow:
27
84
  :fri: S
28
85
  :mon: S
@@ -31,7 +88,22 @@
31
88
  :thu: Q
32
89
  :tue: T
33
90
  :wed: Q
34
- :wide: :calendars.gregorian.days.format.wide
91
+ :short:
92
+ :fri: sex
93
+ :mon: seg
94
+ :sat: sáb
95
+ :sun: dom
96
+ :thu: qui
97
+ :tue: ter
98
+ :wed: qua
99
+ :wide:
100
+ :fri: sexta-feira
101
+ :mon: segunda-feira
102
+ :sat: sábado
103
+ :sun: domingo
104
+ :thu: quinta-feira
105
+ :tue: terça-feira
106
+ :wed: quarta-feira
35
107
  :eras:
36
108
  :abbr:
37
109
  0: a.C.
@@ -77,9 +149,9 @@
77
149
  :time:
78
150
  :default: :calendars.gregorian.formats.time.medium
79
151
  :full:
80
- :pattern: HH'h'mm'min'ss's' zzzz
152
+ :pattern: HH:mm:ss zzzz
81
153
  :long:
82
- :pattern: HH'h'mm'min'ss's' z
154
+ :pattern: HH:mm:ss z
83
155
  :medium:
84
156
  :pattern: HH:mm:ss
85
157
  :short:
@@ -99,7 +171,19 @@
99
171
  7: jul
100
172
  8: ago
101
173
  9: set
102
- :narrow: :calendars.gregorian.months.stand-alone.narrow
174
+ :narrow:
175
+ 1: J
176
+ 10: O
177
+ 11: N
178
+ 12: D
179
+ 2: F
180
+ 3: M
181
+ 4: A
182
+ 5: M
183
+ 6: J
184
+ 7: J
185
+ 8: A
186
+ 9: S
103
187
  :wide:
104
188
  1: janeiro
105
189
  10: outubro
@@ -114,7 +198,19 @@
114
198
  8: agosto
115
199
  9: setembro
116
200
  :stand-alone:
117
- :abbreviated: :calendars.gregorian.months.format.abbreviated
201
+ :abbreviated:
202
+ 1: jan
203
+ 10: out
204
+ 11: nov
205
+ 12: dez
206
+ 2: fev
207
+ 3: mar
208
+ 4: abr
209
+ 5: mai
210
+ 6: jun
211
+ 7: jul
212
+ 8: ago
213
+ 9: set
118
214
  :narrow:
119
215
  1: J
120
216
  10: O
@@ -128,7 +224,19 @@
128
224
  7: J
129
225
  8: A
130
226
  9: S
131
- :wide: :calendars.gregorian.months.format.wide
227
+ :wide:
228
+ 1: janeiro
229
+ 10: outubro
230
+ 11: novembro
231
+ 12: dezembro
232
+ 2: fevereiro
233
+ 3: março
234
+ 4: abril
235
+ 5: maio
236
+ 6: junho
237
+ 7: julho
238
+ 8: agosto
239
+ 9: setembro
132
240
  :periods:
133
241
  :format:
134
242
  :abbreviated:
@@ -168,7 +276,11 @@
168
276
  3: 3º trimestre
169
277
  4: 4º trimestre
170
278
  :stand-alone:
171
- :abbreviated: :calendars.gregorian.quarters.format.abbreviated
279
+ :abbreviated:
280
+ 1: T1
281
+ 2: T2
282
+ 3: T3
283
+ 4: T4
172
284
  :narrow:
173
285
  1: 1
174
286
  2: 2