twitter_cldr 3.0.0.beta1 → 3.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 (698) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +16 -2
  3. data/History.txt +9 -1
  4. data/README.md +297 -113
  5. data/Rakefile +97 -17
  6. data/lib/twitter_cldr/collation/collator.rb +12 -3
  7. data/lib/twitter_cldr/collation/trie_builder.rb +1 -1
  8. data/lib/twitter_cldr/{tokenizers/calendars → data_readers}/additional_date_format_selector.rb +6 -4
  9. data/lib/twitter_cldr/data_readers/calendar_data_reader.rb +91 -0
  10. data/lib/twitter_cldr/data_readers/data_reader.rb +32 -0
  11. data/lib/twitter_cldr/data_readers/date_data_reader.rb +26 -0
  12. data/lib/twitter_cldr/data_readers/date_time_data_reader.rb +41 -0
  13. data/lib/twitter_cldr/data_readers/number_data_reader.rb +142 -0
  14. data/lib/twitter_cldr/data_readers/time_data_reader.rb +26 -0
  15. data/lib/twitter_cldr/data_readers/timespan_data_reader.rb +122 -0
  16. data/lib/twitter_cldr/data_readers.rb +17 -0
  17. data/lib/twitter_cldr/formatters/calendars/{datetime_formatter.rb → date_time_formatter.rb} +27 -42
  18. data/lib/twitter_cldr/formatters/calendars/timespan_formatter.rb +3 -64
  19. data/lib/twitter_cldr/formatters/formatter.rb +39 -0
  20. data/lib/twitter_cldr/formatters/list_formatter.rb +22 -12
  21. data/lib/twitter_cldr/formatters/numbers/abbreviated/abbreviated_number_formatter.rb +5 -26
  22. data/lib/twitter_cldr/formatters/numbers/currency_formatter.rb +2 -11
  23. data/lib/twitter_cldr/formatters/numbers/decimal_formatter.rb +4 -2
  24. data/lib/twitter_cldr/formatters/numbers/number_formatter.rb +45 -27
  25. data/lib/twitter_cldr/formatters/numbers/percent_formatter.rb +3 -13
  26. data/lib/twitter_cldr/formatters/numbers/rbnf/formatters.rb +224 -0
  27. data/lib/twitter_cldr/formatters/numbers/rbnf/post_processors/chinese.rb +122 -0
  28. data/lib/twitter_cldr/formatters/numbers/rbnf/rule.rb +93 -0
  29. data/lib/twitter_cldr/formatters/numbers/rbnf/rule_group.rb +20 -0
  30. data/lib/twitter_cldr/formatters/numbers/rbnf/rule_parser.rb +86 -0
  31. data/lib/twitter_cldr/formatters/numbers/rbnf/rule_set.rb +259 -0
  32. data/lib/twitter_cldr/formatters/numbers/rbnf/substitution.rb +30 -0
  33. data/lib/twitter_cldr/formatters/numbers/rbnf.rb +127 -0
  34. data/lib/twitter_cldr/formatters/plurals/plural_formatter.rb +18 -6
  35. data/lib/twitter_cldr/formatters.rb +4 -5
  36. data/lib/twitter_cldr/localized/localized_array.rb +1 -1
  37. data/lib/twitter_cldr/localized/localized_date.rb +6 -3
  38. data/lib/twitter_cldr/localized/localized_datetime.rb +38 -15
  39. data/lib/twitter_cldr/localized/localized_number.rb +40 -24
  40. data/lib/twitter_cldr/localized/localized_object.rb +4 -4
  41. data/lib/twitter_cldr/localized/localized_string.rb +40 -7
  42. data/lib/twitter_cldr/localized/localized_time.rb +9 -2
  43. data/lib/twitter_cldr/localized/localized_timespan.rb +50 -5
  44. data/lib/twitter_cldr/normalization.rb +8 -19
  45. data/lib/twitter_cldr/parsers/parser.rb +50 -0
  46. data/lib/twitter_cldr/parsers/segmentation_parser.rb +137 -0
  47. data/lib/twitter_cldr/parsers/symbol_table.rb +30 -0
  48. data/lib/twitter_cldr/parsers/unicode_regex/character_class.rb +91 -0
  49. data/lib/twitter_cldr/parsers/unicode_regex/character_range.rb +39 -0
  50. data/lib/twitter_cldr/parsers/unicode_regex/character_set.rb +65 -0
  51. data/lib/twitter_cldr/parsers/unicode_regex/component.rb +50 -0
  52. data/lib/twitter_cldr/parsers/unicode_regex/literal.rb +83 -0
  53. data/lib/twitter_cldr/parsers/unicode_regex/unicode_string.rb +41 -0
  54. data/lib/twitter_cldr/parsers/unicode_regex_parser.rb +262 -0
  55. data/lib/twitter_cldr/parsers.rb +5 -1
  56. data/lib/twitter_cldr/resources/casefolder.rb.erb +64 -0
  57. data/lib/twitter_cldr/resources/casefolder_class_generator.rb +75 -0
  58. data/lib/twitter_cldr/resources/download.rb +10 -4
  59. data/lib/twitter_cldr/resources/icu_based_importer.rb +18 -0
  60. data/lib/twitter_cldr/resources/locales_resources_importer.rb +24 -13
  61. data/lib/twitter_cldr/resources/normalization_quick_check_importer.rb +1 -14
  62. data/lib/twitter_cldr/resources/rbnf_test_importer.rb +107 -0
  63. data/lib/twitter_cldr/resources/readme_renderer.rb +115 -0
  64. data/lib/twitter_cldr/resources/tailoring_importer.rb +2 -8
  65. data/lib/twitter_cldr/resources/uli/segment_exceptions_importer.rb +62 -0
  66. data/lib/twitter_cldr/resources/uli.rb +12 -0
  67. data/lib/twitter_cldr/resources/unicode_data_importer.rb +84 -14
  68. data/lib/twitter_cldr/resources/unicode_importer.rb +37 -0
  69. data/lib/twitter_cldr/resources/unicode_properties_importer.rb +79 -0
  70. data/lib/twitter_cldr/resources.rb +8 -1
  71. data/lib/twitter_cldr/shared/break_iterator.rb +213 -0
  72. data/lib/twitter_cldr/shared/calendar.rb +38 -14
  73. data/lib/twitter_cldr/shared/casefolder.rb +210 -0
  74. data/lib/twitter_cldr/shared/code_point.rb +103 -16
  75. data/lib/twitter_cldr/shared/numbering_system.rb +58 -0
  76. data/lib/twitter_cldr/shared/territories.rb +43 -1
  77. data/lib/twitter_cldr/shared/unicode_regex.rb +81 -0
  78. data/lib/twitter_cldr/shared.rb +13 -9
  79. data/lib/twitter_cldr/tokenizers/calendars/date_time_tokenizer.rb +77 -0
  80. data/lib/twitter_cldr/tokenizers/calendars/date_tokenizer.rb +14 -29
  81. data/lib/twitter_cldr/tokenizers/calendars/time_tokenizer.rb +13 -28
  82. data/lib/twitter_cldr/tokenizers/calendars/timespan_tokenizer.rb +11 -87
  83. data/lib/twitter_cldr/tokenizers/numbers/number_tokenizer.rb +16 -71
  84. data/lib/twitter_cldr/tokenizers/numbers/rbnf_tokenizer.rb +53 -0
  85. data/lib/twitter_cldr/tokenizers/pattern_tokenizer.rb +42 -0
  86. data/lib/twitter_cldr/tokenizers/segmentation/segmentation_tokenizer.rb +39 -0
  87. data/lib/twitter_cldr/tokenizers/tokenizer.rb +116 -0
  88. data/lib/twitter_cldr/tokenizers/unicode_regex/unicode_regex_tokenizer.rb +52 -0
  89. data/lib/twitter_cldr/tokenizers.rb +8 -4
  90. data/lib/twitter_cldr/utils/code_points.rb +1 -1
  91. data/lib/twitter_cldr/utils/range_set.rb +242 -0
  92. data/lib/twitter_cldr/utils/yaml.rb +17 -12
  93. data/lib/twitter_cldr/utils.rb +1 -1
  94. data/lib/twitter_cldr/version.rb +1 -1
  95. data/lib/twitter_cldr.rb +2 -1
  96. data/resources/custom/locales/sv/units.yml +8 -0
  97. data/resources/locales/af/calendars.yml +278 -224
  98. data/resources/locales/af/currencies.yml +954 -916
  99. data/resources/locales/af/languages.yml +583 -580
  100. data/resources/locales/af/layout.yml +5 -5
  101. data/resources/locales/af/lists.yml +23 -7
  102. data/resources/locales/af/numbers.yml +59 -54
  103. data/resources/locales/af/plurals.yml +2 -2
  104. data/resources/locales/af/rbnf.yml +261 -0
  105. data/resources/locales/af/territories.yml +264 -263
  106. data/resources/locales/ar/calendars.yml +287 -259
  107. data/resources/locales/ar/currencies.yml +1730 -1692
  108. data/resources/locales/ar/languages.yml +583 -580
  109. data/resources/locales/ar/layout.yml +5 -5
  110. data/resources/locales/ar/lists.yml +23 -7
  111. data/resources/locales/ar/numbers.yml +66 -61
  112. data/resources/locales/ar/plurals.yml +5 -8
  113. data/resources/locales/ar/rbnf.yml +519 -0
  114. data/resources/locales/ar/territories.yml +264 -263
  115. data/resources/locales/be/calendars.yml +238 -237
  116. data/resources/locales/be/currencies.yml +954 -917
  117. data/resources/locales/be/languages.yml +583 -580
  118. data/resources/locales/be/layout.yml +5 -5
  119. data/resources/locales/be/lists.yml +23 -7
  120. data/resources/locales/be/numbers.yml +62 -57
  121. data/resources/locales/be/plurals.yml +7 -4
  122. data/resources/locales/be/rbnf.yml +1288 -0
  123. data/resources/locales/be/territories.yml +264 -263
  124. data/resources/locales/bg/calendars.yml +278 -218
  125. data/resources/locales/bg/currencies.yml +955 -917
  126. data/resources/locales/bg/languages.yml +583 -580
  127. data/resources/locales/bg/layout.yml +5 -5
  128. data/resources/locales/bg/lists.yml +23 -7
  129. data/resources/locales/bg/numbers.yml +62 -57
  130. data/resources/locales/bg/plurals.yml +2 -2
  131. data/resources/locales/bg/rbnf.yml +280 -0
  132. data/resources/locales/bg/territories.yml +264 -263
  133. data/resources/locales/bn/calendars.yml +287 -225
  134. data/resources/locales/bn/currencies.yml +953 -916
  135. data/resources/locales/bn/languages.yml +583 -580
  136. data/resources/locales/bn/layout.yml +5 -5
  137. data/resources/locales/bn/lists.yml +23 -7
  138. data/resources/locales/bn/numbers.yml +62 -57
  139. data/resources/locales/bn/plurals.yml +2 -2
  140. data/resources/locales/bn/rbnf.yml +4 -0
  141. data/resources/locales/bn/territories.yml +264 -263
  142. data/resources/locales/ca/calendars.yml +278 -278
  143. data/resources/locales/ca/currencies.yml +953 -916
  144. data/resources/locales/ca/languages.yml +583 -580
  145. data/resources/locales/ca/layout.yml +5 -5
  146. data/resources/locales/ca/lists.yml +23 -7
  147. data/resources/locales/ca/numbers.yml +62 -57
  148. data/resources/locales/ca/plurals.yml +3 -2
  149. data/resources/locales/ca/rbnf.yml +756 -0
  150. data/resources/locales/ca/territories.yml +264 -263
  151. data/resources/locales/cs/calendars.yml +269 -262
  152. data/resources/locales/cs/currencies.yml +1483 -1172
  153. data/resources/locales/cs/languages.yml +583 -580
  154. data/resources/locales/cs/layout.yml +5 -5
  155. data/resources/locales/cs/lists.yml +23 -7
  156. data/resources/locales/cs/numbers.yml +64 -58
  157. data/resources/locales/cs/plurals.yml +6 -2
  158. data/resources/locales/cs/rbnf.yml +367 -0
  159. data/resources/locales/cs/territories.yml +264 -263
  160. data/resources/locales/cy/calendars.yml +275 -274
  161. data/resources/locales/cy/currencies.yml +1585 -1548
  162. data/resources/locales/cy/languages.yml +583 -580
  163. data/resources/locales/cy/layout.yml +5 -5
  164. data/resources/locales/cy/lists.yml +23 -7
  165. data/resources/locales/cy/numbers.yml +66 -61
  166. data/resources/locales/cy/plurals.yml +4 -3
  167. data/resources/locales/cy/rbnf.yml +298 -0
  168. data/resources/locales/cy/territories.yml +264 -263
  169. data/resources/locales/da/calendars.yml +281 -280
  170. data/resources/locales/da/currencies.yml +954 -916
  171. data/resources/locales/da/languages.yml +583 -580
  172. data/resources/locales/da/layout.yml +5 -5
  173. data/resources/locales/da/lists.yml +23 -7
  174. data/resources/locales/da/numbers.yml +62 -57
  175. data/resources/locales/da/plurals.yml +3 -2
  176. data/resources/locales/da/rbnf.yml +194 -0
  177. data/resources/locales/da/territories.yml +264 -263
  178. data/resources/locales/de/calendars.yml +294 -293
  179. data/resources/locales/de/currencies.yml +954 -916
  180. data/resources/locales/de/languages.yml +583 -580
  181. data/resources/locales/de/layout.yml +5 -5
  182. data/resources/locales/de/lists.yml +23 -7
  183. data/resources/locales/de/numbers.yml +62 -57
  184. data/resources/locales/de/plurals.yml +3 -2
  185. data/resources/locales/de/rbnf.yml +346 -0
  186. data/resources/locales/de/territories.yml +264 -263
  187. data/resources/locales/el/calendars.yml +279 -282
  188. data/resources/locales/el/currencies.yml +954 -916
  189. data/resources/locales/el/languages.yml +583 -580
  190. data/resources/locales/el/layout.yml +5 -5
  191. data/resources/locales/el/lists.yml +23 -7
  192. data/resources/locales/el/numbers.yml +62 -57
  193. data/resources/locales/el/plurals.yml +2 -2
  194. data/resources/locales/el/rbnf.yml +880 -0
  195. data/resources/locales/el/territories.yml +264 -263
  196. data/resources/locales/en/calendars.yml +192 -191
  197. data/resources/locales/en/currencies.yml +953 -915
  198. data/resources/locales/en/languages.yml +583 -580
  199. data/resources/locales/en/layout.yml +5 -5
  200. data/resources/locales/en/lists.yml +23 -7
  201. data/resources/locales/en/numbers.yml +62 -57
  202. data/resources/locales/en/plurals.yml +3 -2
  203. data/resources/locales/en/rbnf.yml +542 -0
  204. data/resources/locales/en/territories.yml +264 -263
  205. data/resources/locales/en-GB/calendars.yml +195 -194
  206. data/resources/locales/en-GB/currencies.yml +953 -915
  207. data/resources/locales/en-GB/languages.yml +583 -580
  208. data/resources/locales/en-GB/layout.yml +5 -5
  209. data/resources/locales/en-GB/lists.yml +23 -7
  210. data/resources/locales/en-GB/numbers.yml +62 -57
  211. data/resources/locales/en-GB/plurals.yml +2 -1
  212. data/resources/locales/en-GB/rbnf.yml +4 -0
  213. data/resources/locales/en-GB/territories.yml +264 -263
  214. data/resources/locales/es/calendars.yml +288 -238
  215. data/resources/locales/es/currencies.yml +953 -922
  216. data/resources/locales/es/languages.yml +583 -580
  217. data/resources/locales/es/layout.yml +5 -5
  218. data/resources/locales/es/lists.yml +23 -7
  219. data/resources/locales/es/numbers.yml +62 -57
  220. data/resources/locales/es/plurals.yml +2 -2
  221. data/resources/locales/es/rbnf.yml +913 -0
  222. data/resources/locales/es/territories.yml +264 -263
  223. data/resources/locales/eu/calendars.yml +277 -218
  224. data/resources/locales/eu/currencies.yml +953 -916
  225. data/resources/locales/eu/languages.yml +583 -580
  226. data/resources/locales/eu/layout.yml +5 -5
  227. data/resources/locales/eu/lists.yml +23 -7
  228. data/resources/locales/eu/numbers.yml +56 -51
  229. data/resources/locales/eu/plurals.yml +2 -2
  230. data/resources/locales/eu/rbnf.yml +4 -0
  231. data/resources/locales/eu/territories.yml +264 -263
  232. data/resources/locales/fa/calendars.yml +294 -293
  233. data/resources/locales/fa/currencies.yml +955 -916
  234. data/resources/locales/fa/languages.yml +583 -580
  235. data/resources/locales/fa/layout.yml +5 -5
  236. data/resources/locales/fa/lists.yml +23 -7
  237. data/resources/locales/fa/numbers.yml +62 -57
  238. data/resources/locales/fa/plurals.yml +2 -2
  239. data/resources/locales/fa/rbnf.yml +157 -0
  240. data/resources/locales/fa/territories.yml +264 -263
  241. data/resources/locales/fi/calendars.yml +284 -283
  242. data/resources/locales/fi/currencies.yml +953 -915
  243. data/resources/locales/fi/languages.yml +583 -580
  244. data/resources/locales/fi/layout.yml +5 -5
  245. data/resources/locales/fi/lists.yml +23 -7
  246. data/resources/locales/fi/numbers.yml +62 -57
  247. data/resources/locales/fi/plurals.yml +3 -2
  248. data/resources/locales/fi/rbnf.yml +206 -0
  249. data/resources/locales/fi/territories.yml +264 -263
  250. data/resources/locales/fil/calendars.yml +281 -230
  251. data/resources/locales/fil/currencies.yml +953 -916
  252. data/resources/locales/fil/languages.yml +583 -580
  253. data/resources/locales/fil/layout.yml +5 -5
  254. data/resources/locales/fil/lists.yml +23 -7
  255. data/resources/locales/fil/numbers.yml +62 -57
  256. data/resources/locales/fil/plurals.yml +3 -2
  257. data/resources/locales/fil/rbnf.yml +158 -0
  258. data/resources/locales/fil/territories.yml +264 -263
  259. data/resources/locales/fr/calendars.yml +297 -296
  260. data/resources/locales/fr/currencies.yml +968 -949
  261. data/resources/locales/fr/languages.yml +583 -580
  262. data/resources/locales/fr/layout.yml +5 -5
  263. data/resources/locales/fr/lists.yml +23 -7
  264. data/resources/locales/fr/numbers.yml +62 -57
  265. data/resources/locales/fr/plurals.yml +2 -2
  266. data/resources/locales/fr/rbnf.yml +621 -0
  267. data/resources/locales/fr/territories.yml +264 -263
  268. data/resources/locales/ga/calendars.yml +192 -191
  269. data/resources/locales/ga/currencies.yml +954 -916
  270. data/resources/locales/ga/languages.yml +583 -580
  271. data/resources/locales/ga/layout.yml +5 -5
  272. data/resources/locales/ga/lists.yml +23 -7
  273. data/resources/locales/ga/numbers.yml +62 -57
  274. data/resources/locales/ga/plurals.yml +4 -3
  275. data/resources/locales/ga/rbnf.yml +615 -0
  276. data/resources/locales/ga/territories.yml +264 -263
  277. data/resources/locales/gl/calendars.yml +283 -217
  278. data/resources/locales/gl/currencies.yml +953 -916
  279. data/resources/locales/gl/languages.yml +583 -580
  280. data/resources/locales/gl/layout.yml +5 -5
  281. data/resources/locales/gl/lists.yml +23 -7
  282. data/resources/locales/gl/numbers.yml +62 -57
  283. data/resources/locales/gl/plurals.yml +3 -2
  284. data/resources/locales/gl/rbnf.yml +4 -0
  285. data/resources/locales/gl/territories.yml +264 -263
  286. data/resources/locales/he/calendars.yml +248 -220
  287. data/resources/locales/he/currencies.yml +992 -932
  288. data/resources/locales/he/languages.yml +583 -580
  289. data/resources/locales/he/layout.yml +5 -5
  290. data/resources/locales/he/lists.yml +23 -7
  291. data/resources/locales/he/numbers.yml +64 -59
  292. data/resources/locales/he/plurals.yml +6 -3
  293. data/resources/locales/he/rbnf.yml +1029 -0
  294. data/resources/locales/he/territories.yml +264 -263
  295. data/resources/locales/hi/calendars.yml +284 -216
  296. data/resources/locales/hi/currencies.yml +953 -915
  297. data/resources/locales/hi/languages.yml +583 -580
  298. data/resources/locales/hi/layout.yml +5 -5
  299. data/resources/locales/hi/lists.yml +23 -7
  300. data/resources/locales/hi/numbers.yml +60 -55
  301. data/resources/locales/hi/plurals.yml +2 -2
  302. data/resources/locales/hi/rbnf.yml +430 -0
  303. data/resources/locales/hi/territories.yml +264 -263
  304. data/resources/locales/hr/calendars.yml +308 -307
  305. data/resources/locales/hr/currencies.yml +1248 -1504
  306. data/resources/locales/hr/languages.yml +583 -580
  307. data/resources/locales/hr/layout.yml +5 -5
  308. data/resources/locales/hr/lists.yml +23 -7
  309. data/resources/locales/hr/numbers.yml +63 -59
  310. data/resources/locales/hr/plurals.yml +12 -4
  311. data/resources/locales/hr/rbnf.yml +599 -0
  312. data/resources/locales/hr/territories.yml +264 -263
  313. data/resources/locales/hu/calendars.yml +285 -284
  314. data/resources/locales/hu/currencies.yml +954 -916
  315. data/resources/locales/hu/languages.yml +583 -580
  316. data/resources/locales/hu/layout.yml +5 -5
  317. data/resources/locales/hu/lists.yml +23 -7
  318. data/resources/locales/hu/numbers.yml +62 -57
  319. data/resources/locales/hu/plurals.yml +2 -2
  320. data/resources/locales/hu/rbnf.yml +363 -0
  321. data/resources/locales/hu/territories.yml +264 -263
  322. data/resources/locales/id/calendars.yml +276 -275
  323. data/resources/locales/id/currencies.yml +954 -916
  324. data/resources/locales/id/languages.yml +583 -580
  325. data/resources/locales/id/layout.yml +5 -5
  326. data/resources/locales/id/lists.yml +23 -7
  327. data/resources/locales/id/numbers.yml +61 -56
  328. data/resources/locales/id/plurals.yml +2 -2
  329. data/resources/locales/id/rbnf.yml +121 -0
  330. data/resources/locales/id/territories.yml +264 -263
  331. data/resources/locales/is/calendars.yml +281 -242
  332. data/resources/locales/is/currencies.yml +954 -916
  333. data/resources/locales/is/languages.yml +583 -580
  334. data/resources/locales/is/layout.yml +5 -5
  335. data/resources/locales/is/lists.yml +23 -7
  336. data/resources/locales/is/numbers.yml +62 -57
  337. data/resources/locales/is/plurals.yml +5 -2
  338. data/resources/locales/is/rbnf.yml +326 -0
  339. data/resources/locales/is/territories.yml +264 -263
  340. data/resources/locales/it/calendars.yml +275 -260
  341. data/resources/locales/it/currencies.yml +953 -920
  342. data/resources/locales/it/languages.yml +583 -580
  343. data/resources/locales/it/layout.yml +5 -5
  344. data/resources/locales/it/lists.yml +23 -7
  345. data/resources/locales/it/numbers.yml +59 -54
  346. data/resources/locales/it/plurals.yml +3 -2
  347. data/resources/locales/it/rbnf.yml +1189 -0
  348. data/resources/locales/it/territories.yml +264 -263
  349. data/resources/locales/ja/calendars.yml +269 -207
  350. data/resources/locales/ja/currencies.yml +953 -915
  351. data/resources/locales/ja/languages.yml +583 -580
  352. data/resources/locales/ja/layout.yml +5 -5
  353. data/resources/locales/ja/lists.yml +23 -7
  354. data/resources/locales/ja/numbers.yml +62 -57
  355. data/resources/locales/ja/plurals.yml +2 -2
  356. data/resources/locales/ja/rbnf.yml +209 -0
  357. data/resources/locales/ja/territories.yml +264 -263
  358. data/resources/locales/ko/calendars.yml +246 -213
  359. data/resources/locales/ko/currencies.yml +953 -915
  360. data/resources/locales/ko/languages.yml +583 -580
  361. data/resources/locales/ko/layout.yml +5 -5
  362. data/resources/locales/ko/lists.yml +23 -7
  363. data/resources/locales/ko/numbers.yml +60 -55
  364. data/resources/locales/ko/plurals.yml +2 -2
  365. data/resources/locales/ko/rbnf.yml +722 -0
  366. data/resources/locales/ko/territories.yml +264 -263
  367. data/resources/locales/lv/calendars.yml +286 -285
  368. data/resources/locales/lv/currencies.yml +1122 -1084
  369. data/resources/locales/lv/languages.yml +583 -580
  370. data/resources/locales/lv/layout.yml +5 -5
  371. data/resources/locales/lv/lists.yml +23 -7
  372. data/resources/locales/lv/numbers.yml +63 -58
  373. data/resources/locales/lv/plurals.yml +11 -3
  374. data/resources/locales/lv/rbnf.yml +238 -0
  375. data/resources/locales/lv/territories.yml +264 -263
  376. data/resources/locales/ms/calendars.yml +280 -279
  377. data/resources/locales/ms/currencies.yml +954 -916
  378. data/resources/locales/ms/languages.yml +583 -580
  379. data/resources/locales/ms/layout.yml +5 -5
  380. data/resources/locales/ms/lists.yml +23 -7
  381. data/resources/locales/ms/numbers.yml +62 -57
  382. data/resources/locales/ms/plurals.yml +2 -2
  383. data/resources/locales/ms/rbnf.yml +130 -0
  384. data/resources/locales/ms/territories.yml +264 -263
  385. data/resources/locales/nb/calendars.yml +284 -283
  386. data/resources/locales/nb/currencies.yml +958 -916
  387. data/resources/locales/nb/languages.yml +583 -580
  388. data/resources/locales/nb/layout.yml +5 -5
  389. data/resources/locales/nb/lists.yml +23 -7
  390. data/resources/locales/nb/numbers.yml +62 -57
  391. data/resources/locales/nb/plurals.yml +2 -2
  392. data/resources/locales/nb/rbnf.yml +191 -0
  393. data/resources/locales/nb/territories.yml +264 -263
  394. data/resources/locales/nl/calendars.yml +285 -284
  395. data/resources/locales/nl/currencies.yml +953 -917
  396. data/resources/locales/nl/languages.yml +583 -580
  397. data/resources/locales/nl/layout.yml +5 -5
  398. data/resources/locales/nl/lists.yml +23 -7
  399. data/resources/locales/nl/numbers.yml +62 -57
  400. data/resources/locales/nl/plurals.yml +3 -2
  401. data/resources/locales/nl/rbnf.yml +320 -0
  402. data/resources/locales/nl/territories.yml +264 -263
  403. data/resources/locales/pl/calendars.yml +288 -287
  404. data/resources/locales/pl/currencies.yml +1326 -1284
  405. data/resources/locales/pl/languages.yml +583 -580
  406. data/resources/locales/pl/layout.yml +5 -5
  407. data/resources/locales/pl/lists.yml +23 -7
  408. data/resources/locales/pl/numbers.yml +64 -59
  409. data/resources/locales/pl/plurals.yml +11 -4
  410. data/resources/locales/pl/rbnf.yml +410 -0
  411. data/resources/locales/pl/territories.yml +264 -263
  412. data/resources/locales/pt/calendars.yml +290 -289
  413. data/resources/locales/pt/currencies.yml +954 -916
  414. data/resources/locales/pt/languages.yml +583 -580
  415. data/resources/locales/pt/layout.yml +5 -5
  416. data/resources/locales/pt/lists.yml +23 -7
  417. data/resources/locales/pt/numbers.yml +62 -57
  418. data/resources/locales/pt/plurals.yml +4 -2
  419. data/resources/locales/pt/rbnf.yml +586 -0
  420. data/resources/locales/pt/territories.yml +264 -263
  421. data/resources/locales/ro/calendars.yml +284 -283
  422. data/resources/locales/ro/currencies.yml +1170 -1132
  423. data/resources/locales/ro/languages.yml +583 -580
  424. data/resources/locales/ro/layout.yml +5 -5
  425. data/resources/locales/ro/lists.yml +23 -7
  426. data/resources/locales/ro/numbers.yml +63 -58
  427. data/resources/locales/ro/plurals.yml +5 -2
  428. data/resources/locales/ro/rbnf.yml +250 -0
  429. data/resources/locales/ro/territories.yml +264 -263
  430. data/resources/locales/ru/calendars.yml +282 -281
  431. data/resources/locales/ru/currencies.yml +1118 -1247
  432. data/resources/locales/ru/languages.yml +583 -580
  433. data/resources/locales/ru/layout.yml +5 -5
  434. data/resources/locales/ru/lists.yml +23 -7
  435. data/resources/locales/ru/numbers.yml +63 -59
  436. data/resources/locales/ru/plurals.yml +8 -4
  437. data/resources/locales/ru/rbnf.yml +385 -0
  438. data/resources/locales/ru/territories.yml +264 -263
  439. data/resources/locales/sk/calendars.yml +254 -251
  440. data/resources/locales/sk/currencies.yml +1174 -1008
  441. data/resources/locales/sk/languages.yml +583 -580
  442. data/resources/locales/sk/layout.yml +5 -5
  443. data/resources/locales/sk/lists.yml +23 -7
  444. data/resources/locales/sk/numbers.yml +64 -58
  445. data/resources/locales/sk/plurals.yml +6 -2
  446. data/resources/locales/sk/rbnf.yml +304 -0
  447. data/resources/locales/sk/territories.yml +264 -263
  448. data/resources/locales/sq/calendars.yml +283 -206
  449. data/resources/locales/sq/currencies.yml +954 -916
  450. data/resources/locales/sq/languages.yml +583 -580
  451. data/resources/locales/sq/layout.yml +5 -5
  452. data/resources/locales/sq/lists.yml +23 -7
  453. data/resources/locales/sq/numbers.yml +62 -57
  454. data/resources/locales/sq/plurals.yml +2 -2
  455. data/resources/locales/sq/rbnf.yml +181 -0
  456. data/resources/locales/sq/territories.yml +264 -263
  457. data/resources/locales/sr/calendars.yml +290 -289
  458. data/resources/locales/sr/currencies.yml +1251 -1508
  459. data/resources/locales/sr/languages.yml +583 -580
  460. data/resources/locales/sr/layout.yml +5 -5
  461. data/resources/locales/sr/lists.yml +23 -7
  462. data/resources/locales/sr/numbers.yml +62 -58
  463. data/resources/locales/sr/plurals.yml +12 -4
  464. data/resources/locales/sr/rbnf.yml +429 -0
  465. data/resources/locales/sr/territories.yml +264 -263
  466. data/resources/locales/sv/calendars.yml +290 -289
  467. data/resources/locales/sv/currencies.yml +960 -930
  468. data/resources/locales/sv/languages.yml +583 -580
  469. data/resources/locales/sv/layout.yml +5 -5
  470. data/resources/locales/sv/lists.yml +23 -7
  471. data/resources/locales/sv/numbers.yml +63 -58
  472. data/resources/locales/sv/plurals.yml +3 -2
  473. data/resources/locales/sv/rbnf.yml +692 -0
  474. data/resources/locales/sv/territories.yml +264 -263
  475. data/resources/locales/ta/calendars.yml +281 -266
  476. data/resources/locales/ta/currencies.yml +953 -915
  477. data/resources/locales/ta/languages.yml +583 -580
  478. data/resources/locales/ta/layout.yml +5 -5
  479. data/resources/locales/ta/lists.yml +23 -7
  480. data/resources/locales/ta/numbers.yml +62 -57
  481. data/resources/locales/ta/plurals.yml +2 -2
  482. data/resources/locales/ta/rbnf.yml +241 -0
  483. data/resources/locales/ta/territories.yml +264 -263
  484. data/resources/locales/th/calendars.yml +278 -289
  485. data/resources/locales/th/currencies.yml +953 -915
  486. data/resources/locales/th/languages.yml +583 -580
  487. data/resources/locales/th/layout.yml +5 -5
  488. data/resources/locales/th/lists.yml +23 -7
  489. data/resources/locales/th/numbers.yml +62 -57
  490. data/resources/locales/th/plurals.yml +2 -2
  491. data/resources/locales/th/rbnf.yml +119 -0
  492. data/resources/locales/th/territories.yml +264 -263
  493. data/resources/locales/tr/calendars.yml +287 -286
  494. data/resources/locales/tr/currencies.yml +953 -916
  495. data/resources/locales/tr/languages.yml +583 -580
  496. data/resources/locales/tr/layout.yml +5 -5
  497. data/resources/locales/tr/lists.yml +23 -7
  498. data/resources/locales/tr/numbers.yml +61 -56
  499. data/resources/locales/tr/plurals.yml +2 -2
  500. data/resources/locales/tr/rbnf.yml +277 -0
  501. data/resources/locales/tr/territories.yml +264 -263
  502. data/resources/locales/uk/calendars.yml +286 -252
  503. data/resources/locales/uk/currencies.yml +1311 -1070
  504. data/resources/locales/uk/languages.yml +583 -580
  505. data/resources/locales/uk/layout.yml +5 -5
  506. data/resources/locales/uk/lists.yml +23 -7
  507. data/resources/locales/uk/numbers.yml +64 -59
  508. data/resources/locales/uk/plurals.yml +10 -4
  509. data/resources/locales/uk/rbnf.yml +430 -0
  510. data/resources/locales/uk/territories.yml +264 -263
  511. data/resources/locales/ur/calendars.yml +267 -228
  512. data/resources/locales/ur/currencies.yml +954 -916
  513. data/resources/locales/ur/languages.yml +583 -580
  514. data/resources/locales/ur/layout.yml +5 -5
  515. data/resources/locales/ur/lists.yml +23 -7
  516. data/resources/locales/ur/numbers.yml +62 -57
  517. data/resources/locales/ur/plurals.yml +3 -2
  518. data/resources/locales/ur/rbnf.yml +4 -0
  519. data/resources/locales/ur/territories.yml +264 -263
  520. data/resources/locales/vi/calendars.yml +256 -236
  521. data/resources/locales/vi/currencies.yml +953 -915
  522. data/resources/locales/vi/languages.yml +583 -580
  523. data/resources/locales/vi/layout.yml +5 -5
  524. data/resources/locales/vi/lists.yml +23 -7
  525. data/resources/locales/vi/numbers.yml +62 -57
  526. data/resources/locales/vi/plurals.yml +2 -2
  527. data/resources/locales/vi/rbnf.yml +164 -0
  528. data/resources/locales/vi/territories.yml +264 -263
  529. data/resources/locales/zh/calendars.yml +266 -265
  530. data/resources/locales/zh/currencies.yml +953 -915
  531. data/resources/locales/zh/languages.yml +583 -580
  532. data/resources/locales/zh/layout.yml +5 -5
  533. data/resources/locales/zh/lists.yml +23 -7
  534. data/resources/locales/zh/numbers.yml +62 -57
  535. data/resources/locales/zh/plurals.yml +2 -2
  536. data/resources/locales/zh/rbnf.yml +689 -0
  537. data/resources/locales/zh/territories.yml +264 -263
  538. data/resources/locales/zh-Hant/calendars.yml +266 -265
  539. data/resources/locales/zh-Hant/currencies.yml +955 -915
  540. data/resources/locales/zh-Hant/languages.yml +583 -580
  541. data/resources/locales/zh-Hant/layout.yml +5 -5
  542. data/resources/locales/zh-Hant/lists.yml +23 -7
  543. data/resources/locales/zh-Hant/numbers.yml +62 -57
  544. data/resources/locales/zh-Hant/plurals.yml +2 -2
  545. data/resources/locales/zh-Hant/rbnf.yml +647 -0
  546. data/resources/locales/zh-Hant/territories.yml +264 -263
  547. data/resources/shared/currency_digits_and_rounding.yml +67 -64
  548. data/resources/shared/numbering_systems.yml +176 -0
  549. data/resources/shared/rbnf_root.yml +1573 -0
  550. data/resources/shared/segments/segments_root.yml +728 -0
  551. data/resources/shared/segments/tailorings/en.yml +8 -0
  552. data/resources/uli/segments/de.yml +128 -0
  553. data/resources/uli/segments/en.yml +154 -0
  554. data/resources/uli/segments/es.yml +112 -0
  555. data/resources/uli/segments/fr.yml +47 -0
  556. data/resources/uli/segments/it.yml +37 -0
  557. data/resources/uli/segments/pt.yml +173 -0
  558. data/resources/uli/segments/ru.yml +10 -0
  559. data/resources/unicode_data/casefolding.yml +4765 -0
  560. data/resources/unicode_data/indices/bidi_class.yml +4572 -0
  561. data/resources/unicode_data/indices/bidi_mirrored.yml +3087 -0
  562. data/resources/unicode_data/indices/category.yml +10918 -0
  563. data/resources/unicode_data/indices/keys.yml +101 -0
  564. data/resources/unicode_data/properties/line_break.yml +9269 -0
  565. data/resources/unicode_data/properties/sentence_break.yml +8067 -0
  566. data/resources/unicode_data/properties/word_break.yml +3001 -0
  567. data/spec/collation/collation_spec.rb +2 -1
  568. data/spec/collation/collator_spec.rb +4 -3
  569. data/spec/collation/tailoring_spec.rb +2 -2
  570. data/spec/collation/tailoring_tests/he.txt +5 -2
  571. data/spec/{tokenizers/calendars → data_readers}/additional_date_format_selector_spec.rb +13 -13
  572. data/spec/data_readers/date_time_data_reader_spec.rb +26 -0
  573. data/spec/data_readers/number_data_reader_spec.rb +18 -0
  574. data/spec/data_readers/timespan_data_reader.rb +22 -0
  575. data/spec/formatters/calendars/datetime_formatter_spec.rb +18 -22
  576. data/spec/formatters/list_formatter_spec.rb +16 -87
  577. data/spec/formatters/numbers/abbreviated/abbreviated_number_formatter_spec.rb +15 -59
  578. data/spec/formatters/numbers/abbreviated/long_decimal_formatter_spec.rb +32 -17
  579. data/spec/formatters/numbers/abbreviated/short_decimal_formatter_spec.rb +33 -17
  580. data/spec/formatters/numbers/currency_formatter_spec.rb +18 -13
  581. data/spec/formatters/numbers/decimal_formatter_spec.rb +16 -18
  582. data/spec/formatters/numbers/number_formatter_spec.rb +40 -31
  583. data/spec/formatters/numbers/percent_formatter_spec.rb +14 -6
  584. data/spec/formatters/numbers/rbnf/allowed_failures.yml +74 -0
  585. data/spec/formatters/numbers/rbnf/locales/af/rbnf_test.yml +706 -0
  586. data/spec/formatters/numbers/rbnf/locales/ar/rbnf_test.yml +706 -0
  587. data/spec/formatters/numbers/rbnf/locales/be/rbnf_test.yml +1174 -0
  588. data/spec/formatters/numbers/rbnf/locales/bg/rbnf_test.yml +706 -0
  589. data/spec/formatters/numbers/rbnf/locales/bn/rbnf_test.yml +1291 -0
  590. data/spec/formatters/numbers/rbnf/locales/ca/rbnf_test.yml +1174 -0
  591. data/spec/formatters/numbers/rbnf/locales/cs/rbnf_test.yml +823 -0
  592. data/spec/formatters/numbers/rbnf/locales/cy/rbnf_test.yml +940 -0
  593. data/spec/formatters/numbers/rbnf/locales/da/rbnf_test.yml +940 -0
  594. data/spec/formatters/numbers/rbnf/locales/de/rbnf_test.yml +940 -0
  595. data/spec/formatters/numbers/rbnf/locales/el/rbnf_test.yml +1174 -0
  596. data/spec/formatters/numbers/rbnf/locales/en/rbnf_test.yml +1291 -0
  597. data/spec/formatters/numbers/rbnf/locales/en-GB/rbnf_test.yml +1291 -0
  598. data/spec/formatters/numbers/rbnf/locales/es/rbnf_test.yml +1642 -0
  599. data/spec/formatters/numbers/rbnf/locales/eu/rbnf_test.yml +1291 -0
  600. data/spec/formatters/numbers/rbnf/locales/fa/rbnf_test.yml +589 -0
  601. data/spec/formatters/numbers/rbnf/locales/fi/rbnf_test.yml +706 -0
  602. data/spec/formatters/numbers/rbnf/locales/fil/rbnf_test.yml +706 -0
  603. data/spec/formatters/numbers/rbnf/locales/fr/rbnf_test.yml +1408 -0
  604. data/spec/formatters/numbers/rbnf/locales/ga/rbnf_test.yml +940 -0
  605. data/spec/formatters/numbers/rbnf/locales/gl/rbnf_test.yml +1291 -0
  606. data/spec/formatters/numbers/rbnf/locales/he/rbnf_test.yml +1057 -0
  607. data/spec/formatters/numbers/rbnf/locales/hi/rbnf_test.yml +823 -0
  608. data/spec/formatters/numbers/rbnf/locales/hr/rbnf_test.yml +1174 -0
  609. data/spec/formatters/numbers/rbnf/locales/hu/rbnf_test.yml +940 -0
  610. data/spec/formatters/numbers/rbnf/locales/id/rbnf_test.yml +706 -0
  611. data/spec/formatters/numbers/rbnf/locales/is/rbnf_test.yml +823 -0
  612. data/spec/formatters/numbers/rbnf/locales/it/rbnf_test.yml +1174 -0
  613. data/spec/formatters/numbers/rbnf/locales/ja/rbnf_test.yml +823 -0
  614. data/spec/formatters/numbers/rbnf/locales/ko/rbnf_test.yml +1408 -0
  615. data/spec/formatters/numbers/rbnf/locales/lv/rbnf_test.yml +706 -0
  616. data/spec/formatters/numbers/rbnf/locales/ms/rbnf_test.yml +706 -0
  617. data/spec/formatters/numbers/rbnf/locales/nb/rbnf_test.yml +940 -0
  618. data/spec/formatters/numbers/rbnf/locales/nl/rbnf_test.yml +706 -0
  619. data/spec/formatters/numbers/rbnf/locales/pl/rbnf_test.yml +823 -0
  620. data/spec/formatters/numbers/rbnf/locales/pt/rbnf_test.yml +1174 -0
  621. data/spec/formatters/numbers/rbnf/locales/ro/rbnf_test.yml +823 -0
  622. data/spec/formatters/numbers/rbnf/locales/ru/rbnf_test.yml +823 -0
  623. data/spec/formatters/numbers/rbnf/locales/sk/rbnf_test.yml +823 -0
  624. data/spec/formatters/numbers/rbnf/locales/sq/rbnf_test.yml +706 -0
  625. data/spec/formatters/numbers/rbnf/locales/sr/rbnf_test.yml +940 -0
  626. data/spec/formatters/numbers/rbnf/locales/sv/rbnf_test.yml +1876 -0
  627. data/spec/formatters/numbers/rbnf/locales/ta/rbnf_test.yml +706 -0
  628. data/spec/formatters/numbers/rbnf/locales/th/rbnf_test.yml +706 -0
  629. data/spec/formatters/numbers/rbnf/locales/tr/rbnf_test.yml +706 -0
  630. data/spec/formatters/numbers/rbnf/locales/uk/rbnf_test.yml +823 -0
  631. data/spec/formatters/numbers/rbnf/locales/ur/rbnf_test.yml +1291 -0
  632. data/spec/formatters/numbers/rbnf/locales/vi/rbnf_test.yml +706 -0
  633. data/spec/formatters/numbers/rbnf/locales/zh/rbnf_test.yml +940 -0
  634. data/spec/formatters/numbers/rbnf/locales/zh-Hant/rbnf_test.yml +940 -0
  635. data/spec/formatters/numbers/rbnf/rbnf_spec.rb +98 -0
  636. data/spec/formatters/plurals/plural_formatter_spec.rb +4 -4
  637. data/spec/formatters/plurals/rules_spec.rb +5 -5
  638. data/spec/localized/localized_date_spec.rb +1 -1
  639. data/spec/localized/localized_datetime_spec.rb +8 -13
  640. data/spec/localized/localized_number_spec.rb +17 -32
  641. data/spec/localized/localized_object_spec.rb +0 -5
  642. data/spec/localized/localized_string_spec.rb +40 -2
  643. data/spec/localized/localized_time_spec.rb +3 -6
  644. data/spec/localized/localized_timespan_spec.rb +144 -0
  645. data/spec/normalization_spec.rb +12 -12
  646. data/spec/parsers/number_parser_spec.rb +5 -5
  647. data/spec/parsers/parser_spec.rb +60 -0
  648. data/spec/parsers/segmentation_parser_spec.rb +96 -0
  649. data/spec/parsers/symbol_table_spec.rb +32 -0
  650. data/spec/parsers/unicode_regex/character_class_spec.rb +117 -0
  651. data/spec/parsers/unicode_regex/character_range_spec.rb +21 -0
  652. data/spec/parsers/unicode_regex/character_set_spec.rb +36 -0
  653. data/spec/parsers/unicode_regex/literal_spec.rb +34 -0
  654. data/spec/parsers/unicode_regex/unicode_string_spec.rb +22 -0
  655. data/spec/parsers/unicode_regex_parser_spec.rb +86 -0
  656. data/spec/readme_spec.rb +8 -269
  657. data/spec/shared/break_iterator_spec.rb +72 -0
  658. data/spec/shared/calendar_spec.rb +5 -4
  659. data/spec/shared/casefolder_spec.rb +30 -0
  660. data/spec/shared/casefolding.txt +251 -0
  661. data/spec/shared/casefolding_expected.txt +251 -0
  662. data/spec/shared/code_point_spec.rb +44 -14
  663. data/spec/shared/numbering_system_spec.rb +41 -0
  664. data/spec/shared/territories_spec.rb +14 -6
  665. data/spec/shared/unicode_regex_spec.rb +203 -0
  666. data/spec/spec_helper.rb +17 -0
  667. data/spec/tokenizers/calendars/date_tokenizer_spec.rb +26 -30
  668. data/spec/tokenizers/calendars/datetime_tokenizer_spec.rb +11 -90
  669. data/spec/tokenizers/calendars/time_tokenizer_spec.rb +5 -5
  670. data/spec/tokenizers/calendars/timespan_tokenizer_spec.rb +17 -7
  671. data/spec/tokenizers/numbers/number_tokenizer_spec.rb +28 -27
  672. data/spec/tokenizers/segmentation/segmentation_tokenizer_spec.rb +40 -0
  673. data/spec/tokenizers/unicode_regex/unicode_regex_tokenizer_spec.rb +190 -0
  674. data/spec/utils/range_set_spec.rb +171 -0
  675. data/spec/utils/yaml/yaml_spec.rb +62 -51
  676. data/twitter_cldr.gemspec +1 -1
  677. metadata +199 -30
  678. data/lib/twitter_cldr/formatters/base.rb +0 -47
  679. data/lib/twitter_cldr/formatters/calendars/date_formatter.rb +0 -19
  680. data/lib/twitter_cldr/formatters/calendars/time_formatter.rb +0 -19
  681. data/lib/twitter_cldr/normalization/base.rb +0 -37
  682. data/lib/twitter_cldr/normalization/hangul.rb +0 -79
  683. data/lib/twitter_cldr/normalization/nfc.rb +0 -24
  684. data/lib/twitter_cldr/normalization/nfd.rb +0 -26
  685. data/lib/twitter_cldr/normalization/nfkc.rb +0 -114
  686. data/lib/twitter_cldr/normalization/nfkd.rb +0 -120
  687. data/lib/twitter_cldr/normalization/quick_check.rb +0 -41
  688. data/lib/twitter_cldr/tokenizers/base.rb +0 -169
  689. data/lib/twitter_cldr/tokenizers/calendars/datetime_tokenizer.rb +0 -131
  690. data/lib/twitter_cldr/utils/territories.rb +0 -56
  691. data/spec/formatters/base_spec.rb +0 -18
  692. data/spec/formatters/calendars/timespan_formatter_spec.rb +0 -112
  693. data/spec/normalization/NormalizationTestShort.txt +0 -602
  694. data/spec/normalization/base_spec.rb +0 -16
  695. data/spec/normalization/hangul_spec.rb +0 -42
  696. data/spec/normalization/normalization_spec.rb +0 -113
  697. data/spec/tokenizers/base_spec.rb +0 -259
  698. data/spec/utils/territories_spec.rb +0 -16
@@ -0,0 +1,706 @@
1
+ ---
2
+ SpelloutRules:
3
+ spellout-ordinal:
4
+ -1141: min een duisend een honderd een-en-veertigste
5
+ -1142: min een duisend een honderd twee-en-veertigste
6
+ -1143: min een duisend een honderd drie-en-veertigste
7
+ -100: min honderdste
8
+ -75: min vyf-en-sewentigste
9
+ -50: min vyftigste
10
+ -24: min vier-en-twintigste
11
+ 0: nulste
12
+ 1: eerste
13
+ 2: tweede
14
+ 3: derde
15
+ 4: vierde
16
+ 5: vyfde
17
+ 6: sesde
18
+ 7: sewede
19
+ 8: agtde
20
+ 9: negede
21
+ 10: tiende
22
+ 11: elfde
23
+ 12: twaalfde
24
+ 13: dertiende
25
+ 14: veertiende
26
+ 15: vyftiende
27
+ 16: sestiende
28
+ 17: sewentiende
29
+ 18: agttiende
30
+ 19: negentiende
31
+ 20: twintigste
32
+ 21: een-en-twintigste
33
+ 22: twee-en-twintigste
34
+ 23: drie-en-twintigste
35
+ 24: vier-en-twintigste
36
+ 25: vyf-en-twintigste
37
+ 26: ses-en-twintigste
38
+ 27: sewe-en-twintigste
39
+ 28: agt-en-twintigste
40
+ 29: nege-en-twintigste
41
+ 30: dertigste
42
+ 31: een-en-dertigste
43
+ 32: twee-en-dertigste
44
+ 33: drie-en-dertigste
45
+ 34: vier-en-dertigste
46
+ 35: vyf-en-dertigste
47
+ 36: ses-en-dertigste
48
+ 37: sewe-en-dertigste
49
+ 38: agt-en-dertigste
50
+ 39: nege-en-dertigste
51
+ 40: veertigste
52
+ 41: een-en-veertigste
53
+ 42: twee-en-veertigste
54
+ 43: drie-en-veertigste
55
+ 44: vier-en-veertigste
56
+ 45: vyf-en-veertigste
57
+ 46: ses-en-veertigste
58
+ 47: sewe-en-veertigste
59
+ 48: agt-en-veertigste
60
+ 49: nege-en-veertigste
61
+ 50: vyftigste
62
+ 51: een-en-vyftigste
63
+ 52: twee-en-vyftigste
64
+ 53: drie-en-vyftigste
65
+ 54: vier-en-vyftigste
66
+ 55: vyf-en-vyftigste
67
+ 56: ses-en-vyftigste
68
+ 57: sewe-en-vyftigste
69
+ 58: agt-en-vyftigste
70
+ 59: nege-en-vyftigste
71
+ 60: sestigste
72
+ 61: een-en-sestigste
73
+ 62: twee-en-sestigste
74
+ 63: drie-en-sestigste
75
+ 64: vier-en-sestigste
76
+ 65: vyf-en-sestigste
77
+ 66: ses-en-sestigste
78
+ 67: sewe-en-sestigste
79
+ 68: agt-en-sestigste
80
+ 69: nege-en-sestigste
81
+ 70: sewentigste
82
+ 71: een-en-sewentigste
83
+ 72: twee-en-sewentigste
84
+ 73: drie-en-sewentigste
85
+ 74: vier-en-sewentigste
86
+ 75: vyf-en-sewentigste
87
+ 76: ses-en-sewentigste
88
+ 77: sewe-en-sewentigste
89
+ 78: agt-en-sewentigste
90
+ 79: nege-en-sewentigste
91
+ 80: tagtigste
92
+ 81: een-en-tagtigste
93
+ 82: twee-en-tagtigste
94
+ 83: drie-en-tagtigste
95
+ 84: vier-en-tagtigste
96
+ 85: vyf-en-tagtigste
97
+ 86: ses-en-tagtigste
98
+ 87: sewe-en-tagtigste
99
+ 88: agt-en-tagtigste
100
+ 89: nege-en-tagtigste
101
+ 90: negentigste
102
+ 91: een-en-negentigste
103
+ 92: twee-en-negentigste
104
+ 93: drie-en-negentigste
105
+ 94: vier-en-negentigste
106
+ 95: vyf-en-negentigste
107
+ 96: ses-en-negentigste
108
+ 97: sewe-en-negentigste
109
+ 98: agt-en-negentigste
110
+ 99: nege-en-negentigste
111
+ 100: honderdste
112
+ 321: drie honderd een-en-twintigste
113
+ 322: drie honderd twee-en-twintigste
114
+ 323: drie honderd drie-en-twintigste
115
+ 1141: een duisend een honderd een-en-veertigste
116
+ 1142: een duisend een honderd twee-en-veertigste
117
+ 1143: een duisend een honderd drie-en-veertigste
118
+ 10311: tien duisend drie honderd elfde
119
+ 138400: honderd agt-en-dertig duisend vierhonderdste
120
+ spellout-cardinal:
121
+ -1141: min duisend honderd een-en-veertig
122
+ -1142: min duisend honderd twee-en-veertig
123
+ -1143: min duisend honderd drie-en-veertig
124
+ -100: min honderd
125
+ -75: min vyf-en-sewentig
126
+ -50: min vyftig
127
+ -24: min vier-en-twintig
128
+ 0: nul
129
+ 1: een
130
+ 2: twee
131
+ 3: drie
132
+ 4: vier
133
+ 5: vyf
134
+ 6: ses
135
+ 7: sewe
136
+ 8: agt
137
+ 9: nege
138
+ 10: tien
139
+ 11: elf
140
+ 12: twaalf
141
+ 13: dertien
142
+ 14: veertien
143
+ 15: vyftien
144
+ 16: sestien
145
+ 17: sewentien
146
+ 18: agttien
147
+ 19: negentien
148
+ 20: twintig
149
+ 21: een-en-twintig
150
+ 22: twee-en-twintig
151
+ 23: drie-en-twintig
152
+ 24: vier-en-twintig
153
+ 25: vyf-en-twintig
154
+ 26: ses-en-twintig
155
+ 27: sewe-en-twintig
156
+ 28: agt-en-twintig
157
+ 29: nege-en-twintig
158
+ 30: dertig
159
+ 31: een-en-dertig
160
+ 32: twee-en-dertig
161
+ 33: drie-en-dertig
162
+ 34: vier-en-dertig
163
+ 35: vyf-en-dertig
164
+ 36: ses-en-dertig
165
+ 37: sewe-en-dertig
166
+ 38: agt-en-dertig
167
+ 39: nege-en-dertig
168
+ 40: veertig
169
+ 41: een-en-veertig
170
+ 42: twee-en-veertig
171
+ 43: drie-en-veertig
172
+ 44: vier-en-veertig
173
+ 45: vyf-en-veertig
174
+ 46: ses-en-veertig
175
+ 47: sewe-en-veertig
176
+ 48: agt-en-veertig
177
+ 49: nege-en-veertig
178
+ 50: vyftig
179
+ 51: een-en-vyftig
180
+ 52: twee-en-vyftig
181
+ 53: drie-en-vyftig
182
+ 54: vier-en-vyftig
183
+ 55: vyf-en-vyftig
184
+ 56: ses-en-vyftig
185
+ 57: sewe-en-vyftig
186
+ 58: agt-en-vyftig
187
+ 59: nege-en-vyftig
188
+ 60: sestig
189
+ 61: een-en-sestig
190
+ 62: twee-en-sestig
191
+ 63: drie-en-sestig
192
+ 64: vier-en-sestig
193
+ 65: vyf-en-sestig
194
+ 66: ses-en-sestig
195
+ 67: sewe-en-sestig
196
+ 68: agt-en-sestig
197
+ 69: nege-en-sestig
198
+ 70: sewentig
199
+ 71: een-en-sewentig
200
+ 72: twee-en-sewentig
201
+ 73: drie-en-sewentig
202
+ 74: vier-en-sewentig
203
+ 75: vyf-en-sewentig
204
+ 76: ses-en-sewentig
205
+ 77: sewe-en-sewentig
206
+ 78: agt-en-sewentig
207
+ 79: nege-en-sewentig
208
+ 80: tagtig
209
+ 81: een-en-tagtig
210
+ 82: twee-en-tagtig
211
+ 83: drie-en-tagtig
212
+ 84: vier-en-tagtig
213
+ 85: vyf-en-tagtig
214
+ 86: ses-en-tagtig
215
+ 87: sewe-en-tagtig
216
+ 88: agt-en-tagtig
217
+ 89: nege-en-tagtig
218
+ 90: negentig
219
+ 91: een-en-negentig
220
+ 92: twee-en-negentig
221
+ 93: drie-en-negentig
222
+ 94: vier-en-negentig
223
+ 95: vyf-en-negentig
224
+ 96: ses-en-negentig
225
+ 97: sewe-en-negentig
226
+ 98: agt-en-negentig
227
+ 99: nege-en-negentig
228
+ 100: honderd
229
+ 321: driehonderd een-en-twintig
230
+ 322: driehonderd twee-en-twintig
231
+ 323: driehonderd drie-en-twintig
232
+ 1141: duisend honderd een-en-veertig
233
+ 1142: duisend honderd twee-en-veertig
234
+ 1143: duisend honderd drie-en-veertig
235
+ 10311: tien­duisend driehonderd elf
236
+ 138400: honderd agt-en-dertig duisend vierhonderd
237
+ spellout-numbering:
238
+ -1141: min duisend honderd een-en-veertig
239
+ -1142: min duisend honderd twee-en-veertig
240
+ -1143: min duisend honderd drie-en-veertig
241
+ -100: min honderd
242
+ -75: min vyf-en-sewentig
243
+ -50: min vyftig
244
+ -24: min vier-en-twintig
245
+ 0: nul
246
+ 1: een
247
+ 2: twee
248
+ 3: drie
249
+ 4: vier
250
+ 5: vyf
251
+ 6: ses
252
+ 7: sewe
253
+ 8: agt
254
+ 9: nege
255
+ 10: tien
256
+ 11: elf
257
+ 12: twaalf
258
+ 13: dertien
259
+ 14: veertien
260
+ 15: vyftien
261
+ 16: sestien
262
+ 17: sewentien
263
+ 18: agttien
264
+ 19: negentien
265
+ 20: twintig
266
+ 21: een-en-twintig
267
+ 22: twee-en-twintig
268
+ 23: drie-en-twintig
269
+ 24: vier-en-twintig
270
+ 25: vyf-en-twintig
271
+ 26: ses-en-twintig
272
+ 27: sewe-en-twintig
273
+ 28: agt-en-twintig
274
+ 29: nege-en-twintig
275
+ 30: dertig
276
+ 31: een-en-dertig
277
+ 32: twee-en-dertig
278
+ 33: drie-en-dertig
279
+ 34: vier-en-dertig
280
+ 35: vyf-en-dertig
281
+ 36: ses-en-dertig
282
+ 37: sewe-en-dertig
283
+ 38: agt-en-dertig
284
+ 39: nege-en-dertig
285
+ 40: veertig
286
+ 41: een-en-veertig
287
+ 42: twee-en-veertig
288
+ 43: drie-en-veertig
289
+ 44: vier-en-veertig
290
+ 45: vyf-en-veertig
291
+ 46: ses-en-veertig
292
+ 47: sewe-en-veertig
293
+ 48: agt-en-veertig
294
+ 49: nege-en-veertig
295
+ 50: vyftig
296
+ 51: een-en-vyftig
297
+ 52: twee-en-vyftig
298
+ 53: drie-en-vyftig
299
+ 54: vier-en-vyftig
300
+ 55: vyf-en-vyftig
301
+ 56: ses-en-vyftig
302
+ 57: sewe-en-vyftig
303
+ 58: agt-en-vyftig
304
+ 59: nege-en-vyftig
305
+ 60: sestig
306
+ 61: een-en-sestig
307
+ 62: twee-en-sestig
308
+ 63: drie-en-sestig
309
+ 64: vier-en-sestig
310
+ 65: vyf-en-sestig
311
+ 66: ses-en-sestig
312
+ 67: sewe-en-sestig
313
+ 68: agt-en-sestig
314
+ 69: nege-en-sestig
315
+ 70: sewentig
316
+ 71: een-en-sewentig
317
+ 72: twee-en-sewentig
318
+ 73: drie-en-sewentig
319
+ 74: vier-en-sewentig
320
+ 75: vyf-en-sewentig
321
+ 76: ses-en-sewentig
322
+ 77: sewe-en-sewentig
323
+ 78: agt-en-sewentig
324
+ 79: nege-en-sewentig
325
+ 80: tagtig
326
+ 81: een-en-tagtig
327
+ 82: twee-en-tagtig
328
+ 83: drie-en-tagtig
329
+ 84: vier-en-tagtig
330
+ 85: vyf-en-tagtig
331
+ 86: ses-en-tagtig
332
+ 87: sewe-en-tagtig
333
+ 88: agt-en-tagtig
334
+ 89: nege-en-tagtig
335
+ 90: negentig
336
+ 91: een-en-negentig
337
+ 92: twee-en-negentig
338
+ 93: drie-en-negentig
339
+ 94: vier-en-negentig
340
+ 95: vyf-en-negentig
341
+ 96: ses-en-negentig
342
+ 97: sewe-en-negentig
343
+ 98: agt-en-negentig
344
+ 99: nege-en-negentig
345
+ 100: honderd
346
+ 321: driehonderd een-en-twintig
347
+ 322: driehonderd twee-en-twintig
348
+ 323: driehonderd drie-en-twintig
349
+ 1141: duisend honderd een-en-veertig
350
+ 1142: duisend honderd twee-en-veertig
351
+ 1143: duisend honderd drie-en-veertig
352
+ 10311: tien­duisend driehonderd elf
353
+ 138400: honderd agt-en-dertig duisend vierhonderd
354
+ spellout-numbering-year:
355
+ -1141: min elf een-en-veertig
356
+ -1142: min elf twee-en-veertig
357
+ -1143: min elf drie-en-veertig
358
+ -100: min honderd
359
+ -75: min vyf-en-sewentig
360
+ -50: min vyftig
361
+ -24: min vier-en-twintig
362
+ 0: nul
363
+ 1: een
364
+ 2: twee
365
+ 3: drie
366
+ 4: vier
367
+ 5: vyf
368
+ 6: ses
369
+ 7: sewe
370
+ 8: agt
371
+ 9: nege
372
+ 10: tien
373
+ 11: elf
374
+ 12: twaalf
375
+ 13: dertien
376
+ 14: veertien
377
+ 15: vyftien
378
+ 16: sestien
379
+ 17: sewentien
380
+ 18: agttien
381
+ 19: negentien
382
+ 20: twintig
383
+ 21: een-en-twintig
384
+ 22: twee-en-twintig
385
+ 23: drie-en-twintig
386
+ 24: vier-en-twintig
387
+ 25: vyf-en-twintig
388
+ 26: ses-en-twintig
389
+ 27: sewe-en-twintig
390
+ 28: agt-en-twintig
391
+ 29: nege-en-twintig
392
+ 30: dertig
393
+ 31: een-en-dertig
394
+ 32: twee-en-dertig
395
+ 33: drie-en-dertig
396
+ 34: vier-en-dertig
397
+ 35: vyf-en-dertig
398
+ 36: ses-en-dertig
399
+ 37: sewe-en-dertig
400
+ 38: agt-en-dertig
401
+ 39: nege-en-dertig
402
+ 40: veertig
403
+ 41: een-en-veertig
404
+ 42: twee-en-veertig
405
+ 43: drie-en-veertig
406
+ 44: vier-en-veertig
407
+ 45: vyf-en-veertig
408
+ 46: ses-en-veertig
409
+ 47: sewe-en-veertig
410
+ 48: agt-en-veertig
411
+ 49: nege-en-veertig
412
+ 50: vyftig
413
+ 51: een-en-vyftig
414
+ 52: twee-en-vyftig
415
+ 53: drie-en-vyftig
416
+ 54: vier-en-vyftig
417
+ 55: vyf-en-vyftig
418
+ 56: ses-en-vyftig
419
+ 57: sewe-en-vyftig
420
+ 58: agt-en-vyftig
421
+ 59: nege-en-vyftig
422
+ 60: sestig
423
+ 61: een-en-sestig
424
+ 62: twee-en-sestig
425
+ 63: drie-en-sestig
426
+ 64: vier-en-sestig
427
+ 65: vyf-en-sestig
428
+ 66: ses-en-sestig
429
+ 67: sewe-en-sestig
430
+ 68: agt-en-sestig
431
+ 69: nege-en-sestig
432
+ 70: sewentig
433
+ 71: een-en-sewentig
434
+ 72: twee-en-sewentig
435
+ 73: drie-en-sewentig
436
+ 74: vier-en-sewentig
437
+ 75: vyf-en-sewentig
438
+ 76: ses-en-sewentig
439
+ 77: sewe-en-sewentig
440
+ 78: agt-en-sewentig
441
+ 79: nege-en-sewentig
442
+ 80: tagtig
443
+ 81: een-en-tagtig
444
+ 82: twee-en-tagtig
445
+ 83: drie-en-tagtig
446
+ 84: vier-en-tagtig
447
+ 85: vyf-en-tagtig
448
+ 86: ses-en-tagtig
449
+ 87: sewe-en-tagtig
450
+ 88: agt-en-tagtig
451
+ 89: nege-en-tagtig
452
+ 90: negentig
453
+ 91: een-en-negentig
454
+ 92: twee-en-negentig
455
+ 93: drie-en-negentig
456
+ 94: vier-en-negentig
457
+ 95: vyf-en-negentig
458
+ 96: ses-en-negentig
459
+ 97: sewe-en-negentig
460
+ 98: agt-en-negentig
461
+ 99: nege-en-negentig
462
+ 100: honderd
463
+ 321: driehonderd een-en-twintig
464
+ 322: driehonderd twee-en-twintig
465
+ 323: driehonderd drie-en-twintig
466
+ 1141: elf een-en-veertig
467
+ 1142: elf twee-en-veertig
468
+ 1143: elf drie-en-veertig
469
+ 10311: tien­duisend driehonderd elf
470
+ 138400: honderd agt-en-dertig duisend vierhonderd
471
+ OrdinalRules:
472
+ digits-ordinal:
473
+ -1141: −1 141ste
474
+ -1142: −1 142ste
475
+ -1143: −1 143ste
476
+ -100: −100ste
477
+ -75: −75ste
478
+ -50: −50ste
479
+ -24: −24ste
480
+ 0: 0ste
481
+ 1: 1ste
482
+ 2: 2de
483
+ 3: 3de
484
+ 4: 4de
485
+ 5: 5de
486
+ 6: 6de
487
+ 7: 7de
488
+ 8: 8de
489
+ 9: 9de
490
+ 10: 10de
491
+ 11: 11de
492
+ 12: 12de
493
+ 13: 13de
494
+ 14: 14de
495
+ 15: 15de
496
+ 16: 16de
497
+ 17: 17de
498
+ 18: 18de
499
+ 19: 19de
500
+ 20: 20ste
501
+ 21: 21ste
502
+ 22: 22ste
503
+ 23: 23ste
504
+ 24: 24ste
505
+ 25: 25ste
506
+ 26: 26ste
507
+ 27: 27ste
508
+ 28: 28ste
509
+ 29: 29ste
510
+ 30: 30ste
511
+ 31: 31ste
512
+ 32: 32ste
513
+ 33: 33ste
514
+ 34: 34ste
515
+ 35: 35ste
516
+ 36: 36ste
517
+ 37: 37ste
518
+ 38: 38ste
519
+ 39: 39ste
520
+ 40: 40ste
521
+ 41: 41ste
522
+ 42: 42ste
523
+ 43: 43ste
524
+ 44: 44ste
525
+ 45: 45ste
526
+ 46: 46ste
527
+ 47: 47ste
528
+ 48: 48ste
529
+ 49: 49ste
530
+ 50: 50ste
531
+ 51: 51ste
532
+ 52: 52ste
533
+ 53: 53ste
534
+ 54: 54ste
535
+ 55: 55ste
536
+ 56: 56ste
537
+ 57: 57ste
538
+ 58: 58ste
539
+ 59: 59ste
540
+ 60: 60ste
541
+ 61: 61ste
542
+ 62: 62ste
543
+ 63: 63ste
544
+ 64: 64ste
545
+ 65: 65ste
546
+ 66: 66ste
547
+ 67: 67ste
548
+ 68: 68ste
549
+ 69: 69ste
550
+ 70: 70ste
551
+ 71: 71ste
552
+ 72: 72ste
553
+ 73: 73ste
554
+ 74: 74ste
555
+ 75: 75ste
556
+ 76: 76ste
557
+ 77: 77ste
558
+ 78: 78ste
559
+ 79: 79ste
560
+ 80: 80ste
561
+ 81: 81ste
562
+ 82: 82ste
563
+ 83: 83ste
564
+ 84: 84ste
565
+ 85: 85ste
566
+ 86: 86ste
567
+ 87: 87ste
568
+ 88: 88ste
569
+ 89: 89ste
570
+ 90: 90ste
571
+ 91: 91ste
572
+ 92: 92ste
573
+ 93: 93ste
574
+ 94: 94ste
575
+ 95: 95ste
576
+ 96: 96ste
577
+ 97: 97ste
578
+ 98: 98ste
579
+ 99: 99ste
580
+ 100: 100ste
581
+ 321: 321ste
582
+ 322: 322ste
583
+ 323: 323ste
584
+ 1141: 1 141ste
585
+ 1142: 1 142ste
586
+ 1143: 1 143ste
587
+ 10311: 10 311de
588
+ 138400: 138 400ste
589
+ DurationRules:
590
+ duration:
591
+ -1141: -1 141
592
+ -1142: -1 142
593
+ -1143: -1 143
594
+ -100: '-100'
595
+ -75: '-75'
596
+ -50: '-50'
597
+ -24: '-24'
598
+ 0: '0'
599
+ 1: '1'
600
+ 2: '2'
601
+ 3: '3'
602
+ 4: '4'
603
+ 5: '5'
604
+ 6: '6'
605
+ 7: '7'
606
+ 8: '8'
607
+ 9: '9'
608
+ 10: '10'
609
+ 11: '11'
610
+ 12: '12'
611
+ 13: '13'
612
+ 14: '14'
613
+ 15: '15'
614
+ 16: '16'
615
+ 17: '17'
616
+ 18: '18'
617
+ 19: '19'
618
+ 20: '20'
619
+ 21: '21'
620
+ 22: '22'
621
+ 23: '23'
622
+ 24: '24'
623
+ 25: '25'
624
+ 26: '26'
625
+ 27: '27'
626
+ 28: '28'
627
+ 29: '29'
628
+ 30: '30'
629
+ 31: '31'
630
+ 32: '32'
631
+ 33: '33'
632
+ 34: '34'
633
+ 35: '35'
634
+ 36: '36'
635
+ 37: '37'
636
+ 38: '38'
637
+ 39: '39'
638
+ 40: '40'
639
+ 41: '41'
640
+ 42: '42'
641
+ 43: '43'
642
+ 44: '44'
643
+ 45: '45'
644
+ 46: '46'
645
+ 47: '47'
646
+ 48: '48'
647
+ 49: '49'
648
+ 50: '50'
649
+ 51: '51'
650
+ 52: '52'
651
+ 53: '53'
652
+ 54: '54'
653
+ 55: '55'
654
+ 56: '56'
655
+ 57: '57'
656
+ 58: '58'
657
+ 59: '59'
658
+ 60: '60'
659
+ 61: '61'
660
+ 62: '62'
661
+ 63: '63'
662
+ 64: '64'
663
+ 65: '65'
664
+ 66: '66'
665
+ 67: '67'
666
+ 68: '68'
667
+ 69: '69'
668
+ 70: '70'
669
+ 71: '71'
670
+ 72: '72'
671
+ 73: '73'
672
+ 74: '74'
673
+ 75: '75'
674
+ 76: '76'
675
+ 77: '77'
676
+ 78: '78'
677
+ 79: '79'
678
+ 80: '80'
679
+ 81: '81'
680
+ 82: '82'
681
+ 83: '83'
682
+ 84: '84'
683
+ 85: '85'
684
+ 86: '86'
685
+ 87: '87'
686
+ 88: '88'
687
+ 89: '89'
688
+ 90: '90'
689
+ 91: '91'
690
+ 92: '92'
691
+ 93: '93'
692
+ 94: '94'
693
+ 95: '95'
694
+ 96: '96'
695
+ 97: '97'
696
+ 98: '98'
697
+ 99: '99'
698
+ 100: '100'
699
+ 321: '321'
700
+ 322: '322'
701
+ 323: '323'
702
+ 1141: 1 141
703
+ 1142: 1 142
704
+ 1143: 1 143
705
+ 10311: 10 311
706
+ 138400: 138 400