twitter_cldr 3.0.0.beta1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
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,1408 @@
1
+ ---
2
+ SpelloutRules:
3
+ spellout-ordinal-feminine:
4
+ -1141: moins mille cent quarante-et-unième
5
+ -1142: moins mille cent quarante-deuxième
6
+ -1143: moins mille cent quarante-troisième
7
+ -100: moins centième
8
+ -75: moins soixante-quinzième
9
+ -50: moins cinquantième
10
+ -24: moins vingt-quatrième
11
+ 0: zéroième
12
+ 1: première
13
+ 2: deuxième
14
+ 3: troisième
15
+ 4: quatrième
16
+ 5: cinquième
17
+ 6: sixième
18
+ 7: septième
19
+ 8: huitième
20
+ 9: neuvième
21
+ 10: dixième
22
+ 11: onzième
23
+ 12: douzième
24
+ 13: treizième
25
+ 14: quatorzième
26
+ 15: quinzième
27
+ 16: seizième
28
+ 17: dix-septième
29
+ 18: dix-huitième
30
+ 19: dix-neuvième
31
+ 20: vingtième
32
+ 21: vingt-et-unième
33
+ 22: vingt-deuxième
34
+ 23: vingt-troisième
35
+ 24: vingt-quatrième
36
+ 25: vingt-cinquième
37
+ 26: vingt-sixième
38
+ 27: vingt-septième
39
+ 28: vingt-huitième
40
+ 29: vingt-neuvième
41
+ 30: trentième
42
+ 31: trente-et-unième
43
+ 32: trente-deuxième
44
+ 33: trente-troisième
45
+ 34: trente-quatrième
46
+ 35: trente-cinquième
47
+ 36: trente-sixième
48
+ 37: trente-septième
49
+ 38: trente-huitième
50
+ 39: trente-neuvième
51
+ 40: quarantième
52
+ 41: quarante-et-unième
53
+ 42: quarante-deuxième
54
+ 43: quarante-troisième
55
+ 44: quarante-quatrième
56
+ 45: quarante-cinquième
57
+ 46: quarante-sixième
58
+ 47: quarante-septième
59
+ 48: quarante-huitième
60
+ 49: quarante-neuvième
61
+ 50: cinquantième
62
+ 51: cinquante-et-unième
63
+ 52: cinquante-deuxième
64
+ 53: cinquante-troisième
65
+ 54: cinquante-quatrième
66
+ 55: cinquante-cinquième
67
+ 56: cinquante-sixième
68
+ 57: cinquante-septième
69
+ 58: cinquante-huitième
70
+ 59: cinquante-neuvième
71
+ 60: soixantième
72
+ 61: soixante-et-unième
73
+ 62: soixante-deuxième
74
+ 63: soixante-troisième
75
+ 64: soixante-quatrième
76
+ 65: soixante-cinquième
77
+ 66: soixante-sixième
78
+ 67: soixante-septième
79
+ 68: soixante-huitième
80
+ 69: soixante-neuvième
81
+ 70: soixante-dixième
82
+ 71: soixante-et-onzième
83
+ 72: soixante-douzième
84
+ 73: soixante-treizième
85
+ 74: soixante-quatorzième
86
+ 75: soixante-quinzième
87
+ 76: soixante-seizième
88
+ 77: soixante-dix-septième
89
+ 78: soixante-dix-huitième
90
+ 79: soixante-dix-neuvième
91
+ 80: quatre-vingtième
92
+ 81: quatre-vingt-et-unième
93
+ 82: quatre-vingt-deuxième
94
+ 83: quatre-vingt-troisième
95
+ 84: quatre-vingt-quatrième
96
+ 85: quatre-vingt-cinquième
97
+ 86: quatre-vingt-sixième
98
+ 87: quatre-vingt-septième
99
+ 88: quatre-vingt-huitième
100
+ 89: quatre-vingt-neuvième
101
+ 90: quatre-vingt-dixième
102
+ 91: quatre-vingt-et-onzième
103
+ 92: quatre-vingt-douzième
104
+ 93: quatre-vingt-treizième
105
+ 94: quatre-vingt-quatorzième
106
+ 95: quatre-vingt-quinzième
107
+ 96: quatre-vingt-seizième
108
+ 97: quatre-vingt-dix-septième
109
+ 98: quatre-vingt-dix-huitième
110
+ 99: quatre-vingt-dix-neuvième
111
+ 100: centième
112
+ 321: trois cent vingt-et-unième
113
+ 322: trois cent vingt-deuxième
114
+ 323: trois cent vingt-troisième
115
+ 1141: mille cent quarante-et-unième
116
+ 1142: mille cent quarante-deuxième
117
+ 1143: mille cent quarante-troisième
118
+ 10311: dix mille trois cent-et-onzième
119
+ 138400: cent trente-huit mille quatre centième
120
+ spellout-ordinal-feminine-plural:
121
+ -1141: moins mille cent quarante-et-unièmes
122
+ -1142: moins mille cent quarante-deuxièmes
123
+ -1143: moins mille cent quarante-troisièmes
124
+ -100: moins centièmes
125
+ -75: moins soixante-quinzièmes
126
+ -50: moins cinquantièmes
127
+ -24: moins vingt-quatrièmes
128
+ 0: zéroièmes
129
+ 1: premières
130
+ 2: deuxièmes
131
+ 3: troisièmes
132
+ 4: quatrièmes
133
+ 5: cinquièmes
134
+ 6: sixièmes
135
+ 7: septièmes
136
+ 8: huitièmes
137
+ 9: neuvièmes
138
+ 10: dixièmes
139
+ 11: onzièmes
140
+ 12: douzièmes
141
+ 13: treizièmes
142
+ 14: quatorzièmes
143
+ 15: quinzièmes
144
+ 16: seizièmes
145
+ 17: dix-septièmes
146
+ 18: dix-huitièmes
147
+ 19: dix-neuvièmes
148
+ 20: vingtièmes
149
+ 21: vingt-et-unièmes
150
+ 22: vingt-deuxièmes
151
+ 23: vingt-troisièmes
152
+ 24: vingt-quatrièmes
153
+ 25: vingt-cinquièmes
154
+ 26: vingt-sixièmes
155
+ 27: vingt-septièmes
156
+ 28: vingt-huitièmes
157
+ 29: vingt-neuvièmes
158
+ 30: trentièmes
159
+ 31: trente-et-unièmes
160
+ 32: trente-deuxièmes
161
+ 33: trente-troisièmes
162
+ 34: trente-quatrièmes
163
+ 35: trente-cinquièmes
164
+ 36: trente-sixièmes
165
+ 37: trente-septièmes
166
+ 38: trente-huitièmes
167
+ 39: trente-neuvièmes
168
+ 40: quarantièmes
169
+ 41: quarante-et-unièmes
170
+ 42: quarante-deuxièmes
171
+ 43: quarante-troisièmes
172
+ 44: quarante-quatrièmes
173
+ 45: quarante-cinquièmes
174
+ 46: quarante-sixièmes
175
+ 47: quarante-septièmes
176
+ 48: quarante-huitièmes
177
+ 49: quarante-neuvièmes
178
+ 50: cinquantièmes
179
+ 51: cinquante-et-unièmes
180
+ 52: cinquante-deuxièmes
181
+ 53: cinquante-troisièmes
182
+ 54: cinquante-quatrièmes
183
+ 55: cinquante-cinquièmes
184
+ 56: cinquante-sixièmes
185
+ 57: cinquante-septièmes
186
+ 58: cinquante-huitièmes
187
+ 59: cinquante-neuvièmes
188
+ 60: soixantièmes
189
+ 61: soixante-et-unièmes
190
+ 62: soixante-deuxièmes
191
+ 63: soixante-troisièmes
192
+ 64: soixante-quatrièmes
193
+ 65: soixante-cinquièmes
194
+ 66: soixante-sixièmes
195
+ 67: soixante-septièmes
196
+ 68: soixante-huitièmes
197
+ 69: soixante-neuvièmes
198
+ 70: soixante-dixièmes
199
+ 71: soixante-et-onzièmes
200
+ 72: soixante-douzièmes
201
+ 73: soixante-treizièmes
202
+ 74: soixante-quatorzièmes
203
+ 75: soixante-quinzièmes
204
+ 76: soixante-seizièmes
205
+ 77: soixante-dix-septièmes
206
+ 78: soixante-dix-huitièmes
207
+ 79: soixante-dix-neuvièmes
208
+ 80: quatre-vingtièmes
209
+ 81: quatre-vingt-et-unièmes
210
+ 82: quatre-vingt-deuxièmes
211
+ 83: quatre-vingt-troisièmes
212
+ 84: quatre-vingt-quatrièmes
213
+ 85: quatre-vingt-cinquièmes
214
+ 86: quatre-vingt-sixièmes
215
+ 87: quatre-vingt-septièmes
216
+ 88: quatre-vingt-huitièmes
217
+ 89: quatre-vingt-neuvièmes
218
+ 90: quatre-vingt-dixièmes
219
+ 91: quatre-vingt-et-onzièmes
220
+ 92: quatre-vingt-douzièmes
221
+ 93: quatre-vingt-treizièmes
222
+ 94: quatre-vingt-quatorzièmes
223
+ 95: quatre-vingt-quinzièmes
224
+ 96: quatre-vingt-seizièmes
225
+ 97: quatre-vingt-dix-septièmes
226
+ 98: quatre-vingt-dix-huitièmes
227
+ 99: quatre-vingt-dix-neuvièmes
228
+ 100: centièmes
229
+ 321: trois cent vingt-et-unièmes
230
+ 322: trois cent vingt-deuxièmes
231
+ 323: trois cent vingt-troisièmes
232
+ 1141: mille cent quarante-et-unièmes
233
+ 1142: mille cent quarante-deuxièmes
234
+ 1143: mille cent quarante-troisièmes
235
+ 10311: dix mille trois cent-et-onzièmes
236
+ 138400: cent trente-huit mille quatre centièmes
237
+ spellout-ordinal-masculine:
238
+ -1141: moins mille cent quarante-et-unième
239
+ -1142: moins mille cent quarante-deuxième
240
+ -1143: moins mille cent quarante-troisième
241
+ -100: moins centième
242
+ -75: moins soixante-quinzième
243
+ -50: moins cinquantième
244
+ -24: moins vingt-quatrième
245
+ 0: zéroième
246
+ 1: premier
247
+ 2: deuxième
248
+ 3: troisième
249
+ 4: quatrième
250
+ 5: cinquième
251
+ 6: sixième
252
+ 7: septième
253
+ 8: huitième
254
+ 9: neuvième
255
+ 10: dixième
256
+ 11: onzième
257
+ 12: douzième
258
+ 13: treizième
259
+ 14: quatorzième
260
+ 15: quinzième
261
+ 16: seizième
262
+ 17: dix-septième
263
+ 18: dix-huitième
264
+ 19: dix-neuvième
265
+ 20: vingtième
266
+ 21: vingt-et-unième
267
+ 22: vingt-deuxième
268
+ 23: vingt-troisième
269
+ 24: vingt-quatrième
270
+ 25: vingt-cinquième
271
+ 26: vingt-sixième
272
+ 27: vingt-septième
273
+ 28: vingt-huitième
274
+ 29: vingt-neuvième
275
+ 30: trentième
276
+ 31: trente-et-unième
277
+ 32: trente-deuxième
278
+ 33: trente-troisième
279
+ 34: trente-quatrième
280
+ 35: trente-cinquième
281
+ 36: trente-sixième
282
+ 37: trente-septième
283
+ 38: trente-huitième
284
+ 39: trente-neuvième
285
+ 40: quarantième
286
+ 41: quarante-et-unième
287
+ 42: quarante-deuxième
288
+ 43: quarante-troisième
289
+ 44: quarante-quatrième
290
+ 45: quarante-cinquième
291
+ 46: quarante-sixième
292
+ 47: quarante-septième
293
+ 48: quarante-huitième
294
+ 49: quarante-neuvième
295
+ 50: cinquantième
296
+ 51: cinquante-et-unième
297
+ 52: cinquante-deuxième
298
+ 53: cinquante-troisième
299
+ 54: cinquante-quatrième
300
+ 55: cinquante-cinquième
301
+ 56: cinquante-sixième
302
+ 57: cinquante-septième
303
+ 58: cinquante-huitième
304
+ 59: cinquante-neuvième
305
+ 60: soixantième
306
+ 61: soixante-et-unième
307
+ 62: soixante-deuxième
308
+ 63: soixante-troisième
309
+ 64: soixante-quatrième
310
+ 65: soixante-cinquième
311
+ 66: soixante-sixième
312
+ 67: soixante-septième
313
+ 68: soixante-huitième
314
+ 69: soixante-neuvième
315
+ 70: soixante-dixième
316
+ 71: soixante-et-onzième
317
+ 72: soixante-douzième
318
+ 73: soixante-treizième
319
+ 74: soixante-quatorzième
320
+ 75: soixante-quinzième
321
+ 76: soixante-seizième
322
+ 77: soixante-dix-septième
323
+ 78: soixante-dix-huitième
324
+ 79: soixante-dix-neuvième
325
+ 80: quatre-vingtième
326
+ 81: quatre-vingt-et-unième
327
+ 82: quatre-vingt-deuxième
328
+ 83: quatre-vingt-troisième
329
+ 84: quatre-vingt-quatrième
330
+ 85: quatre-vingt-cinquième
331
+ 86: quatre-vingt-sixième
332
+ 87: quatre-vingt-septième
333
+ 88: quatre-vingt-huitième
334
+ 89: quatre-vingt-neuvième
335
+ 90: quatre-vingt-dixième
336
+ 91: quatre-vingt-et-onzième
337
+ 92: quatre-vingt-douzième
338
+ 93: quatre-vingt-treizième
339
+ 94: quatre-vingt-quatorzième
340
+ 95: quatre-vingt-quinzième
341
+ 96: quatre-vingt-seizième
342
+ 97: quatre-vingt-dix-septième
343
+ 98: quatre-vingt-dix-huitième
344
+ 99: quatre-vingt-dix-neuvième
345
+ 100: centième
346
+ 321: trois cent vingt-et-unième
347
+ 322: trois cent vingt-deuxième
348
+ 323: trois cent vingt-troisième
349
+ 1141: mille cent quarante-et-unième
350
+ 1142: mille cent quarante-deuxième
351
+ 1143: mille cent quarante-troisième
352
+ 10311: dix mille trois cent-et-onzième
353
+ 138400: cent trente-huit mille quatre centième
354
+ spellout-ordinal-masculine-plural:
355
+ -1141: moins mille cent quarante-et-unièmes
356
+ -1142: moins mille cent quarante-deuxièmes
357
+ -1143: moins mille cent quarante-troisièmes
358
+ -100: moins centièmes
359
+ -75: moins soixante-quinzièmes
360
+ -50: moins cinquantièmes
361
+ -24: moins vingt-quatrièmes
362
+ 0: zéroièmes
363
+ 1: premiers
364
+ 2: deuxièmes
365
+ 3: troisièmes
366
+ 4: quatrièmes
367
+ 5: cinquièmes
368
+ 6: sixièmes
369
+ 7: septièmes
370
+ 8: huitièmes
371
+ 9: neuvièmes
372
+ 10: dixièmes
373
+ 11: onzièmes
374
+ 12: douzièmes
375
+ 13: treizièmes
376
+ 14: quatorzièmes
377
+ 15: quinzièmes
378
+ 16: seizièmes
379
+ 17: dix-septièmes
380
+ 18: dix-huitièmes
381
+ 19: dix-neuvièmes
382
+ 20: vingtièmes
383
+ 21: vingt-et-unièmes
384
+ 22: vingt-deuxièmes
385
+ 23: vingt-troisièmes
386
+ 24: vingt-quatrièmes
387
+ 25: vingt-cinquièmes
388
+ 26: vingt-sixièmes
389
+ 27: vingt-septièmes
390
+ 28: vingt-huitièmes
391
+ 29: vingt-neuvièmes
392
+ 30: trentièmes
393
+ 31: trente-et-unièmes
394
+ 32: trente-deuxièmes
395
+ 33: trente-troisièmes
396
+ 34: trente-quatrièmes
397
+ 35: trente-cinquièmes
398
+ 36: trente-sixièmes
399
+ 37: trente-septièmes
400
+ 38: trente-huitièmes
401
+ 39: trente-neuvièmes
402
+ 40: quarantièmes
403
+ 41: quarante-et-unièmes
404
+ 42: quarante-deuxièmes
405
+ 43: quarante-troisièmes
406
+ 44: quarante-quatrièmes
407
+ 45: quarante-cinquièmes
408
+ 46: quarante-sixièmes
409
+ 47: quarante-septièmes
410
+ 48: quarante-huitièmes
411
+ 49: quarante-neuvièmes
412
+ 50: cinquantièmes
413
+ 51: cinquante-et-unièmes
414
+ 52: cinquante-deuxièmes
415
+ 53: cinquante-troisièmes
416
+ 54: cinquante-quatrièmes
417
+ 55: cinquante-cinquièmes
418
+ 56: cinquante-sixièmes
419
+ 57: cinquante-septièmes
420
+ 58: cinquante-huitièmes
421
+ 59: cinquante-neuvièmes
422
+ 60: soixantièmes
423
+ 61: soixante-et-unièmes
424
+ 62: soixante-deuxièmes
425
+ 63: soixante-troisièmes
426
+ 64: soixante-quatrièmes
427
+ 65: soixante-cinquièmes
428
+ 66: soixante-sixièmes
429
+ 67: soixante-septièmes
430
+ 68: soixante-huitièmes
431
+ 69: soixante-neuvièmes
432
+ 70: soixante-dixièmes
433
+ 71: soixante-et-onzièmes
434
+ 72: soixante-douzièmes
435
+ 73: soixante-treizièmes
436
+ 74: soixante-quatorzièmes
437
+ 75: soixante-quinzièmes
438
+ 76: soixante-seizièmes
439
+ 77: soixante-dix-septièmes
440
+ 78: soixante-dix-huitièmes
441
+ 79: soixante-dix-neuvièmes
442
+ 80: quatre-vingtièmes
443
+ 81: quatre-vingt-et-unièmes
444
+ 82: quatre-vingt-deuxièmes
445
+ 83: quatre-vingt-troisièmes
446
+ 84: quatre-vingt-quatrièmes
447
+ 85: quatre-vingt-cinquièmes
448
+ 86: quatre-vingt-sixièmes
449
+ 87: quatre-vingt-septièmes
450
+ 88: quatre-vingt-huitièmes
451
+ 89: quatre-vingt-neuvièmes
452
+ 90: quatre-vingt-dixièmes
453
+ 91: quatre-vingt-et-onzièmes
454
+ 92: quatre-vingt-douzièmes
455
+ 93: quatre-vingt-treizièmes
456
+ 94: quatre-vingt-quatorzièmes
457
+ 95: quatre-vingt-quinzièmes
458
+ 96: quatre-vingt-seizièmes
459
+ 97: quatre-vingt-dix-septièmes
460
+ 98: quatre-vingt-dix-huitièmes
461
+ 99: quatre-vingt-dix-neuvièmes
462
+ 100: centièmes
463
+ 321: trois cent vingt-et-unièmes
464
+ 322: trois cent vingt-deuxièmes
465
+ 323: trois cent vingt-troisièmes
466
+ 1141: mille cent quarante-et-unièmes
467
+ 1142: mille cent quarante-deuxièmes
468
+ 1143: mille cent quarante-troisièmes
469
+ 10311: dix mille trois cent-et-onzièmes
470
+ 138400: cent trente-huit mille quatre centièmes
471
+ spellout-cardinal-feminine:
472
+ -1141: moins mille cent quarante-et-une
473
+ -1142: moins mille cent quarante-deux
474
+ -1143: moins mille cent quarante-trois
475
+ -100: moins cent
476
+ -75: moins soixante-quinze
477
+ -50: moins cinquante
478
+ -24: moins vingt-quatre
479
+ 0: zéro
480
+ 1: une
481
+ 2: deux
482
+ 3: trois
483
+ 4: quatre
484
+ 5: cinq
485
+ 6: six
486
+ 7: sept
487
+ 8: huit
488
+ 9: neuf
489
+ 10: dix
490
+ 11: onze
491
+ 12: douze
492
+ 13: treize
493
+ 14: quatorze
494
+ 15: quinze
495
+ 16: seize
496
+ 17: dix-sept
497
+ 18: dix-huit
498
+ 19: dix-neuf
499
+ 20: vingt
500
+ 21: vingt-et-une
501
+ 22: vingt-deux
502
+ 23: vingt-trois
503
+ 24: vingt-quatre
504
+ 25: vingt-cinq
505
+ 26: vingt-six
506
+ 27: vingt-sept
507
+ 28: vingt-huit
508
+ 29: vingt-neuf
509
+ 30: trente
510
+ 31: trente-et-une
511
+ 32: trente-deux
512
+ 33: trente-trois
513
+ 34: trente-quatre
514
+ 35: trente-cinq
515
+ 36: trente-six
516
+ 37: trente-sept
517
+ 38: trente-huit
518
+ 39: trente-neuf
519
+ 40: quarante
520
+ 41: quarante-et-une
521
+ 42: quarante-deux
522
+ 43: quarante-trois
523
+ 44: quarante-quatre
524
+ 45: quarante-cinq
525
+ 46: quarante-six
526
+ 47: quarante-sept
527
+ 48: quarante-huit
528
+ 49: quarante-neuf
529
+ 50: cinquante
530
+ 51: cinquante-et-une
531
+ 52: cinquante-deux
532
+ 53: cinquante-trois
533
+ 54: cinquante-quatre
534
+ 55: cinquante-cinq
535
+ 56: cinquante-six
536
+ 57: cinquante-sept
537
+ 58: cinquante-huit
538
+ 59: cinquante-neuf
539
+ 60: soixante
540
+ 61: soixante-et-une
541
+ 62: soixante-deux
542
+ 63: soixante-trois
543
+ 64: soixante-quatre
544
+ 65: soixante-cinq
545
+ 66: soixante-six
546
+ 67: soixante-sept
547
+ 68: soixante-huit
548
+ 69: soixante-neuf
549
+ 70: soixante-dix
550
+ 71: soixante-et-onze
551
+ 72: soixante-douze
552
+ 73: soixante-treize
553
+ 74: soixante-quatorze
554
+ 75: soixante-quinze
555
+ 76: soixante-seize
556
+ 77: soixante-dix-sept
557
+ 78: soixante-dix-huit
558
+ 79: soixante-dix-neuf
559
+ 80: quatre-vingts
560
+ 81: quatre-vingt-une
561
+ 82: quatre-vingt-deux
562
+ 83: quatre-vingt-trois
563
+ 84: quatre-vingt-quatre
564
+ 85: quatre-vingt-cinq
565
+ 86: quatre-vingt-six
566
+ 87: quatre-vingt-sept
567
+ 88: quatre-vingt-huit
568
+ 89: quatre-vingt-neuf
569
+ 90: quatre-vingt-dix
570
+ 91: quatre-vingt-onze
571
+ 92: quatre-vingt-douze
572
+ 93: quatre-vingt-treize
573
+ 94: quatre-vingt-quatorze
574
+ 95: quatre-vingt-quinze
575
+ 96: quatre-vingt-seize
576
+ 97: quatre-vingt-dix-sept
577
+ 98: quatre-vingt-dix-huit
578
+ 99: quatre-vingt-dix-neuf
579
+ 100: cent
580
+ 321: trois cent vingt-et-une
581
+ 322: trois cent vingt-deux
582
+ 323: trois cent vingt-trois
583
+ 1141: mille cent quarante-et-une
584
+ 1142: mille cent quarante-deux
585
+ 1143: mille cent quarante-trois
586
+ 10311: dix mille trois cent onze
587
+ 138400: cent trente-huit mille quatre cents
588
+ spellout-cardinal-masculine:
589
+ -1141: moins mille cent quarante-et-un
590
+ -1142: moins mille cent quarante-deux
591
+ -1143: moins mille cent quarante-trois
592
+ -100: moins cent
593
+ -75: moins soixante-quinze
594
+ -50: moins cinquante
595
+ -24: moins vingt-quatre
596
+ 0: zéro
597
+ 1: un
598
+ 2: deux
599
+ 3: trois
600
+ 4: quatre
601
+ 5: cinq
602
+ 6: six
603
+ 7: sept
604
+ 8: huit
605
+ 9: neuf
606
+ 10: dix
607
+ 11: onze
608
+ 12: douze
609
+ 13: treize
610
+ 14: quatorze
611
+ 15: quinze
612
+ 16: seize
613
+ 17: dix-sept
614
+ 18: dix-huit
615
+ 19: dix-neuf
616
+ 20: vingt
617
+ 21: vingt-et-un
618
+ 22: vingt-deux
619
+ 23: vingt-trois
620
+ 24: vingt-quatre
621
+ 25: vingt-cinq
622
+ 26: vingt-six
623
+ 27: vingt-sept
624
+ 28: vingt-huit
625
+ 29: vingt-neuf
626
+ 30: trente
627
+ 31: trente-et-un
628
+ 32: trente-deux
629
+ 33: trente-trois
630
+ 34: trente-quatre
631
+ 35: trente-cinq
632
+ 36: trente-six
633
+ 37: trente-sept
634
+ 38: trente-huit
635
+ 39: trente-neuf
636
+ 40: quarante
637
+ 41: quarante-et-un
638
+ 42: quarante-deux
639
+ 43: quarante-trois
640
+ 44: quarante-quatre
641
+ 45: quarante-cinq
642
+ 46: quarante-six
643
+ 47: quarante-sept
644
+ 48: quarante-huit
645
+ 49: quarante-neuf
646
+ 50: cinquante
647
+ 51: cinquante-et-un
648
+ 52: cinquante-deux
649
+ 53: cinquante-trois
650
+ 54: cinquante-quatre
651
+ 55: cinquante-cinq
652
+ 56: cinquante-six
653
+ 57: cinquante-sept
654
+ 58: cinquante-huit
655
+ 59: cinquante-neuf
656
+ 60: soixante
657
+ 61: soixante-et-un
658
+ 62: soixante-deux
659
+ 63: soixante-trois
660
+ 64: soixante-quatre
661
+ 65: soixante-cinq
662
+ 66: soixante-six
663
+ 67: soixante-sept
664
+ 68: soixante-huit
665
+ 69: soixante-neuf
666
+ 70: soixante-dix
667
+ 71: soixante-et-onze
668
+ 72: soixante-douze
669
+ 73: soixante-treize
670
+ 74: soixante-quatorze
671
+ 75: soixante-quinze
672
+ 76: soixante-seize
673
+ 77: soixante-dix-sept
674
+ 78: soixante-dix-huit
675
+ 79: soixante-dix-neuf
676
+ 80: quatre-vingts
677
+ 81: quatre-vingt-un
678
+ 82: quatre-vingt-deux
679
+ 83: quatre-vingt-trois
680
+ 84: quatre-vingt-quatre
681
+ 85: quatre-vingt-cinq
682
+ 86: quatre-vingt-six
683
+ 87: quatre-vingt-sept
684
+ 88: quatre-vingt-huit
685
+ 89: quatre-vingt-neuf
686
+ 90: quatre-vingt-dix
687
+ 91: quatre-vingt-onze
688
+ 92: quatre-vingt-douze
689
+ 93: quatre-vingt-treize
690
+ 94: quatre-vingt-quatorze
691
+ 95: quatre-vingt-quinze
692
+ 96: quatre-vingt-seize
693
+ 97: quatre-vingt-dix-sept
694
+ 98: quatre-vingt-dix-huit
695
+ 99: quatre-vingt-dix-neuf
696
+ 100: cent
697
+ 321: trois cent vingt-et-un
698
+ 322: trois cent vingt-deux
699
+ 323: trois cent vingt-trois
700
+ 1141: mille cent quarante-et-un
701
+ 1142: mille cent quarante-deux
702
+ 1143: mille cent quarante-trois
703
+ 10311: dix mille trois cent onze
704
+ 138400: cent trente-huit mille quatre cents
705
+ spellout-numbering:
706
+ -1141: moins mille cent quarante-et-un
707
+ -1142: moins mille cent quarante-deux
708
+ -1143: moins mille cent quarante-trois
709
+ -100: moins cent
710
+ -75: moins soixante-quinze
711
+ -50: moins cinquante
712
+ -24: moins vingt-quatre
713
+ 0: zéro
714
+ 1: un
715
+ 2: deux
716
+ 3: trois
717
+ 4: quatre
718
+ 5: cinq
719
+ 6: six
720
+ 7: sept
721
+ 8: huit
722
+ 9: neuf
723
+ 10: dix
724
+ 11: onze
725
+ 12: douze
726
+ 13: treize
727
+ 14: quatorze
728
+ 15: quinze
729
+ 16: seize
730
+ 17: dix-sept
731
+ 18: dix-huit
732
+ 19: dix-neuf
733
+ 20: vingt
734
+ 21: vingt-et-un
735
+ 22: vingt-deux
736
+ 23: vingt-trois
737
+ 24: vingt-quatre
738
+ 25: vingt-cinq
739
+ 26: vingt-six
740
+ 27: vingt-sept
741
+ 28: vingt-huit
742
+ 29: vingt-neuf
743
+ 30: trente
744
+ 31: trente-et-un
745
+ 32: trente-deux
746
+ 33: trente-trois
747
+ 34: trente-quatre
748
+ 35: trente-cinq
749
+ 36: trente-six
750
+ 37: trente-sept
751
+ 38: trente-huit
752
+ 39: trente-neuf
753
+ 40: quarante
754
+ 41: quarante-et-un
755
+ 42: quarante-deux
756
+ 43: quarante-trois
757
+ 44: quarante-quatre
758
+ 45: quarante-cinq
759
+ 46: quarante-six
760
+ 47: quarante-sept
761
+ 48: quarante-huit
762
+ 49: quarante-neuf
763
+ 50: cinquante
764
+ 51: cinquante-et-un
765
+ 52: cinquante-deux
766
+ 53: cinquante-trois
767
+ 54: cinquante-quatre
768
+ 55: cinquante-cinq
769
+ 56: cinquante-six
770
+ 57: cinquante-sept
771
+ 58: cinquante-huit
772
+ 59: cinquante-neuf
773
+ 60: soixante
774
+ 61: soixante-et-un
775
+ 62: soixante-deux
776
+ 63: soixante-trois
777
+ 64: soixante-quatre
778
+ 65: soixante-cinq
779
+ 66: soixante-six
780
+ 67: soixante-sept
781
+ 68: soixante-huit
782
+ 69: soixante-neuf
783
+ 70: soixante-dix
784
+ 71: soixante-et-onze
785
+ 72: soixante-douze
786
+ 73: soixante-treize
787
+ 74: soixante-quatorze
788
+ 75: soixante-quinze
789
+ 76: soixante-seize
790
+ 77: soixante-dix-sept
791
+ 78: soixante-dix-huit
792
+ 79: soixante-dix-neuf
793
+ 80: quatre-vingts
794
+ 81: quatre-vingt-un
795
+ 82: quatre-vingt-deux
796
+ 83: quatre-vingt-trois
797
+ 84: quatre-vingt-quatre
798
+ 85: quatre-vingt-cinq
799
+ 86: quatre-vingt-six
800
+ 87: quatre-vingt-sept
801
+ 88: quatre-vingt-huit
802
+ 89: quatre-vingt-neuf
803
+ 90: quatre-vingt-dix
804
+ 91: quatre-vingt-onze
805
+ 92: quatre-vingt-douze
806
+ 93: quatre-vingt-treize
807
+ 94: quatre-vingt-quatorze
808
+ 95: quatre-vingt-quinze
809
+ 96: quatre-vingt-seize
810
+ 97: quatre-vingt-dix-sept
811
+ 98: quatre-vingt-dix-huit
812
+ 99: quatre-vingt-dix-neuf
813
+ 100: cent
814
+ 321: trois cent vingt-et-un
815
+ 322: trois cent vingt-deux
816
+ 323: trois cent vingt-trois
817
+ 1141: mille cent quarante-et-un
818
+ 1142: mille cent quarante-deux
819
+ 1143: mille cent quarante-trois
820
+ 10311: dix mille trois cent onze
821
+ 138400: cent trente-huit mille quatre cents
822
+ spellout-numbering-year:
823
+ -1141: moins onze-cent quarante-et-un
824
+ -1142: moins onze-cent quarante-deux
825
+ -1143: moins onze-cent quarante-trois
826
+ -100: moins cent
827
+ -75: moins soixante-quinze
828
+ -50: moins cinquante
829
+ -24: moins vingt-quatre
830
+ 0: zéro
831
+ 1: un
832
+ 2: deux
833
+ 3: trois
834
+ 4: quatre
835
+ 5: cinq
836
+ 6: six
837
+ 7: sept
838
+ 8: huit
839
+ 9: neuf
840
+ 10: dix
841
+ 11: onze
842
+ 12: douze
843
+ 13: treize
844
+ 14: quatorze
845
+ 15: quinze
846
+ 16: seize
847
+ 17: dix-sept
848
+ 18: dix-huit
849
+ 19: dix-neuf
850
+ 20: vingt
851
+ 21: vingt-et-un
852
+ 22: vingt-deux
853
+ 23: vingt-trois
854
+ 24: vingt-quatre
855
+ 25: vingt-cinq
856
+ 26: vingt-six
857
+ 27: vingt-sept
858
+ 28: vingt-huit
859
+ 29: vingt-neuf
860
+ 30: trente
861
+ 31: trente-et-un
862
+ 32: trente-deux
863
+ 33: trente-trois
864
+ 34: trente-quatre
865
+ 35: trente-cinq
866
+ 36: trente-six
867
+ 37: trente-sept
868
+ 38: trente-huit
869
+ 39: trente-neuf
870
+ 40: quarante
871
+ 41: quarante-et-un
872
+ 42: quarante-deux
873
+ 43: quarante-trois
874
+ 44: quarante-quatre
875
+ 45: quarante-cinq
876
+ 46: quarante-six
877
+ 47: quarante-sept
878
+ 48: quarante-huit
879
+ 49: quarante-neuf
880
+ 50: cinquante
881
+ 51: cinquante-et-un
882
+ 52: cinquante-deux
883
+ 53: cinquante-trois
884
+ 54: cinquante-quatre
885
+ 55: cinquante-cinq
886
+ 56: cinquante-six
887
+ 57: cinquante-sept
888
+ 58: cinquante-huit
889
+ 59: cinquante-neuf
890
+ 60: soixante
891
+ 61: soixante-et-un
892
+ 62: soixante-deux
893
+ 63: soixante-trois
894
+ 64: soixante-quatre
895
+ 65: soixante-cinq
896
+ 66: soixante-six
897
+ 67: soixante-sept
898
+ 68: soixante-huit
899
+ 69: soixante-neuf
900
+ 70: soixante-dix
901
+ 71: soixante-et-onze
902
+ 72: soixante-douze
903
+ 73: soixante-treize
904
+ 74: soixante-quatorze
905
+ 75: soixante-quinze
906
+ 76: soixante-seize
907
+ 77: soixante-dix-sept
908
+ 78: soixante-dix-huit
909
+ 79: soixante-dix-neuf
910
+ 80: quatre-vingts
911
+ 81: quatre-vingt-un
912
+ 82: quatre-vingt-deux
913
+ 83: quatre-vingt-trois
914
+ 84: quatre-vingt-quatre
915
+ 85: quatre-vingt-cinq
916
+ 86: quatre-vingt-six
917
+ 87: quatre-vingt-sept
918
+ 88: quatre-vingt-huit
919
+ 89: quatre-vingt-neuf
920
+ 90: quatre-vingt-dix
921
+ 91: quatre-vingt-onze
922
+ 92: quatre-vingt-douze
923
+ 93: quatre-vingt-treize
924
+ 94: quatre-vingt-quatorze
925
+ 95: quatre-vingt-quinze
926
+ 96: quatre-vingt-seize
927
+ 97: quatre-vingt-dix-sept
928
+ 98: quatre-vingt-dix-huit
929
+ 99: quatre-vingt-dix-neuf
930
+ 100: cent
931
+ 321: trois cent vingt-et-un
932
+ 322: trois cent vingt-deux
933
+ 323: trois cent vingt-trois
934
+ 1141: onze-cent quarante-et-un
935
+ 1142: onze-cent quarante-deux
936
+ 1143: onze-cent quarante-trois
937
+ 10311: dix mille trois cent onze
938
+ 138400: cent trente-huit mille quatre cents
939
+ OrdinalRules:
940
+ digits-ordinal:
941
+ -1141: −1 141e
942
+ -1142: −1 142e
943
+ -1143: −1 143e
944
+ -100: −100e
945
+ -75: −75e
946
+ -50: −50e
947
+ -24: −24e
948
+ 0: 0e
949
+ 1: 1er
950
+ 2: 2e
951
+ 3: 3e
952
+ 4: 4e
953
+ 5: 5e
954
+ 6: 6e
955
+ 7: 7e
956
+ 8: 8e
957
+ 9: 9e
958
+ 10: 10e
959
+ 11: 11e
960
+ 12: 12e
961
+ 13: 13e
962
+ 14: 14e
963
+ 15: 15e
964
+ 16: 16e
965
+ 17: 17e
966
+ 18: 18e
967
+ 19: 19e
968
+ 20: 20e
969
+ 21: 21e
970
+ 22: 22e
971
+ 23: 23e
972
+ 24: 24e
973
+ 25: 25e
974
+ 26: 26e
975
+ 27: 27e
976
+ 28: 28e
977
+ 29: 29e
978
+ 30: 30e
979
+ 31: 31e
980
+ 32: 32e
981
+ 33: 33e
982
+ 34: 34e
983
+ 35: 35e
984
+ 36: 36e
985
+ 37: 37e
986
+ 38: 38e
987
+ 39: 39e
988
+ 40: 40e
989
+ 41: 41e
990
+ 42: 42e
991
+ 43: 43e
992
+ 44: 44e
993
+ 45: 45e
994
+ 46: 46e
995
+ 47: 47e
996
+ 48: 48e
997
+ 49: 49e
998
+ 50: 50e
999
+ 51: 51e
1000
+ 52: 52e
1001
+ 53: 53e
1002
+ 54: 54e
1003
+ 55: 55e
1004
+ 56: 56e
1005
+ 57: 57e
1006
+ 58: 58e
1007
+ 59: 59e
1008
+ 60: 60e
1009
+ 61: 61e
1010
+ 62: 62e
1011
+ 63: 63e
1012
+ 64: 64e
1013
+ 65: 65e
1014
+ 66: 66e
1015
+ 67: 67e
1016
+ 68: 68e
1017
+ 69: 69e
1018
+ 70: 70e
1019
+ 71: 71e
1020
+ 72: 72e
1021
+ 73: 73e
1022
+ 74: 74e
1023
+ 75: 75e
1024
+ 76: 76e
1025
+ 77: 77e
1026
+ 78: 78e
1027
+ 79: 79e
1028
+ 80: 80e
1029
+ 81: 81e
1030
+ 82: 82e
1031
+ 83: 83e
1032
+ 84: 84e
1033
+ 85: 85e
1034
+ 86: 86e
1035
+ 87: 87e
1036
+ 88: 88e
1037
+ 89: 89e
1038
+ 90: 90e
1039
+ 91: 91e
1040
+ 92: 92e
1041
+ 93: 93e
1042
+ 94: 94e
1043
+ 95: 95e
1044
+ 96: 96e
1045
+ 97: 97e
1046
+ 98: 98e
1047
+ 99: 99e
1048
+ 100: 100e
1049
+ 321: 321e
1050
+ 322: 322e
1051
+ 323: 323e
1052
+ 1141: 1 141e
1053
+ 1142: 1 142e
1054
+ 1143: 1 143e
1055
+ 10311: 10 311e
1056
+ 138400: 138 400e
1057
+ digits-ordinal-feminine:
1058
+ -1141: −1 141e
1059
+ -1142: −1 142e
1060
+ -1143: −1 143e
1061
+ -100: −100e
1062
+ -75: −75e
1063
+ -50: −50e
1064
+ -24: −24e
1065
+ 0: 0e
1066
+ 1: 1re
1067
+ 2: 2e
1068
+ 3: 3e
1069
+ 4: 4e
1070
+ 5: 5e
1071
+ 6: 6e
1072
+ 7: 7e
1073
+ 8: 8e
1074
+ 9: 9e
1075
+ 10: 10e
1076
+ 11: 11e
1077
+ 12: 12e
1078
+ 13: 13e
1079
+ 14: 14e
1080
+ 15: 15e
1081
+ 16: 16e
1082
+ 17: 17e
1083
+ 18: 18e
1084
+ 19: 19e
1085
+ 20: 20e
1086
+ 21: 21e
1087
+ 22: 22e
1088
+ 23: 23e
1089
+ 24: 24e
1090
+ 25: 25e
1091
+ 26: 26e
1092
+ 27: 27e
1093
+ 28: 28e
1094
+ 29: 29e
1095
+ 30: 30e
1096
+ 31: 31e
1097
+ 32: 32e
1098
+ 33: 33e
1099
+ 34: 34e
1100
+ 35: 35e
1101
+ 36: 36e
1102
+ 37: 37e
1103
+ 38: 38e
1104
+ 39: 39e
1105
+ 40: 40e
1106
+ 41: 41e
1107
+ 42: 42e
1108
+ 43: 43e
1109
+ 44: 44e
1110
+ 45: 45e
1111
+ 46: 46e
1112
+ 47: 47e
1113
+ 48: 48e
1114
+ 49: 49e
1115
+ 50: 50e
1116
+ 51: 51e
1117
+ 52: 52e
1118
+ 53: 53e
1119
+ 54: 54e
1120
+ 55: 55e
1121
+ 56: 56e
1122
+ 57: 57e
1123
+ 58: 58e
1124
+ 59: 59e
1125
+ 60: 60e
1126
+ 61: 61e
1127
+ 62: 62e
1128
+ 63: 63e
1129
+ 64: 64e
1130
+ 65: 65e
1131
+ 66: 66e
1132
+ 67: 67e
1133
+ 68: 68e
1134
+ 69: 69e
1135
+ 70: 70e
1136
+ 71: 71e
1137
+ 72: 72e
1138
+ 73: 73e
1139
+ 74: 74e
1140
+ 75: 75e
1141
+ 76: 76e
1142
+ 77: 77e
1143
+ 78: 78e
1144
+ 79: 79e
1145
+ 80: 80e
1146
+ 81: 81e
1147
+ 82: 82e
1148
+ 83: 83e
1149
+ 84: 84e
1150
+ 85: 85e
1151
+ 86: 86e
1152
+ 87: 87e
1153
+ 88: 88e
1154
+ 89: 89e
1155
+ 90: 90e
1156
+ 91: 91e
1157
+ 92: 92e
1158
+ 93: 93e
1159
+ 94: 94e
1160
+ 95: 95e
1161
+ 96: 96e
1162
+ 97: 97e
1163
+ 98: 98e
1164
+ 99: 99e
1165
+ 100: 100e
1166
+ 321: 321e
1167
+ 322: 322e
1168
+ 323: 323e
1169
+ 1141: 1 141e
1170
+ 1142: 1 142e
1171
+ 1143: 1 143e
1172
+ 10311: 10 311e
1173
+ 138400: 138 400e
1174
+ digits-ordinal-masculine:
1175
+ -1141: −1 141e
1176
+ -1142: −1 142e
1177
+ -1143: −1 143e
1178
+ -100: −100e
1179
+ -75: −75e
1180
+ -50: −50e
1181
+ -24: −24e
1182
+ 0: 0e
1183
+ 1: 1er
1184
+ 2: 2e
1185
+ 3: 3e
1186
+ 4: 4e
1187
+ 5: 5e
1188
+ 6: 6e
1189
+ 7: 7e
1190
+ 8: 8e
1191
+ 9: 9e
1192
+ 10: 10e
1193
+ 11: 11e
1194
+ 12: 12e
1195
+ 13: 13e
1196
+ 14: 14e
1197
+ 15: 15e
1198
+ 16: 16e
1199
+ 17: 17e
1200
+ 18: 18e
1201
+ 19: 19e
1202
+ 20: 20e
1203
+ 21: 21e
1204
+ 22: 22e
1205
+ 23: 23e
1206
+ 24: 24e
1207
+ 25: 25e
1208
+ 26: 26e
1209
+ 27: 27e
1210
+ 28: 28e
1211
+ 29: 29e
1212
+ 30: 30e
1213
+ 31: 31e
1214
+ 32: 32e
1215
+ 33: 33e
1216
+ 34: 34e
1217
+ 35: 35e
1218
+ 36: 36e
1219
+ 37: 37e
1220
+ 38: 38e
1221
+ 39: 39e
1222
+ 40: 40e
1223
+ 41: 41e
1224
+ 42: 42e
1225
+ 43: 43e
1226
+ 44: 44e
1227
+ 45: 45e
1228
+ 46: 46e
1229
+ 47: 47e
1230
+ 48: 48e
1231
+ 49: 49e
1232
+ 50: 50e
1233
+ 51: 51e
1234
+ 52: 52e
1235
+ 53: 53e
1236
+ 54: 54e
1237
+ 55: 55e
1238
+ 56: 56e
1239
+ 57: 57e
1240
+ 58: 58e
1241
+ 59: 59e
1242
+ 60: 60e
1243
+ 61: 61e
1244
+ 62: 62e
1245
+ 63: 63e
1246
+ 64: 64e
1247
+ 65: 65e
1248
+ 66: 66e
1249
+ 67: 67e
1250
+ 68: 68e
1251
+ 69: 69e
1252
+ 70: 70e
1253
+ 71: 71e
1254
+ 72: 72e
1255
+ 73: 73e
1256
+ 74: 74e
1257
+ 75: 75e
1258
+ 76: 76e
1259
+ 77: 77e
1260
+ 78: 78e
1261
+ 79: 79e
1262
+ 80: 80e
1263
+ 81: 81e
1264
+ 82: 82e
1265
+ 83: 83e
1266
+ 84: 84e
1267
+ 85: 85e
1268
+ 86: 86e
1269
+ 87: 87e
1270
+ 88: 88e
1271
+ 89: 89e
1272
+ 90: 90e
1273
+ 91: 91e
1274
+ 92: 92e
1275
+ 93: 93e
1276
+ 94: 94e
1277
+ 95: 95e
1278
+ 96: 96e
1279
+ 97: 97e
1280
+ 98: 98e
1281
+ 99: 99e
1282
+ 100: 100e
1283
+ 321: 321e
1284
+ 322: 322e
1285
+ 323: 323e
1286
+ 1141: 1 141e
1287
+ 1142: 1 142e
1288
+ 1143: 1 143e
1289
+ 10311: 10 311e
1290
+ 138400: 138 400e
1291
+ DurationRules:
1292
+ duration:
1293
+ -1141: -1 141
1294
+ -1142: -1 142
1295
+ -1143: -1 143
1296
+ -100: '-100'
1297
+ -75: '-75'
1298
+ -50: '-50'
1299
+ -24: '-24'
1300
+ 0: '0'
1301
+ 1: '1'
1302
+ 2: '2'
1303
+ 3: '3'
1304
+ 4: '4'
1305
+ 5: '5'
1306
+ 6: '6'
1307
+ 7: '7'
1308
+ 8: '8'
1309
+ 9: '9'
1310
+ 10: '10'
1311
+ 11: '11'
1312
+ 12: '12'
1313
+ 13: '13'
1314
+ 14: '14'
1315
+ 15: '15'
1316
+ 16: '16'
1317
+ 17: '17'
1318
+ 18: '18'
1319
+ 19: '19'
1320
+ 20: '20'
1321
+ 21: '21'
1322
+ 22: '22'
1323
+ 23: '23'
1324
+ 24: '24'
1325
+ 25: '25'
1326
+ 26: '26'
1327
+ 27: '27'
1328
+ 28: '28'
1329
+ 29: '29'
1330
+ 30: '30'
1331
+ 31: '31'
1332
+ 32: '32'
1333
+ 33: '33'
1334
+ 34: '34'
1335
+ 35: '35'
1336
+ 36: '36'
1337
+ 37: '37'
1338
+ 38: '38'
1339
+ 39: '39'
1340
+ 40: '40'
1341
+ 41: '41'
1342
+ 42: '42'
1343
+ 43: '43'
1344
+ 44: '44'
1345
+ 45: '45'
1346
+ 46: '46'
1347
+ 47: '47'
1348
+ 48: '48'
1349
+ 49: '49'
1350
+ 50: '50'
1351
+ 51: '51'
1352
+ 52: '52'
1353
+ 53: '53'
1354
+ 54: '54'
1355
+ 55: '55'
1356
+ 56: '56'
1357
+ 57: '57'
1358
+ 58: '58'
1359
+ 59: '59'
1360
+ 60: '60'
1361
+ 61: '61'
1362
+ 62: '62'
1363
+ 63: '63'
1364
+ 64: '64'
1365
+ 65: '65'
1366
+ 66: '66'
1367
+ 67: '67'
1368
+ 68: '68'
1369
+ 69: '69'
1370
+ 70: '70'
1371
+ 71: '71'
1372
+ 72: '72'
1373
+ 73: '73'
1374
+ 74: '74'
1375
+ 75: '75'
1376
+ 76: '76'
1377
+ 77: '77'
1378
+ 78: '78'
1379
+ 79: '79'
1380
+ 80: '80'
1381
+ 81: '81'
1382
+ 82: '82'
1383
+ 83: '83'
1384
+ 84: '84'
1385
+ 85: '85'
1386
+ 86: '86'
1387
+ 87: '87'
1388
+ 88: '88'
1389
+ 89: '89'
1390
+ 90: '90'
1391
+ 91: '91'
1392
+ 92: '92'
1393
+ 93: '93'
1394
+ 94: '94'
1395
+ 95: '95'
1396
+ 96: '96'
1397
+ 97: '97'
1398
+ 98: '98'
1399
+ 99: '99'
1400
+ 100: '100'
1401
+ 321: '321'
1402
+ 322: '322'
1403
+ 323: '323'
1404
+ 1141: 1 141
1405
+ 1142: 1 142
1406
+ 1143: 1 143
1407
+ 10311: 10 311
1408
+ 138400: 138 400