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,728 @@
1
+ ---
2
+ :segments:
3
+ :GraphemeClusterBreak:
4
+ :rules:
5
+ -
6
+ :id: 3
7
+ :value: " $CR × $LF "
8
+ -
9
+ :id: 4
10
+ :value: " ( $Control | $CR | $LF ) ÷ "
11
+ -
12
+ :id: 5
13
+ :value: " ÷ ( $Control | $CR | $LF ) "
14
+ -
15
+ :id: 6
16
+ :value: " $L × ( $L | $V | $LV | $LVT ) "
17
+ -
18
+ :id: 7
19
+ :value: " ( $LV | $V ) × ( $V | $T ) "
20
+ -
21
+ :id: 8
22
+ :value: " ( $LVT | $T) × $T "
23
+ -
24
+ :id: "8.1"
25
+ :value: " $Regional_Indicator × $Regional_Indicator "
26
+ -
27
+ :id: 9
28
+ :value: " × $Extend "
29
+ -
30
+ :id: "9.1"
31
+ :value: " × $SpacingMark "
32
+ :variables:
33
+ -
34
+ :id: "$CR"
35
+ :value: "\\p{Grapheme_Cluster_Break=CR}"
36
+ -
37
+ :id: "$LF"
38
+ :value: "\\p{Grapheme_Cluster_Break=LF}"
39
+ -
40
+ :id: "$Control"
41
+ :value: "\\p{Grapheme_Cluster_Break=Control}"
42
+ -
43
+ :id: "$Extend"
44
+ :value: "\\p{Grapheme_Cluster_Break=Extend}"
45
+ -
46
+ :id: "$SpacingMark"
47
+ :value: "\\p{Grapheme_Cluster_Break=SpacingMark}"
48
+ -
49
+ :id: "$L"
50
+ :value: "\\p{Grapheme_Cluster_Break=L}"
51
+ -
52
+ :id: "$V"
53
+ :value: "\\p{Grapheme_Cluster_Break=V}"
54
+ -
55
+ :id: "$T"
56
+ :value: "\\p{Grapheme_Cluster_Break=T}"
57
+ -
58
+ :id: "$LV"
59
+ :value: "\\p{Grapheme_Cluster_Break=LV}"
60
+ -
61
+ :id: "$LVT"
62
+ :value: "\\p{Grapheme_Cluster_Break=LVT}"
63
+ -
64
+ :id: "$Regional_Indicator"
65
+ :value: "\\p{Grapheme_Cluster_Break=Regional_Indicator}"
66
+ :LineBreak:
67
+ :rules:
68
+ -
69
+ :id: 4
70
+ :value: " $BK ÷ "
71
+ -
72
+ :id: "5.01"
73
+ :value: " $CR × $LF "
74
+ -
75
+ :id: "5.02"
76
+ :value: " $CR ÷ "
77
+ -
78
+ :id: "5.03"
79
+ :value: " $LF ÷ "
80
+ -
81
+ :id: "5.04"
82
+ :value: " $NL ÷ "
83
+ -
84
+ :id: 6
85
+ :value: " × ( $BK | $CR | $LF | $NL ) "
86
+ -
87
+ :id: "7.01"
88
+ :value: " × $SP "
89
+ -
90
+ :id: "7.02"
91
+ :value: " × $ZW "
92
+ -
93
+ :id: 8
94
+ :value: " $ZW $SP* ÷ "
95
+ -
96
+ :id: 9
97
+ :value: " $Spec2_ × $CM "
98
+ -
99
+ :id: "11.01"
100
+ :value: " × $WJ "
101
+ -
102
+ :id: "11.02"
103
+ :value: " $WJ × "
104
+ -
105
+ :id: 12
106
+ :value: " $GL × "
107
+ -
108
+ :id: "12.1"
109
+ :value: " $Spec3a_ × $GL "
110
+ -
111
+ :id: "12.2"
112
+ :value: " $Spec3b_ $CM+ × $GL "
113
+ -
114
+ :id: "12.3"
115
+ :value: " ^ $CM+ × $GL "
116
+ -
117
+ :id: "13.01"
118
+ :value: " × $EX "
119
+ -
120
+ :id: "13.02"
121
+ :value: " $Spec4_ × ($CL | $CP | $IS | $SY) "
122
+ -
123
+ :id: "13.03"
124
+ :value: " $Spec4_ $CM+ × ($CL | $CP | $IS | $SY) "
125
+ -
126
+ :id: "13.04"
127
+ :value: " ^ $CM+ × ($CL | $CP | $IS | $SY) "
128
+ -
129
+ :id: 14
130
+ :value: " $OP $SP* × "
131
+ -
132
+ :id: 15
133
+ :value: " $QU $SP* × $OP "
134
+ -
135
+ :id: 16
136
+ :value: " ($CL | $CP) $SP* × $NS "
137
+ -
138
+ :id: 17
139
+ :value: " $B2 $SP* × $B2 "
140
+ -
141
+ :id: 18
142
+ :value: " $SP ÷ "
143
+ -
144
+ :id: "19.01"
145
+ :value: " × $QU "
146
+ -
147
+ :id: "19.02"
148
+ :value: " $QU × "
149
+ -
150
+ :id: "20.01"
151
+ :value: " ÷ $CB "
152
+ -
153
+ :id: "20.02"
154
+ :value: " $CB ÷ "
155
+ -
156
+ :id: "21.01"
157
+ :value: " × $BA "
158
+ -
159
+ :id: "21.02"
160
+ :value: " × $HY "
161
+ -
162
+ :id: "21.03"
163
+ :value: " × $NS "
164
+ -
165
+ :id: "21.04"
166
+ :value: " $BB × "
167
+ -
168
+ :id: "21.1"
169
+ :value: " $HL ($HY | $BA) × "
170
+ -
171
+ :id: "22.01"
172
+ :value: " ($AL | $HL) × $IN "
173
+ -
174
+ :id: "22.02"
175
+ :value: " $ID × $IN "
176
+ -
177
+ :id: "22.03"
178
+ :value: " $IN × $IN "
179
+ -
180
+ :id: "22.04"
181
+ :value: " $NU × $IN "
182
+ -
183
+ :id: "23.01"
184
+ :value: " $ID × $PO "
185
+ -
186
+ :id: "23.02"
187
+ :value: " ($AL | $HL) × $NU "
188
+ -
189
+ :id: "23.03"
190
+ :value: " $NU × ($AL | $HL) "
191
+ -
192
+ :id: "24.01"
193
+ :value: " $PR × $ID "
194
+ -
195
+ :id: "24.02"
196
+ :value: " $PR × ($AL | $HL) "
197
+ -
198
+ :id: "24.03"
199
+ :value: " $PO × ($AL | $HL) "
200
+ -
201
+ :id: "25.01"
202
+ :value: " ($PR | $PO) × ( $OP | $HY )? $NU "
203
+ -
204
+ :id: "25.02"
205
+ :value: " ( $OP | $HY ) × $NU "
206
+ -
207
+ :id: "25.03"
208
+ :value: " $NU × ($NU | $SY | $IS) "
209
+ -
210
+ :id: "25.04"
211
+ :value: " $NU ($NU | $SY | $IS)* × ($NU | $SY | $IS | $CL | $CP) "
212
+ -
213
+ :id: "25.05"
214
+ :value: " $NU ($NU | $SY | $IS)* ($CL | $CP)? × ($PO | $PR) "
215
+ -
216
+ :id: "26.01"
217
+ :value: " $JL × $JL | $JV | $H2 | $H3 "
218
+ -
219
+ :id: "26.02"
220
+ :value: " $JV | $H2 × $JV | $JT "
221
+ -
222
+ :id: "26.03"
223
+ :value: " $JT | $H3 × $JT "
224
+ -
225
+ :id: "27.01"
226
+ :value: " $JL | $JV | $JT | $H2 | $H3 × $IN "
227
+ -
228
+ :id: "27.02"
229
+ :value: " $JL | $JV | $JT | $H2 | $H3 × $PO "
230
+ -
231
+ :id: "27.03"
232
+ :value: " $PR × $JL | $JV | $JT | $H2 | $H3 "
233
+ -
234
+ :id: 28
235
+ :value: " ($AL | $HL) × ($AL | $HL) "
236
+ -
237
+ :id: 29
238
+ :value: " $IS × ($AL | $HL) "
239
+ -
240
+ :id: "30.01"
241
+ :value: " ($AL | $HL | $NU) × $OP "
242
+ -
243
+ :id: "30.02"
244
+ :value: " $CP × ($AL | $HL | $NU) "
245
+ -
246
+ :id: "30.11"
247
+ :value: " $RI × $RI "
248
+ :variables:
249
+ -
250
+ :id: "$AI"
251
+ :value: "\\p{Line_Break=Ambiguous}"
252
+ -
253
+ :id: "$AL"
254
+ :value: "\\p{Line_Break=Alphabetic}"
255
+ -
256
+ :id: "$B2"
257
+ :value: "\\p{Line_Break=Break_Both}"
258
+ -
259
+ :id: "$BA"
260
+ :value: "\\p{Line_Break=Break_After}"
261
+ -
262
+ :id: "$BB"
263
+ :value: "\\p{Line_Break=Break_Before}"
264
+ -
265
+ :id: "$BK"
266
+ :value: "\\p{Line_Break=Mandatory_Break}"
267
+ -
268
+ :id: "$CB"
269
+ :value: "\\p{Line_Break=Contingent_Break}"
270
+ -
271
+ :id: "$CL"
272
+ :value: "\\p{Line_Break=Close_Punctuation}"
273
+ -
274
+ :id: "$CP"
275
+ :value: "\\p{Line_Break=CP}"
276
+ -
277
+ :id: "$CM"
278
+ :value: "\\p{Line_Break=Combining_Mark}"
279
+ -
280
+ :id: "$CR"
281
+ :value: "\\p{Line_Break=Carriage_Return}"
282
+ -
283
+ :id: "$EX"
284
+ :value: "\\p{Line_Break=Exclamation}"
285
+ -
286
+ :id: "$GL"
287
+ :value: "\\p{Line_Break=Glue}"
288
+ -
289
+ :id: "$H2"
290
+ :value: "\\p{Line_Break=H2}"
291
+ -
292
+ :id: "$H3"
293
+ :value: "\\p{Line_Break=H3}"
294
+ -
295
+ :id: "$HL"
296
+ :value: "\\p{Line_Break=HL}"
297
+ -
298
+ :id: "$HY"
299
+ :value: "\\p{Line_Break=Hyphen}"
300
+ -
301
+ :id: "$ID"
302
+ :value: "\\p{Line_Break=Ideographic}"
303
+ -
304
+ :id: "$IN"
305
+ :value: "\\p{Line_Break=Inseparable}"
306
+ -
307
+ :id: "$IS"
308
+ :value: "\\p{Line_Break=Infix_Numeric}"
309
+ -
310
+ :id: "$JL"
311
+ :value: "\\p{Line_Break=JL}"
312
+ -
313
+ :id: "$JT"
314
+ :value: "\\p{Line_Break=JT}"
315
+ -
316
+ :id: "$JV"
317
+ :value: "\\p{Line_Break=JV}"
318
+ -
319
+ :id: "$LF"
320
+ :value: "\\p{Line_Break=Line_Feed}"
321
+ -
322
+ :id: "$NL"
323
+ :value: "\\p{Line_Break=Next_Line}"
324
+ -
325
+ :id: "$NS"
326
+ :value: "\\p{Line_Break=Nonstarter}"
327
+ -
328
+ :id: "$NU"
329
+ :value: "\\p{Line_Break=Numeric}"
330
+ -
331
+ :id: "$OP"
332
+ :value: "\\p{Line_Break=Open_Punctuation}"
333
+ -
334
+ :id: "$PO"
335
+ :value: "\\p{Line_Break=Postfix_Numeric}"
336
+ -
337
+ :id: "$PR"
338
+ :value: "\\p{Line_Break=Prefix_Numeric}"
339
+ -
340
+ :id: "$QU"
341
+ :value: "\\p{Line_Break=Quotation}"
342
+ -
343
+ :id: "$SA"
344
+ :value: "\\p{Line_Break=Complex_Context}"
345
+ -
346
+ :id: "$SG"
347
+ :value: "\\p{Line_Break=Surrogate}"
348
+ -
349
+ :id: "$SP"
350
+ :value: "\\p{Line_Break=Space}"
351
+ -
352
+ :id: "$SY"
353
+ :value: "\\p{Line_Break=Break_Symbols}"
354
+ -
355
+ :id: "$WJ"
356
+ :value: "\\p{Line_Break=Word_Joiner}"
357
+ -
358
+ :id: "$XX"
359
+ :value: "\\p{Line_Break=Unknown}"
360
+ -
361
+ :id: "$ZW"
362
+ :value: "\\p{Line_Break=ZWSpace}"
363
+ -
364
+ :id: "$CJ"
365
+ :value: "\\p{Line_Break=Conditional_Japanese_Starter}"
366
+ -
367
+ :id: "$RI"
368
+ :value: "\\p{Line_Break=Regional_Indicator}"
369
+ -
370
+ :id: "$AL"
371
+ :value: "[$AI $AL $XX $SA $SG]"
372
+ -
373
+ :id: "$NS"
374
+ :value: "[$NS $CJ]"
375
+ -
376
+ :id: "$X"
377
+ :value: "$CM*"
378
+ -
379
+ :id: "$Spec1_"
380
+ :value: "[$SP $BK $CR $LF $NL $ZW]"
381
+ -
382
+ :id: "$Spec2_"
383
+ :value: "[^ $SP $BK $CR $LF $NL $ZW]"
384
+ -
385
+ :id: "$Spec3a_"
386
+ :value: "[^ $SP $BA $HY $CM]"
387
+ -
388
+ :id: "$Spec3b_"
389
+ :value: "[^ $BA $HY $CM]"
390
+ -
391
+ :id: "$Spec4_"
392
+ :value: "[^ $NU $CM]"
393
+ -
394
+ :id: "$AI"
395
+ :value: "($AI $X)"
396
+ -
397
+ :id: "$AL"
398
+ :value: "($AL $X)"
399
+ -
400
+ :id: "$B2"
401
+ :value: "($B2 $X)"
402
+ -
403
+ :id: "$BA"
404
+ :value: "($BA $X)"
405
+ -
406
+ :id: "$BB"
407
+ :value: "($BB $X)"
408
+ -
409
+ :id: "$CB"
410
+ :value: "($CB $X)"
411
+ -
412
+ :id: "$CL"
413
+ :value: "($CL $X)"
414
+ -
415
+ :id: "$CP"
416
+ :value: "($CP $X)"
417
+ -
418
+ :id: "$CM"
419
+ :value: "($CM $X)"
420
+ -
421
+ :id: "$CM"
422
+ :value: "($CM $X)"
423
+ -
424
+ :id: "$GL"
425
+ :value: "($GL $X)"
426
+ -
427
+ :id: "$H2"
428
+ :value: "($H2 $X)"
429
+ -
430
+ :id: "$H3"
431
+ :value: "($H3 $X)"
432
+ -
433
+ :id: "$HL"
434
+ :value: "($HL $X)"
435
+ -
436
+ :id: "$HY"
437
+ :value: "($HY $X)"
438
+ -
439
+ :id: "$ID"
440
+ :value: "($ID $X)"
441
+ -
442
+ :id: "$IN"
443
+ :value: "($IN $X)"
444
+ -
445
+ :id: "$IS"
446
+ :value: "($IS $X)"
447
+ -
448
+ :id: "$JL"
449
+ :value: "($JL $X)"
450
+ -
451
+ :id: "$JT"
452
+ :value: "($JT $X)"
453
+ -
454
+ :id: "$JV"
455
+ :value: "($JV $X)"
456
+ -
457
+ :id: "$NS"
458
+ :value: "($NS $X)"
459
+ -
460
+ :id: "$NU"
461
+ :value: "($NU $X)"
462
+ -
463
+ :id: "$OP"
464
+ :value: "($OP $X)"
465
+ -
466
+ :id: "$PO"
467
+ :value: "($PO $X)"
468
+ -
469
+ :id: "$PR"
470
+ :value: "($PR $X)"
471
+ -
472
+ :id: "$QU"
473
+ :value: "($QU $X)"
474
+ -
475
+ :id: "$SA"
476
+ :value: "($SA $X)"
477
+ -
478
+ :id: "$SG"
479
+ :value: "($SG $X)"
480
+ -
481
+ :id: "$SY"
482
+ :value: "($SY $X)"
483
+ -
484
+ :id: "$WJ"
485
+ :value: "($WJ $X)"
486
+ -
487
+ :id: "$XX"
488
+ :value: "($XX $X)"
489
+ -
490
+ :id: "$RI"
491
+ :value: "($RI $X)"
492
+ -
493
+ :id: "$AL"
494
+ :value: "($AL | ^ $CM | (?<=$Spec1_) $CM)"
495
+ :SentenceBreak:
496
+ :rules:
497
+ -
498
+ :id: 3
499
+ :value: " $CR × $LF "
500
+ -
501
+ :id: 4
502
+ :value: " ($Sep | $CR | $LF) ÷ "
503
+ -
504
+ :id: 5
505
+ :value: " × [$Format $Extend] "
506
+ -
507
+ :id: 6
508
+ :value: " $ATerm × $Numeric "
509
+ -
510
+ :id: 7
511
+ :value: " $Upper $ATerm × $Upper "
512
+ -
513
+ :id: 8
514
+ :value: " $ATerm $Close* $Sp* × $NotPreLower_* $Lower "
515
+ -
516
+ :id: "8.1"
517
+ :value: " ($STerm | $ATerm) $Close* $Sp* × ($SContinue | $STerm | $ATerm) "
518
+ -
519
+ :id: 9
520
+ :value: " ( $STerm | $ATerm ) $Close* × ( $Close | $Sp | $Sep | $CR | $LF ) "
521
+ -
522
+ :id: 10
523
+ :value: " ( $STerm | $ATerm ) $Close* $Sp* × ( $Sp | $Sep | $CR | $LF ) "
524
+ -
525
+ :id: 11
526
+ :value: " ( $STerm | $ATerm ) $Close* $Sp* ($Sep | $CR | $LF)? ÷ "
527
+ -
528
+ :id: 12
529
+ :value: " × $Any "
530
+ :variables:
531
+ -
532
+ :id: "$CR"
533
+ :value: "\\p{Sentence_Break=CR}"
534
+ -
535
+ :id: "$LF"
536
+ :value: "\\p{Sentence_Break=LF}"
537
+ -
538
+ :id: "$Extend"
539
+ :value: "\\p{Sentence_Break=Extend}"
540
+ -
541
+ :id: "$Format"
542
+ :value: "\\p{Sentence_Break=Format}"
543
+ -
544
+ :id: "$Sep"
545
+ :value: "\\p{Sentence_Break=Sep}"
546
+ -
547
+ :id: "$Sp"
548
+ :value: "\\p{Sentence_Break=Sp}"
549
+ -
550
+ :id: "$Lower"
551
+ :value: "\\p{Sentence_Break=Lower}"
552
+ -
553
+ :id: "$Upper"
554
+ :value: "\\p{Sentence_Break=Upper}"
555
+ -
556
+ :id: "$OLetter"
557
+ :value: "\\p{Sentence_Break=OLetter}"
558
+ -
559
+ :id: "$Numeric"
560
+ :value: "\\p{Sentence_Break=Numeric}"
561
+ -
562
+ :id: "$ATerm"
563
+ :value: "\\p{Sentence_Break=ATerm}"
564
+ -
565
+ :id: "$STerm"
566
+ :value: "\\p{Sentence_Break=STerm}"
567
+ -
568
+ :id: "$Close"
569
+ :value: "\\p{Sentence_Break=Close}"
570
+ -
571
+ :id: "$SContinue"
572
+ :value: "\\p{Sentence_Break=SContinue}"
573
+ -
574
+ :id: "$Any"
575
+ :value: "."
576
+ -
577
+ :id: "$FE"
578
+ :value: "[$Format $Extend]"
579
+ -
580
+ :id: "$NotPreLower_"
581
+ :value: "[^ $OLetter $Upper $Lower $Sep $CR $LF $STerm $ATerm]"
582
+ -
583
+ :id: "$Sp"
584
+ :value: "($Sp $FE*)"
585
+ -
586
+ :id: "$Lower"
587
+ :value: "($Lower $FE*)"
588
+ -
589
+ :id: "$Upper"
590
+ :value: "($Upper $FE*)"
591
+ -
592
+ :id: "$OLetter"
593
+ :value: "($OLetter $FE*)"
594
+ -
595
+ :id: "$Numeric"
596
+ :value: "($Numeric $FE*)"
597
+ -
598
+ :id: "$ATerm"
599
+ :value: "($ATerm $FE*)"
600
+ -
601
+ :id: "$STerm"
602
+ :value: "($STerm $FE*)"
603
+ -
604
+ :id: "$Close"
605
+ :value: "($Close $FE*)"
606
+ -
607
+ :id: "$SContinue"
608
+ :value: "($SContinue $FE*)"
609
+ :WordBreak:
610
+ :rules:
611
+ -
612
+ :id: 3
613
+ :value: " $CR × $LF "
614
+ -
615
+ :id: "3.1"
616
+ :value: " ($Newline | $CR | $LF) ÷ "
617
+ -
618
+ :id: "3.2"
619
+ :value: " ÷ ($Newline | $CR | $LF) "
620
+ -
621
+ :id: 4
622
+ :value: " $NotBreak_ × [$Format $Extend] "
623
+ -
624
+ :id: 5
625
+ :value: " $ALetter × $ALetter "
626
+ -
627
+ :id: 6
628
+ :value: " $ALetter × ($MidLetter | $MidNumLet) $ALetter "
629
+ -
630
+ :id: 7
631
+ :value: " $ALetter ($MidLetter | $MidNumLet) × $ALetter "
632
+ -
633
+ :id: 8
634
+ :value: " $Numeric × $Numeric "
635
+ -
636
+ :id: 9
637
+ :value: " $ALetter × $Numeric "
638
+ -
639
+ :id: 10
640
+ :value: " $Numeric × $ALetter "
641
+ -
642
+ :id: 11
643
+ :value: " $Numeric ($MidNum | $MidNumLet) × $Numeric "
644
+ -
645
+ :id: 12
646
+ :value: " $Numeric × ($MidNum | $MidNumLet) $Numeric "
647
+ -
648
+ :id: 13
649
+ :value: " $Katakana × $Katakana "
650
+ -
651
+ :id: "13.1"
652
+ :value: " ($ALetter | $Numeric | $Katakana | $ExtendNumLet) × $ExtendNumLet "
653
+ -
654
+ :id: "13.2"
655
+ :value: " $ExtendNumLet × ($ALetter | $Numeric | $Katakana) "
656
+ -
657
+ :id: "13.3"
658
+ :value: " $Regional_Indicator × $Regional_Indicator "
659
+ :variables:
660
+ -
661
+ :id: "$CR"
662
+ :value: "\\p{Word_Break=CR}"
663
+ -
664
+ :id: "$LF"
665
+ :value: "\\p{Word_Break=LF}"
666
+ -
667
+ :id: "$Newline"
668
+ :value: "\\p{Word_Break=Newline}"
669
+ -
670
+ :id: "$Extend"
671
+ :value: "\\p{Word_Break=Extend}"
672
+ -
673
+ :id: "$Format"
674
+ :value: "\\p{Word_Break=Format}"
675
+ -
676
+ :id: "$Katakana"
677
+ :value: "\\p{Word_Break=Katakana}"
678
+ -
679
+ :id: "$ALetter"
680
+ :value: "\\p{Word_Break=ALetter}"
681
+ -
682
+ :id: "$MidLetter"
683
+ :value: "\\p{Word_Break=MidLetter}"
684
+ -
685
+ :id: "$MidNum"
686
+ :value: "\\p{Word_Break=MidNum}"
687
+ -
688
+ :id: "$MidNumLet"
689
+ :value: "\\p{Word_Break=MidNumLet}"
690
+ -
691
+ :id: "$Numeric"
692
+ :value: "\\p{Word_Break=Numeric}"
693
+ -
694
+ :id: "$ExtendNumLet"
695
+ :value: "\\p{Word_Break=ExtendNumLet}"
696
+ -
697
+ :id: "$Regional_Indicator"
698
+ :value: "\\p{Word_Break=Regional_Indicator}"
699
+ -
700
+ :id: "$FE"
701
+ :value: "[$Format $Extend]"
702
+ -
703
+ :id: "$NotBreak_"
704
+ :value: "[^ $Newline $CR $LF ]"
705
+ -
706
+ :id: "$Katakana"
707
+ :value: "($Katakana $FE*)"
708
+ -
709
+ :id: "$ALetter"
710
+ :value: "($ALetter $FE*)"
711
+ -
712
+ :id: "$MidLetter"
713
+ :value: "($MidLetter $FE*)"
714
+ -
715
+ :id: "$MidNum"
716
+ :value: "($MidNum $FE*)"
717
+ -
718
+ :id: "$MidNumLet"
719
+ :value: "($MidNumLet $FE*)"
720
+ -
721
+ :id: "$Numeric"
722
+ :value: "($Numeric $FE*)"
723
+ -
724
+ :id: "$ExtendNumLet"
725
+ :value: "($ExtendNumLet $FE*)"
726
+ -
727
+ :id: "$Regional_Indicator"
728
+ :value: "($Regional_Indicator $FE*)"