twitter_cldr 1.9.1 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -0,0 +1,66 @@
1
+ ---
2
+ :be:
3
+ :currencies:
4
+ :AUD:
5
+ :one: аўстралійскі даляр
6
+ :symbol: A$
7
+ :BRL:
8
+ :one: бразільскі рэал
9
+ :symbol: R$
10
+ :BYB:
11
+ :symbol: Руб
12
+ :BYR:
13
+ :one: беларускі рубель
14
+ :CAD:
15
+ :symbol: CA$
16
+ :CNY:
17
+ :one: кітайскі юань
18
+ :symbol: CN¥
19
+ :ERN:
20
+ :one: эрытрэйская накфа
21
+ :EUR:
22
+ :one: еўра
23
+ :symbol: €
24
+ :GBP:
25
+ :one: англійскі фунт
26
+ :symbol: £
27
+ :HKD:
28
+ :symbol: HK$
29
+ :ILS:
30
+ :symbol: ₪
31
+ :INR:
32
+ :one: індыйская рупія
33
+ :symbol: ₹
34
+ :JPY:
35
+ :one: японская іена
36
+ :symbol: ¥
37
+ :KRW:
38
+ :symbol: ₩
39
+ :MXN:
40
+ :symbol: MX$
41
+ :NOK:
42
+ :one: нарвэская крона
43
+ :NZD:
44
+ :symbol: NZ$
45
+ :RUB:
46
+ :one: рускі рубель
47
+ :symbol: рас. руб.
48
+ :THB:
49
+ :symbol: ฿
50
+ :TWD:
51
+ :symbol: NT$
52
+ :USD:
53
+ :one: долар ЗША
54
+ :symbol: $
55
+ :VND:
56
+ :symbol: ₫
57
+ :XAF:
58
+ :symbol: FCFA
59
+ :XCD:
60
+ :symbol: EC$
61
+ :XOF:
62
+ :symbol: CFA
63
+ :XPF:
64
+ :symbol: CFPF
65
+ :XXX:
66
+ :one: невядомая або недапушчальная валюта
@@ -0,0 +1,149 @@
1
+ ---
2
+ :be:
3
+ :languages:
4
+ :ab: абхазская
5
+ :ady: адыгейская
6
+ :af: афрыкаанс
7
+ :afa: афра-азіяцкая мова
8
+ :akk: акадзкая
9
+ :ale: алеуцкая
10
+ :am: амхарская
11
+ :an: арагонская
12
+ :ang: стараанглійская
13
+ :ar: арабская
14
+ :arc: арамейская
15
+ :art: штучная мова
16
+ :as: асамская
17
+ :ast: астурыйская
18
+ :aus: аўстралійская
19
+ :av: аварская
20
+ :ay: аймара
21
+ :az: азербайджанская
22
+ :ba: башкірская
23
+ :be: беларуская
24
+ :bg: балгарская
25
+ :bh: біхары
26
+ :bn: бенгальская
27
+ :br: брэтонская
28
+ :bs: баснійская
29
+ :bua: бурацкая
30
+ :ca: каталонская
31
+ :cai: мова індзейцаў Цэнтральнай Амерыкі
32
+ :cau: каўказская мова
33
+ :ce: чачэнская
34
+ :cel: кельцкая мова
35
+ :cop: копцкая
36
+ :cs: чэшская
37
+ :cv: чувашская
38
+ :cy: валійская
39
+ :da: дацкая
40
+ :de: нямецкая
41
+ :de-AT: нямецкая (аўстр.)
42
+ :de-CH: нямецкая (швейц.)
43
+ :egy: стараэгіпецкая
44
+ :el: грэцкая
45
+ :en: англійская
46
+ :en-AU: англійская (аўстрал.)
47
+ :en-CA: англійская (канад.)
48
+ :en-GB: англійская (Вялікабрытанія)
49
+ :en-US: англійская (ЗША)
50
+ :eo: эсперанта
51
+ :es: іспанская
52
+ :es-419: іспанская (лацінаамер.)
53
+ :et: эстонская
54
+ :eu: баскская
55
+ :fa: фарсі
56
+ :fi: фінская
57
+ :fil: тагальская
58
+ :fo: фарэрская
59
+ :fr: французская
60
+ :fr-CA: французская (канад.)
61
+ :fr-CH: французская (швейц.)
62
+ :fro: старафранцузская
63
+ :fy: фрызская
64
+ :ga: ірландская
65
+ :gd: шатландская гэльская
66
+ :gl: галісійская
67
+ :gn: гуарані
68
+ :grc: старагрэцкая
69
+ :gu: гуяраці
70
+ :he: іўрыт
71
+ :hi: хіндзі
72
+ :hr: харвацкая
73
+ :hu: венгерская
74
+ :hy: армянская
75
+ :ia: інтэрлінгва
76
+ :id: інданезійская
77
+ :ie: інтэрлінгве
78
+ :is: ісландская
79
+ :it: італьянская
80
+ :ja: японская
81
+ :jv: яванская
82
+ :ka: грузінская
83
+ :kk: казахская
84
+ :kn: каннада
85
+ :ko: карэйская
86
+ :ku: курдская
87
+ :la: лацінская
88
+ :ln: лінгала
89
+ :lo: лаоская
90
+ :lt: літоўская
91
+ :lv: латышская
92
+ :map: аўстранезійская
93
+ :mk: македонская
94
+ :ml: малаяламская
95
+ :mn: мангольская
96
+ :mo: малдаўская
97
+ :mr: маратхі
98
+ :ms: малайская
99
+ :mt: мальтыйская
100
+ :nb: нарвэская букмал
101
+ :ne: непальская
102
+ :nl: галандская
103
+ :nl-BE: фламандская
104
+ :nn: нарвежская (нюнорск)
105
+ :no: нарвежская
106
+ :oc: правансальская
107
+ :pa: панджабі
108
+ :pl: польская
109
+ :ps: пушту
110
+ :pt: партугальская
111
+ :pt-BR: партугальская (бразіл.)
112
+ :ro: румынская
113
+ :ru: руская
114
+ :sa: санскрыт
115
+ :sah: якуцкая
116
+ :sd: сіндхі
117
+ :sgn: знакавая мова
118
+ :sh: сербска-харвацкая
119
+ :si: сінгальская
120
+ :sk: славацкая
121
+ :sl: славенская
122
+ :sla: славянская мова
123
+ :so: самалійская
124
+ :sq: албанская
125
+ :sr: сербская
126
+ :su: суданская
127
+ :sv: шведская
128
+ :sw: суахілі
129
+ :ta: тамільская
130
+ :te: тэлугу
131
+ :th: тайская
132
+ :ti: тыгрынья
133
+ :tk: туркменская
134
+ :tlh: клінгон
135
+ :tr: турэцкая
136
+ :tt: татарская
137
+ :tut: алтайская мова
138
+ :ug: уйгурская
139
+ :uk: украінская
140
+ :und: невядомая мова
141
+ :ur: урду
142
+ :uz: узбекская
143
+ :vi: в'етнамская
144
+ :xh: хоса
145
+ :yi: ідыш
146
+ :zh: кітайская
147
+ :zh-Hans: спрошчаная кітайская
148
+ :zh-Hant: традыцыйная кітайская
149
+ :zu: зулу
@@ -0,0 +1,4 @@
1
+ ---
2
+ :be:
3
+ :layout:
4
+ :orientation: {}
@@ -0,0 +1,7 @@
1
+ ---
2
+ :be:
3
+ :lists:
4
+ 2: ! '{0}, {1}'
5
+ :end: ! '{0}, {1}'
6
+ :middle: ! '{0}, {1}'
7
+ :start: ! '{0}, {1}'
@@ -0,0 +1,43 @@
1
+ ---
2
+ :be:
3
+ :numbers:
4
+ :formats:
5
+ :currency:
6
+ :patterns:
7
+ :default: ¤#,##0.00
8
+ :unit:
9
+ :other: ! '{0} {1}'
10
+ :decimal:
11
+ :patterns:
12
+ :default: ! '#,##0.###'
13
+ :short:
14
+ 1000: 0K
15
+ 10000: 00K
16
+ 100000: 000K
17
+ 1000000: 0M
18
+ 10000000: 00M
19
+ 100000000: 000M
20
+ 1000000000: 0G
21
+ 10000000000: 00G
22
+ 100000000000: 000G
23
+ 1000000000000: 0T
24
+ 10000000000000: 00T
25
+ 100000000000000: 000T
26
+ :percent:
27
+ :patterns:
28
+ :default: ! '#,##0%'
29
+ :scientific:
30
+ :patterns:
31
+ :default: ! '#E0'
32
+ :symbols:
33
+ :alias: ''
34
+ :decimal: ! ','
35
+ :exponential: E
36
+ :group:  
37
+ :infinity: ∞
38
+ :list: ;
39
+ :minus_sign: ! '-'
40
+ :nan: NaN
41
+ :per_mille: ‰
42
+ :percent_sign: ! '%'
43
+ :plus_sign: +
@@ -0,0 +1,5 @@
1
+ ---
2
+ :be: ! '{ :be => { :i18n => {:plural => { :keys => [:one, :few, :many, :other], :rule
3
+ => lambda { |n| n % 10 == 1 && n % 100 != 11 ? :one : [2, 3, 4].include?(n % 10)
4
+ && ![12, 13, 14].include?(n % 100) ? :few : n % 10 == 0 || [5, 6, 7, 8, 9].include?(n
5
+ % 10) || [11, 12, 13, 14].include?(n % 100) ? :many : :other } } } } }'
@@ -0,0 +1,87 @@
1
+ ---
2
+ :be:
3
+ :units:
4
+ :day:
5
+ :default:
6
+ :few: ! '{0} дні'
7
+ :many: ! '{0} дзён'
8
+ :one: ! '{0} дзень'
9
+ :other: ! '{0} дня'
10
+ :day-future:
11
+ :default:
12
+ :other: +{0} d
13
+ :day-past:
14
+ :default:
15
+ :other: -{0} d
16
+ :hour:
17
+ :default:
18
+ :few: ! '{0} гадзіны'
19
+ :many: ! '{0} гадзін'
20
+ :one: ! '{0} гадзіна'
21
+ :other: ! '{0} гадзіны'
22
+ :hour-future:
23
+ :default:
24
+ :other: +{0} h
25
+ :hour-past:
26
+ :default:
27
+ :other: -{0} h
28
+ :minute:
29
+ :default:
30
+ :few: ! '{0} хвіліны'
31
+ :many: ! '{0} хвілін'
32
+ :one: ! '{0} хвіліна'
33
+ :other: ! '{0} хвіліны'
34
+ :minute-future:
35
+ :default:
36
+ :other: +{0} min
37
+ :minute-past:
38
+ :default:
39
+ :other: -{0} min
40
+ :month:
41
+ :default:
42
+ :few: ! '{0} месяца'
43
+ :many: ! '{0} месяцаў'
44
+ :one: ! '{0} месяц'
45
+ :other: ! '{0} месяца'
46
+ :month-future:
47
+ :default:
48
+ :other: +{0} m
49
+ :month-past:
50
+ :default:
51
+ :other: -{0} m
52
+ :second:
53
+ :default:
54
+ :few: ! '{0} сэкунды'
55
+ :many: ! '{0} сэкунд'
56
+ :one: ! '{0} сэкунда'
57
+ :other: ! '{0} сэкунды'
58
+ :second-future:
59
+ :default:
60
+ :other: +{0} s
61
+ :second-past:
62
+ :default:
63
+ :other: -{0} s
64
+ :week:
65
+ :default:
66
+ :few: ! '{0} тыдні'
67
+ :many: ! '{0} тыдняў'
68
+ :one: ! '{0} тыдзень'
69
+ :other: ! '{0} тыдня'
70
+ :week-future:
71
+ :default:
72
+ :other: +{0} w
73
+ :week-past:
74
+ :default:
75
+ :other: -{0} w
76
+ :year:
77
+ :default:
78
+ :few: ! '{0} гады'
79
+ :many: ! '{0} гадоў'
80
+ :one: ! '{0} год'
81
+ :other: ! '{0} году'
82
+ :year-future:
83
+ :default:
84
+ :other: +{0} y
85
+ :year-past:
86
+ :default:
87
+ :other: -{0} y
@@ -0,0 +1,220 @@
1
+ ---
2
+ :bg:
3
+ :calendars:
4
+ :gregorian:
5
+ :additional_formats:
6
+ :Ed: E, d
7
+ :H: HH
8
+ :Hm: HH:mm
9
+ :Hms: HH:mm:ss
10
+ :M: L
11
+ :MEd: E, d.MM
12
+ :MMM: LLL
13
+ :MMMEd: d MMM, E
14
+ :MMMMd: d MMMM
15
+ :MMMMdd: dd MMMM
16
+ :MMMd: d MMM
17
+ :MMdd: dd.MM
18
+ :Md: d.M
19
+ :d: d
20
+ :h: h
21
+ :hm: h:mm a
22
+ :hms: h:mm:ss a
23
+ :mmss: mm:ss
24
+ :ms: mm:ss
25
+ :y: y 'г'.
26
+ :yM: M.y 'г'.
27
+ :yMEd: E, d.MM.y 'г'.
28
+ :yMMM: MMM y 'г'.
29
+ :yMMMEd: E, d MMM y 'г'.
30
+ :yMMMd: dd MMM y
31
+ :yMd: dd.MM.yy
32
+ :yQQQ: QQQ y 'г'.
33
+ :yQQQQ: QQQQ y 'г'.
34
+ :yyMM: MM.yy
35
+ :yyQQQ: QQQ yy
36
+ :yyyy: y
37
+ :yyyyMM: MM.yyyy
38
+ :yyyyMMMM: MMMM y
39
+ :yyyyQQQQ: QQQQ y 'г'.
40
+ :days:
41
+ :format:
42
+ :abbreviated:
43
+ :fri: пт
44
+ :mon: пн
45
+ :sat: сб
46
+ :sun: нд
47
+ :thu: чт
48
+ :tue: вт
49
+ :wed: ср
50
+ :narrow: :calendars.gregorian.days.stand-alone.narrow
51
+ :short:
52
+ :fri: пт
53
+ :mon: пн
54
+ :sat: сб
55
+ :sun: нд
56
+ :thu: чт
57
+ :tue: вт
58
+ :wed: ср
59
+ :wide:
60
+ :fri: петък
61
+ :mon: понеделник
62
+ :sat: събота
63
+ :sun: неделя
64
+ :thu: четвъртък
65
+ :tue: вторник
66
+ :wed: сряда
67
+ :stand-alone:
68
+ :abbreviated: :calendars.gregorian.days.format.abbreviated
69
+ :narrow:
70
+ :fri: п
71
+ :mon: п
72
+ :sat: с
73
+ :sun: н
74
+ :thu: ч
75
+ :tue: в
76
+ :wed: с
77
+ :short:
78
+ :fri: пт
79
+ :mon: пн
80
+ :sat: сб
81
+ :sun: нд
82
+ :thu: чт
83
+ :tue: вт
84
+ :wed: ср
85
+ :wide: :calendars.gregorian.days.format.wide
86
+ :eras:
87
+ :abbr:
88
+ 0: пр. н. е.
89
+ 1: от н. е.
90
+ :name:
91
+ 0: пр.Хр.
92
+ 1: сл.Хр.
93
+ :narrow:
94
+ 0: ''
95
+ 1: сл.н.е.
96
+ :fields:
97
+ :day: Ден
98
+ :dayperiod: ден
99
+ :era: ера
100
+ :hour: час
101
+ :minute: минута
102
+ :month: месец
103
+ :second: секунда
104
+ :week: седмица
105
+ :weekday: Ден от седмицата
106
+ :year: година
107
+ :zone: зона
108
+ :formats:
109
+ :date:
110
+ :default: :calendars.gregorian.formats.date.medium
111
+ :full:
112
+ :pattern: dd MMMM y, EEEE
113
+ :long:
114
+ :pattern: dd MMMM y
115
+ :medium:
116
+ :pattern: dd.MM.yyyy
117
+ :short:
118
+ :pattern: dd.MM.yy
119
+ :datetime:
120
+ :default: :calendars.gregorian.formats.datetime.medium
121
+ :full:
122
+ :pattern: ! '{{date}}, {{time}}'
123
+ :long:
124
+ :pattern: ! '{{date}}, {{time}}'
125
+ :medium:
126
+ :pattern: ! '{{date}}, {{time}}'
127
+ :short:
128
+ :pattern: ! '{{date}}, {{time}}'
129
+ :time:
130
+ :default: :calendars.gregorian.formats.time.medium
131
+ :full:
132
+ :pattern: HH:mm:ss zzzz
133
+ :long:
134
+ :pattern: HH:mm:ss z
135
+ :medium:
136
+ :pattern: HH:mm:ss
137
+ :short:
138
+ :pattern: HH:mm
139
+ :months:
140
+ :format:
141
+ :abbreviated:
142
+ 1: ян.
143
+ 10: окт.
144
+ 11: ноем.
145
+ 12: дек.
146
+ 2: февр.
147
+ 3: март
148
+ 4: апр.
149
+ 5: май
150
+ 6: юни
151
+ 7: юли
152
+ 8: авг.
153
+ 9: септ.
154
+ :narrow: :calendars.gregorian.months.stand-alone.narrow
155
+ :wide:
156
+ 1: януари
157
+ 10: октомври
158
+ 11: ноември
159
+ 12: декември
160
+ 2: февруари
161
+ 3: март
162
+ 4: април
163
+ 5: май
164
+ 6: юни
165
+ 7: юли
166
+ 8: август
167
+ 9: септември
168
+ :stand-alone:
169
+ :abbreviated: :calendars.gregorian.months.format.abbreviated
170
+ :narrow:
171
+ 1: я
172
+ 10: о
173
+ 11: н
174
+ 12: д
175
+ 2: ф
176
+ 3: м
177
+ 4: а
178
+ 5: м
179
+ 6: ю
180
+ 7: ю
181
+ 8: а
182
+ 9: с
183
+ :wide: :calendars.gregorian.months.format.wide
184
+ :periods:
185
+ :format:
186
+ :abbreviated: :calendars.gregorian.dayPeriods.format.wide
187
+ :narrow: :calendars.gregorian.dayPeriods.format.abbreviated
188
+ :wide:
189
+ :am: пр. об.
190
+ :pm: сл. об.
191
+ :stand-alone: {}
192
+ :quarters:
193
+ :format:
194
+ :abbreviated:
195
+ 1: I трим.
196
+ 2: II трим.
197
+ 3: III трим.
198
+ 4: IV трим.
199
+ :narrow:
200
+ 1: 1
201
+ 2: 2
202
+ 3: 3
203
+ 4: 4
204
+ :wide:
205
+ 1: 1-во тримесечие
206
+ 2: 2-ро тримесечие
207
+ 3: 3-то тримесечие
208
+ 4: 4-то тримесечие
209
+ :stand-alone:
210
+ :abbreviated:
211
+ 1: 1 трим.
212
+ 2: 2 трим.
213
+ 3: 3 трим.
214
+ 4: 4 трим.
215
+ :narrow:
216
+ 1: 1
217
+ 2: 2
218
+ 3: 3
219
+ 4: 4
220
+ :wide: :calendars.gregorian.quarters.format.wide