twitter_cldr 3.2.1 → 3.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1172) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -4
  3. data/History.txt +11 -0
  4. data/README.md +40 -3
  5. data/Rakefile +26 -21
  6. data/lib/twitter_cldr/collation/collator.rb +3 -3
  7. data/lib/twitter_cldr/collation/sort_key_builder.rb +10 -10
  8. data/lib/twitter_cldr/data_readers/calendar_data_reader.rb +8 -8
  9. data/lib/twitter_cldr/data_readers/date_time_data_reader.rb +2 -2
  10. data/lib/twitter_cldr/data_readers/number_data_reader.rb +10 -10
  11. data/lib/twitter_cldr/data_readers/timespan_data_reader.rb +27 -27
  12. data/lib/twitter_cldr/formatters/list_formatter.rb +1 -1
  13. data/lib/twitter_cldr/formatters/numbers/currency_formatter.rb +3 -3
  14. data/lib/twitter_cldr/formatters/numbers/helpers/integer.rb +7 -5
  15. data/lib/twitter_cldr/formatters/numbers/rbnf/formatters.rb +1 -1
  16. data/lib/twitter_cldr/formatters/numbers/rbnf/rule.rb +1 -1
  17. data/lib/twitter_cldr/formatters/numbers/rbnf/rule_set.rb +3 -2
  18. data/lib/twitter_cldr/formatters/numbers/rbnf.rb +2 -2
  19. data/lib/twitter_cldr/formatters/plurals/rules.rb +1 -1
  20. data/lib/twitter_cldr/localized/localized_date.rb +2 -2
  21. data/lib/twitter_cldr/localized/localized_datetime.rb +8 -8
  22. data/lib/twitter_cldr/localized/localized_number.rb +7 -7
  23. data/lib/twitter_cldr/localized/localized_string.rb +33 -1
  24. data/lib/twitter_cldr/localized/localized_symbol.rb +9 -1
  25. data/lib/twitter_cldr/localized/localized_time.rb +2 -2
  26. data/lib/twitter_cldr/localized/localized_timespan.rb +10 -10
  27. data/lib/twitter_cldr/parsers/number_parser.rb +1 -1
  28. data/lib/twitter_cldr/parsers/parser.rb +5 -1
  29. data/lib/twitter_cldr/parsers/unicode_regex/character_class.rb +41 -2
  30. data/lib/twitter_cldr/parsers/unicode_regex/character_range.rb +8 -0
  31. data/lib/twitter_cldr/parsers/unicode_regex/character_set.rb +66 -23
  32. data/lib/twitter_cldr/parsers/unicode_regex/literal.rb +4 -0
  33. data/lib/twitter_cldr/parsers/unicode_regex/unicode_string.rb +6 -3
  34. data/lib/twitter_cldr/parsers/unicode_regex_parser.rb +65 -32
  35. data/lib/twitter_cldr/parsers.rb +1 -2
  36. data/lib/twitter_cldr/resources/custom_locales_resources_importer.rb +4 -4
  37. data/lib/twitter_cldr/resources/download.rb +13 -6
  38. data/lib/twitter_cldr/resources/language_codes_importer.rb +7 -7
  39. data/lib/twitter_cldr/resources/loader.rb +4 -1
  40. data/lib/twitter_cldr/resources/locales_resources_importer.rb +30 -12
  41. data/lib/twitter_cldr/resources/postal_codes_importer.rb +32 -22
  42. data/lib/twitter_cldr/resources/properties/age_property_importer.rb +27 -0
  43. data/lib/twitter_cldr/resources/properties/arabic_shaping_property_importer.rb +42 -0
  44. data/lib/twitter_cldr/resources/properties/bidi_brackets_property_importer.rb +41 -0
  45. data/lib/twitter_cldr/resources/properties/blocks_property_importer.rb +27 -0
  46. data/lib/twitter_cldr/resources/properties/derived_core_properties_importer.rb +36 -0
  47. data/lib/twitter_cldr/resources/properties/east_asian_width_property_importer.rb +27 -0
  48. data/lib/twitter_cldr/resources/properties/grapheme_break_property_importer.rb +27 -0
  49. data/lib/twitter_cldr/resources/properties/hangul_syllable_type_property_importer.rb +27 -0
  50. data/lib/twitter_cldr/resources/properties/indic_positional_category_property_importer.rb +27 -0
  51. data/lib/twitter_cldr/resources/properties/indic_syllabic_category_property_importer.rb +27 -0
  52. data/lib/twitter_cldr/resources/properties/jamo_property_importer.rb +27 -0
  53. data/lib/twitter_cldr/resources/properties/line_break_property_importer.rb +27 -0
  54. data/lib/twitter_cldr/resources/properties/prop_list_importer.rb +36 -0
  55. data/lib/twitter_cldr/resources/properties/properties_importer.rb +59 -0
  56. data/lib/twitter_cldr/resources/properties/property_importer.rb +83 -0
  57. data/lib/twitter_cldr/resources/properties/script_extensions_property_importer.rb +40 -0
  58. data/lib/twitter_cldr/resources/properties/script_property_importer.rb +27 -0
  59. data/lib/twitter_cldr/resources/properties/sentence_break_property_importer.rb +27 -0
  60. data/lib/twitter_cldr/resources/properties/unicode_data_properties_importer.rb +60 -0
  61. data/lib/twitter_cldr/resources/properties/word_break_property_importer.rb +27 -0
  62. data/lib/twitter_cldr/resources/properties.rb +36 -0
  63. data/lib/twitter_cldr/resources/readme_renderer.rb +2 -2
  64. data/lib/twitter_cldr/resources/segment_tests_importer.rb +66 -0
  65. data/lib/twitter_cldr/resources/tailoring_importer.rb +7 -7
  66. data/lib/twitter_cldr/resources/uli/segment_exceptions_importer.rb +1 -1
  67. data/lib/twitter_cldr/resources/unicode_data_importer.rb +19 -60
  68. data/lib/twitter_cldr/resources/unicode_property_aliases_importer.rb +97 -0
  69. data/lib/twitter_cldr/resources.rb +21 -22
  70. data/lib/twitter_cldr/segmentation/break_iterator.rb +54 -0
  71. data/lib/twitter_cldr/segmentation/cursor.rb +34 -0
  72. data/lib/twitter_cldr/segmentation/parser.rb +71 -0
  73. data/lib/twitter_cldr/segmentation/rule.rb +79 -0
  74. data/lib/twitter_cldr/segmentation/rule_set.rb +116 -0
  75. data/lib/twitter_cldr/segmentation/rule_set_builder.rb +142 -0
  76. data/lib/twitter_cldr/segmentation.rb +17 -0
  77. data/lib/twitter_cldr/shared/bidi.rb +4 -4
  78. data/lib/twitter_cldr/shared/calendar.rb +11 -11
  79. data/lib/twitter_cldr/shared/caser.rb +84 -0
  80. data/lib/twitter_cldr/shared/code_point.rb +101 -139
  81. data/lib/twitter_cldr/shared/currencies.rb +5 -5
  82. data/lib/twitter_cldr/shared/language_codes.rb +2 -2
  83. data/lib/twitter_cldr/shared/languages.rb +1 -1
  84. data/lib/twitter_cldr/shared/likely_subtags.rb +104 -0
  85. data/lib/twitter_cldr/shared/locale.rb +252 -0
  86. data/lib/twitter_cldr/shared/postal_codes.rb +21 -9
  87. data/lib/twitter_cldr/shared/properties/arabic_shaping.rb +40 -0
  88. data/lib/twitter_cldr/shared/properties/bidi_brackets.rb +28 -0
  89. data/lib/twitter_cldr/shared/properties.rb +13 -0
  90. data/lib/twitter_cldr/shared/properties_database.rb +180 -0
  91. data/lib/twitter_cldr/shared/property_name_aliases.rb +48 -0
  92. data/lib/twitter_cldr/shared/property_normalizer.rb +108 -0
  93. data/lib/twitter_cldr/shared/property_set.rb +113 -0
  94. data/lib/twitter_cldr/shared/property_value_aliases.rb +99 -0
  95. data/lib/twitter_cldr/shared/unicode_regex.rb +29 -3
  96. data/lib/twitter_cldr/shared.rb +9 -1
  97. data/lib/twitter_cldr/tokenizers/numbers/number_tokenizer.rb +1 -1
  98. data/lib/twitter_cldr/tokenizers/token.rb +1 -1
  99. data/lib/twitter_cldr/tokenizers/tokenizer.rb +15 -13
  100. data/lib/twitter_cldr/tokenizers/unicode_regex/unicode_regex_tokenizer.rb +4 -4
  101. data/lib/twitter_cldr/utils/file_system_trie.rb +145 -0
  102. data/lib/twitter_cldr/utils/range_set.rb +131 -31
  103. data/lib/twitter_cldr/utils/regexp_sampler.rb +0 -1
  104. data/lib/twitter_cldr/utils/script_detector.rb +75 -0
  105. data/lib/twitter_cldr/utils/yaml.rb +3 -3
  106. data/lib/twitter_cldr/utils.rb +8 -5
  107. data/lib/twitter_cldr/version.rb +1 -1
  108. data/lib/twitter_cldr/versions.rb +30 -0
  109. data/lib/twitter_cldr.rb +8 -10
  110. data/resources/locales/af/calendars.yml +8 -8
  111. data/resources/locales/af/lists.yml +8 -4
  112. data/resources/locales/af/numbers.yml +54 -30
  113. data/resources/locales/ar/lists.yml +8 -4
  114. data/resources/locales/ar/numbers.yml +48 -24
  115. data/resources/locales/be/calendars.yml +4 -4
  116. data/resources/locales/be/lists.yml +2 -1
  117. data/resources/locales/be/numbers.yml +24 -12
  118. data/resources/locales/bg/calendars.yml +8 -8
  119. data/resources/locales/bg/lists.yml +8 -4
  120. data/resources/locales/bg/numbers.yml +48 -24
  121. data/resources/locales/bn/lists.yml +8 -4
  122. data/resources/locales/bn/numbers.yml +48 -24
  123. data/resources/locales/ca/calendars.yml +8 -8
  124. data/resources/locales/ca/lists.yml +8 -4
  125. data/resources/locales/ca/numbers.yml +48 -24
  126. data/resources/locales/cs/calendars.yml +32 -32
  127. data/resources/locales/cs/lists.yml +8 -4
  128. data/resources/locales/cs/numbers.yml +48 -24
  129. data/resources/locales/cy/calendars.yml +8 -8
  130. data/resources/locales/cy/lists.yml +6 -3
  131. data/resources/locales/cy/numbers.yml +48 -24
  132. data/resources/locales/da/calendars.yml +10 -10
  133. data/resources/locales/da/lists.yml +8 -4
  134. data/resources/locales/da/numbers.yml +48 -24
  135. data/resources/locales/de/calendars.yml +8 -8
  136. data/resources/locales/de/lists.yml +8 -4
  137. data/resources/locales/de/numbers.yml +48 -24
  138. data/resources/locales/de-CH/calendars.yml +8 -8
  139. data/resources/locales/de-CH/lists.yml +8 -4
  140. data/resources/locales/de-CH/numbers.yml +48 -24
  141. data/resources/locales/el/calendars.yml +8 -8
  142. data/resources/locales/el/lists.yml +8 -4
  143. data/resources/locales/el/numbers.yml +48 -24
  144. data/resources/locales/en/calendars.yml +4 -4
  145. data/resources/locales/en/lists.yml +8 -4
  146. data/resources/locales/en/numbers.yml +48 -24
  147. data/resources/locales/en-150/calendars.yml +4 -4
  148. data/resources/locales/en-150/lists.yml +8 -4
  149. data/resources/locales/en-150/numbers.yml +48 -24
  150. data/resources/locales/en-AU/calendars.yml +4 -4
  151. data/resources/locales/en-AU/lists.yml +8 -4
  152. data/resources/locales/en-AU/numbers.yml +48 -24
  153. data/resources/locales/en-CA/calendars.yml +4 -4
  154. data/resources/locales/en-CA/lists.yml +8 -4
  155. data/resources/locales/en-CA/numbers.yml +48 -24
  156. data/resources/locales/en-GB/calendars.yml +4 -4
  157. data/resources/locales/en-GB/lists.yml +8 -4
  158. data/resources/locales/en-GB/numbers.yml +48 -24
  159. data/resources/locales/en-IE/calendars.yml +4 -4
  160. data/resources/locales/en-IE/lists.yml +8 -4
  161. data/resources/locales/en-IE/numbers.yml +48 -24
  162. data/resources/locales/en-SG/calendars.yml +4 -4
  163. data/resources/locales/en-SG/lists.yml +8 -4
  164. data/resources/locales/en-SG/numbers.yml +48 -24
  165. data/resources/locales/en-ZA/calendars.yml +4 -4
  166. data/resources/locales/en-ZA/lists.yml +8 -4
  167. data/resources/locales/en-ZA/numbers.yml +48 -24
  168. data/resources/locales/es/lists.yml +8 -4
  169. data/resources/locales/es/numbers.yml +48 -24
  170. data/resources/locales/es-419/calendars.yml +8 -8
  171. data/resources/locales/es-419/lists.yml +8 -4
  172. data/resources/locales/es-419/numbers.yml +50 -26
  173. data/resources/locales/es-CO/lists.yml +8 -4
  174. data/resources/locales/es-CO/numbers.yml +48 -24
  175. data/resources/locales/es-MX/lists.yml +8 -4
  176. data/resources/locales/es-MX/numbers.yml +48 -24
  177. data/resources/locales/es-US/lists.yml +8 -4
  178. data/resources/locales/es-US/numbers.yml +48 -24
  179. data/resources/locales/eu/calendars.yml +8 -8
  180. data/resources/locales/eu/lists.yml +8 -4
  181. data/resources/locales/eu/numbers.yml +48 -24
  182. data/resources/locales/fa/lists.yml +8 -4
  183. data/resources/locales/fa/numbers.yml +48 -24
  184. data/resources/locales/fi/calendars.yml +8 -8
  185. data/resources/locales/fi/lists.yml +8 -4
  186. data/resources/locales/fi/numbers.yml +48 -24
  187. data/resources/locales/fil/calendars.yml +8 -8
  188. data/resources/locales/fil/lists.yml +8 -4
  189. data/resources/locales/fil/numbers.yml +48 -24
  190. data/resources/locales/fr/calendars.yml +8 -8
  191. data/resources/locales/fr/lists.yml +8 -4
  192. data/resources/locales/fr/numbers.yml +48 -24
  193. data/resources/locales/fr-BE/calendars.yml +8 -8
  194. data/resources/locales/fr-BE/lists.yml +8 -4
  195. data/resources/locales/fr-BE/numbers.yml +48 -24
  196. data/resources/locales/fr-CA/calendars.yml +8 -8
  197. data/resources/locales/fr-CA/lists.yml +8 -4
  198. data/resources/locales/fr-CA/numbers.yml +48 -24
  199. data/resources/locales/fr-CH/calendars.yml +8 -8
  200. data/resources/locales/fr-CH/lists.yml +8 -4
  201. data/resources/locales/fr-CH/numbers.yml +48 -24
  202. data/resources/locales/ga/calendars.yml +8 -8
  203. data/resources/locales/ga/lists.yml +8 -4
  204. data/resources/locales/ga/numbers.yml +48 -24
  205. data/resources/locales/gl/calendars.yml +8 -8
  206. data/resources/locales/gl/lists.yml +8 -4
  207. data/resources/locales/gl/numbers.yml +48 -24
  208. data/resources/locales/he/calendars.yml +28 -28
  209. data/resources/locales/he/lists.yml +8 -4
  210. data/resources/locales/he/numbers.yml +48 -24
  211. data/resources/locales/hi/calendars.yml +8 -8
  212. data/resources/locales/hi/lists.yml +8 -4
  213. data/resources/locales/hi/numbers.yml +48 -24
  214. data/resources/locales/hr/lists.yml +8 -4
  215. data/resources/locales/hr/numbers.yml +48 -24
  216. data/resources/locales/hu/lists.yml +8 -4
  217. data/resources/locales/hu/numbers.yml +48 -24
  218. data/resources/locales/id/calendars.yml +8 -8
  219. data/resources/locales/id/lists.yml +8 -4
  220. data/resources/locales/id/numbers.yml +49 -25
  221. data/resources/locales/is/calendars.yml +8 -8
  222. data/resources/locales/is/lists.yml +8 -4
  223. data/resources/locales/is/numbers.yml +48 -24
  224. data/resources/locales/it/calendars.yml +8 -8
  225. data/resources/locales/it/lists.yml +8 -4
  226. data/resources/locales/it/numbers.yml +54 -30
  227. data/resources/locales/it-CH/calendars.yml +8 -8
  228. data/resources/locales/it-CH/lists.yml +8 -4
  229. data/resources/locales/it-CH/numbers.yml +54 -30
  230. data/resources/locales/ja/calendars.yml +32 -32
  231. data/resources/locales/ja/lists.yml +8 -4
  232. data/resources/locales/ja/numbers.yml +48 -24
  233. data/resources/locales/ko/calendars.yml +8 -8
  234. data/resources/locales/ko/lists.yml +8 -4
  235. data/resources/locales/ko/numbers.yml +48 -24
  236. data/resources/locales/lv/lists.yml +8 -4
  237. data/resources/locales/lv/numbers.yml +48 -24
  238. data/resources/locales/ms/calendars.yml +8 -8
  239. data/resources/locales/ms/lists.yml +8 -4
  240. data/resources/locales/ms/numbers.yml +48 -24
  241. data/resources/locales/nb/calendars.yml +9 -9
  242. data/resources/locales/nb/lists.yml +8 -4
  243. data/resources/locales/nb/numbers.yml +48 -24
  244. data/resources/locales/nl/calendars.yml +8 -8
  245. data/resources/locales/nl/lists.yml +8 -4
  246. data/resources/locales/nl/numbers.yml +48 -24
  247. data/resources/locales/pl/calendars.yml +8 -8
  248. data/resources/locales/pl/lists.yml +8 -4
  249. data/resources/locales/pl/numbers.yml +48 -24
  250. data/resources/locales/pt/calendars.yml +8 -8
  251. data/resources/locales/pt/lists.yml +8 -4
  252. data/resources/locales/pt/numbers.yml +48 -24
  253. data/resources/locales/ro/calendars.yml +8 -8
  254. data/resources/locales/ro/lists.yml +8 -4
  255. data/resources/locales/ro/numbers.yml +48 -24
  256. data/resources/locales/ru/calendars.yml +8 -8
  257. data/resources/locales/ru/lists.yml +8 -4
  258. data/resources/locales/ru/numbers.yml +48 -24
  259. data/resources/locales/sk/calendars.yml +8 -8
  260. data/resources/locales/sk/lists.yml +8 -4
  261. data/resources/locales/sk/numbers.yml +48 -24
  262. data/resources/locales/sq/calendars.yml +8 -8
  263. data/resources/locales/sq/lists.yml +8 -4
  264. data/resources/locales/sq/numbers.yml +48 -24
  265. data/resources/locales/sr/lists.yml +8 -4
  266. data/resources/locales/sr/numbers.yml +48 -24
  267. data/resources/locales/sv/calendars.yml +10 -10
  268. data/resources/locales/sv/lists.yml +8 -4
  269. data/resources/locales/sv/numbers.yml +48 -24
  270. data/resources/locales/ta/calendars.yml +8 -8
  271. data/resources/locales/ta/lists.yml +8 -4
  272. data/resources/locales/ta/numbers.yml +48 -24
  273. data/resources/locales/th/calendars.yml +8 -8
  274. data/resources/locales/th/lists.yml +8 -4
  275. data/resources/locales/th/numbers.yml +48 -24
  276. data/resources/locales/tr/lists.yml +8 -4
  277. data/resources/locales/tr/numbers.yml +50 -26
  278. data/resources/locales/uk/calendars.yml +8 -8
  279. data/resources/locales/uk/lists.yml +8 -4
  280. data/resources/locales/uk/numbers.yml +48 -24
  281. data/resources/locales/ur/calendars.yml +8 -8
  282. data/resources/locales/ur/lists.yml +8 -4
  283. data/resources/locales/ur/numbers.yml +48 -24
  284. data/resources/locales/vi/calendars.yml +32 -32
  285. data/resources/locales/vi/lists.yml +8 -4
  286. data/resources/locales/vi/numbers.yml +48 -24
  287. data/resources/locales/zh/calendars.yml +32 -32
  288. data/resources/locales/zh/lists.yml +8 -4
  289. data/resources/locales/zh/numbers.yml +48 -24
  290. data/resources/locales/zh-Hant/calendars.yml +32 -32
  291. data/resources/locales/zh-Hant/lists.yml +8 -4
  292. data/resources/locales/zh-Hant/numbers.yml +48 -24
  293. data/resources/shared/aliases.yml +1351 -0
  294. data/resources/shared/likely_subtags.yml +1149 -0
  295. data/resources/shared/postal_codes.yml +486 -289
  296. data/resources/shared/segments/segments_root.yml +57 -57
  297. data/resources/shared/segments/tests/sentence_break_test.yml +527 -0
  298. data/resources/shared/segments/tests/word_break_test.yml +1379 -0
  299. data/resources/shared/territories_containment.yml +25 -17
  300. data/resources/shared/variables.yml +1194 -0
  301. data/resources/unicode_data/blocks/ahom.yml +913 -0
  302. data/resources/unicode_data/blocks/anatolian_hieroglyphs.yml +9329 -0
  303. data/resources/unicode_data/blocks/arabic.yml +16 -0
  304. data/resources/unicode_data/blocks/arabic_presentation_forms_a.yml +2 -2
  305. data/resources/unicode_data/blocks/bassa_vah.yml +577 -0
  306. data/resources/unicode_data/blocks/buginese.yml +2 -2
  307. data/resources/unicode_data/blocks/caucasian_albanian.yml +849 -0
  308. data/resources/unicode_data/blocks/cherokee_supplement.yml +1281 -0
  309. data/resources/unicode_data/blocks/cjk_unified_ideographs_extension_e.yml +33 -0
  310. data/resources/unicode_data/blocks/combining_diacritical_marks_extended.yml +241 -0
  311. data/resources/unicode_data/blocks/coptic_epact_numbers.yml +449 -0
  312. data/resources/unicode_data/blocks/cuneiform_numbers_and_punctuation.yml +2 -2
  313. data/resources/unicode_data/blocks/duployan.yml +2289 -0
  314. data/resources/unicode_data/blocks/early_dynastic_cuneiform.yml +3137 -0
  315. data/resources/unicode_data/blocks/elbasan.yml +641 -0
  316. data/resources/unicode_data/blocks/general_punctuation.yml +64 -0
  317. data/resources/unicode_data/blocks/geometric_shapes_extended.yml +1361 -0
  318. data/resources/unicode_data/blocks/grantha.yml +1361 -0
  319. data/resources/unicode_data/blocks/gujarati.yml +0 -16
  320. data/resources/unicode_data/blocks/hatran.yml +417 -0
  321. data/resources/unicode_data/blocks/kannada.yml +0 -16
  322. data/resources/unicode_data/blocks/khojki.yml +977 -0
  323. data/resources/unicode_data/blocks/khudawadi.yml +1105 -0
  324. data/resources/unicode_data/blocks/latin_extended_e.yml +865 -0
  325. data/resources/unicode_data/blocks/linear_a.yml +5457 -0
  326. data/resources/unicode_data/blocks/mahajani.yml +625 -0
  327. data/resources/unicode_data/blocks/manichaean.yml +817 -0
  328. data/resources/unicode_data/blocks/mende_kikakui.yml +3409 -0
  329. data/resources/unicode_data/blocks/miscellaneous_technical.yml +4 -4
  330. data/resources/unicode_data/blocks/modi.yml +1265 -0
  331. data/resources/unicode_data/blocks/mongolian.yml +2 -2
  332. data/resources/unicode_data/blocks/mro.yml +689 -0
  333. data/resources/unicode_data/blocks/multani.yml +609 -0
  334. data/resources/unicode_data/blocks/myanmar_extended_b.yml +497 -0
  335. data/resources/unicode_data/blocks/nabataean.yml +641 -0
  336. data/resources/unicode_data/blocks/old_hungarian.yml +1729 -0
  337. data/resources/unicode_data/blocks/old_north_arabian.yml +513 -0
  338. data/resources/unicode_data/blocks/old_permic.yml +689 -0
  339. data/resources/unicode_data/blocks/ornamental_dingbats.yml +769 -0
  340. data/resources/unicode_data/blocks/pahawh_hmong.yml +2033 -0
  341. data/resources/unicode_data/blocks/palmyrene.yml +513 -0
  342. data/resources/unicode_data/blocks/pau_cin_hau.yml +913 -0
  343. data/resources/unicode_data/blocks/psalter_pahlavi.yml +465 -0
  344. data/resources/unicode_data/blocks/shorthand_format_controls.yml +65 -0
  345. data/resources/unicode_data/blocks/siddham.yml +1473 -0
  346. data/resources/unicode_data/blocks/sinhala_archaic_numbers.yml +321 -0
  347. data/resources/unicode_data/blocks/supplemental_arrows_c.yml +2369 -0
  348. data/resources/unicode_data/blocks/supplemental_symbols_and_pictographs.yml +241 -0
  349. data/resources/unicode_data/blocks/sutton_signwriting.yml +10753 -0
  350. data/resources/unicode_data/blocks/tirhuta.yml +1313 -0
  351. data/resources/unicode_data/blocks/warang_citi.yml +1345 -0
  352. data/resources/unicode_data/properties/ASCII_Hex_Digit/value.dump +5 -0
  353. data/resources/unicode_data/properties/Age/1.1/value.dump +0 -0
  354. data/resources/unicode_data/properties/Age/2.0/value.dump +0 -0
  355. data/resources/unicode_data/properties/Age/2.1/value.dump +4 -0
  356. data/resources/unicode_data/properties/Age/3.0/value.dump +0 -0
  357. data/resources/unicode_data/properties/Age/3.1/value.dump +0 -0
  358. data/resources/unicode_data/properties/Age/3.2/value.dump +0 -0
  359. data/resources/unicode_data/properties/Age/4.0/value.dump +0 -0
  360. data/resources/unicode_data/properties/Age/4.1/value.dump +0 -0
  361. data/resources/unicode_data/properties/Age/5.0/value.dump +0 -0
  362. data/resources/unicode_data/properties/Age/5.1/value.dump +0 -0
  363. data/resources/unicode_data/properties/Age/5.2/value.dump +0 -0
  364. data/resources/unicode_data/properties/Age/6.0/value.dump +0 -0
  365. data/resources/unicode_data/properties/Age/6.1/value.dump +0 -0
  366. data/resources/unicode_data/properties/Age/6.2/value.dump +3 -0
  367. data/resources/unicode_data/properties/Age/6.3/value.dump +4 -0
  368. data/resources/unicode_data/properties/Alphabetic/value.dump +0 -0
  369. data/resources/unicode_data/properties/Bidi_Class/AL/value.dump +0 -0
  370. data/resources/unicode_data/properties/Bidi_Class/AN/value.dump +0 -0
  371. data/resources/unicode_data/properties/Bidi_Class/B/value.dump +8 -0
  372. data/resources/unicode_data/properties/Bidi_Class/BN/value.dump +0 -0
  373. data/resources/unicode_data/properties/Bidi_Class/CS/value.dump +15 -0
  374. data/resources/unicode_data/properties/Bidi_Class/EN/value.dump +0 -0
  375. data/resources/unicode_data/properties/Bidi_Class/ES/value.dump +11 -0
  376. data/resources/unicode_data/properties/Bidi_Class/ET/value.dump +27 -0
  377. data/resources/unicode_data/properties/Bidi_Class/FSI/value.dump +3 -0
  378. data/resources/unicode_data/properties/Bidi_Class/L/value.dump +0 -0
  379. data/resources/unicode_data/properties/Bidi_Class/LRE/value.dump +3 -0
  380. data/resources/unicode_data/properties/Bidi_Class/LRI/value.dump +3 -0
  381. data/resources/unicode_data/properties/Bidi_Class/LRO/value.dump +3 -0
  382. data/resources/unicode_data/properties/Bidi_Class/NSM/value.dump +0 -0
  383. data/resources/unicode_data/properties/Bidi_Class/ON/value.dump +0 -0
  384. data/resources/unicode_data/properties/Bidi_Class/PDF/value.dump +3 -0
  385. data/resources/unicode_data/properties/Bidi_Class/PDI/value.dump +3 -0
  386. data/resources/unicode_data/properties/Bidi_Class/R/value.dump +0 -0
  387. data/resources/unicode_data/properties/Bidi_Class/RLE/value.dump +3 -0
  388. data/resources/unicode_data/properties/Bidi_Class/RLI/value.dump +3 -0
  389. data/resources/unicode_data/properties/Bidi_Class/RLO/value.dump +3 -0
  390. data/resources/unicode_data/properties/Bidi_Class/S/value.dump +5 -0
  391. data/resources/unicode_data/properties/Bidi_Class/WS/value.dump +0 -0
  392. data/resources/unicode_data/properties/Bidi_Control/value.dump +4 -0
  393. data/resources/unicode_data/properties/Bidi_Mirrored/N/value.dump +0 -0
  394. data/resources/unicode_data/properties/Bidi_Mirrored/Y/value.dump +115 -0
  395. data/resources/unicode_data/properties/Block/Aegean Numbers/value.dump +0 -0
  396. data/resources/unicode_data/properties/Block/Alchemical Symbols/value.dump +0 -0
  397. data/resources/unicode_data/properties/Block/Alphabetic Presentation Forms/value.dump +0 -0
  398. data/resources/unicode_data/properties/Block/Ancient Greek Musical Notation/value.dump +0 -0
  399. data/resources/unicode_data/properties/Block/Ancient Greek Numbers/value.dump +3 -0
  400. data/resources/unicode_data/properties/Block/Ancient Symbols/value.dump +3 -0
  401. data/resources/unicode_data/properties/Block/Arabic/value.dump +0 -0
  402. data/resources/unicode_data/properties/Block/Arabic Extended-A/value.dump +3 -0
  403. data/resources/unicode_data/properties/Block/Arabic Mathematical Alphabetic Symbols/value.dump +0 -0
  404. data/resources/unicode_data/properties/Block/Arabic Presentation Forms-A/value.dump +3 -0
  405. data/resources/unicode_data/properties/Block/Arabic Presentation Forms-B/value.dump +3 -0
  406. data/resources/unicode_data/properties/Block/Arabic Supplement/value.dump +3 -0
  407. data/resources/unicode_data/properties/Block/Armenian/value.dump +3 -0
  408. data/resources/unicode_data/properties/Block/Arrows/value.dump +3 -0
  409. data/resources/unicode_data/properties/Block/Avestan/value.dump +0 -0
  410. data/resources/unicode_data/properties/Block/Balinese/value.dump +0 -0
  411. data/resources/unicode_data/properties/Block/Bamum/value.dump +3 -0
  412. data/resources/unicode_data/properties/Block/Bamum Supplement/value.dump +0 -0
  413. data/resources/unicode_data/properties/Block/Basic Latin/value.dump +0 -0
  414. data/resources/unicode_data/properties/Block/Batak/value.dump +3 -0
  415. data/resources/unicode_data/properties/Block/Bengali/value.dump +3 -0
  416. data/resources/unicode_data/properties/Block/Block Elements/value.dump +3 -0
  417. data/resources/unicode_data/properties/Block/Bopomofo/value.dump +0 -0
  418. data/resources/unicode_data/properties/Block/Bopomofo Extended/value.dump +3 -0
  419. data/resources/unicode_data/properties/Block/Box Drawing/value.dump +0 -0
  420. data/resources/unicode_data/properties/Block/Brahmi/value.dump +0 -0
  421. data/resources/unicode_data/properties/Block/Braille Patterns/value.dump +0 -0
  422. data/resources/unicode_data/properties/Block/Buginese/value.dump +0 -0
  423. data/resources/unicode_data/properties/Block/Buhid/value.dump +3 -0
  424. data/resources/unicode_data/properties/Block/Byzantine Musical Symbols/value.dump +0 -0
  425. data/resources/unicode_data/properties/Block/CJK Compatibility/value.dump +0 -0
  426. data/resources/unicode_data/properties/Block/CJK Compatibility Forms/value.dump +3 -0
  427. data/resources/unicode_data/properties/Block/CJK Compatibility Ideographs/value.dump +0 -0
  428. data/resources/unicode_data/properties/Block/CJK Compatibility Ideographs Supplement/value.dump +0 -0
  429. data/resources/unicode_data/properties/Block/CJK Radicals Supplement/value.dump +3 -0
  430. data/resources/unicode_data/properties/Block/CJK Strokes/value.dump +3 -0
  431. Punctuation/value.dump +0 -0
  432. data/resources/unicode_data/properties/Block/CJK Unified Ideographs/value.dump +0 -0
  433. data/resources/unicode_data/properties/Block/CJK Unified Ideographs Extension A/value.dump +0 -0
  434. data/resources/unicode_data/properties/Block/CJK Unified Ideographs Extension B/value.dump +0 -0
  435. data/resources/unicode_data/properties/Block/CJK Unified Ideographs Extension C/value.dump +0 -0
  436. data/resources/unicode_data/properties/Block/CJK Unified Ideographs Extension D/value.dump +3 -0
  437. data/resources/unicode_data/properties/Block/Carian/value.dump +3 -0
  438. data/resources/unicode_data/properties/Block/Chakma/value.dump +0 -0
  439. data/resources/unicode_data/properties/Block/Cham/value.dump +0 -0
  440. data/resources/unicode_data/properties/Block/Cherokee/value.dump +3 -0
  441. data/resources/unicode_data/properties/Block/Combining Diacritical Marks/value.dump +0 -0
  442. data/resources/unicode_data/properties/Block/Combining Diacritical Marks Supplement/value.dump +3 -0
  443. data/resources/unicode_data/properties/Block/Combining Diacritical Marks for Symbols/value.dump +3 -0
  444. data/resources/unicode_data/properties/Block/Combining Half Marks/value.dump +3 -0
  445. data/resources/unicode_data/properties/Block/Common Indic Number Forms/value.dump +3 -0
  446. data/resources/unicode_data/properties/Block/Control Pictures/value.dump +0 -0
  447. data/resources/unicode_data/properties/Block/Coptic/value.dump +3 -0
  448. data/resources/unicode_data/properties/Block/Counting Rod Numerals/value.dump +3 -0
  449. data/resources/unicode_data/properties/Block/Cuneiform/value.dump +0 -0
  450. Punctuation/value.dump +0 -0
  451. data/resources/unicode_data/properties/Block/Currency Symbols/value.dump +3 -0
  452. data/resources/unicode_data/properties/Block/Cypriot Syllabary/value.dump +0 -0
  453. data/resources/unicode_data/properties/Block/Cyrillic/value.dump +0 -0
  454. data/resources/unicode_data/properties/Block/Cyrillic Extended-A/value.dump +3 -0
  455. data/resources/unicode_data/properties/Block/Cyrillic Extended-B/value.dump +3 -0
  456. data/resources/unicode_data/properties/Block/Cyrillic Supplement/value.dump +0 -0
  457. data/resources/unicode_data/properties/Block/Deseret/value.dump +0 -0
  458. data/resources/unicode_data/properties/Block/Devanagari/value.dump +0 -0
  459. data/resources/unicode_data/properties/Block/Devanagari Extended/value.dump +3 -0
  460. data/resources/unicode_data/properties/Block/Dingbats/value.dump +0 -0
  461. data/resources/unicode_data/properties/Block/Domino Tiles/value.dump +3 -0
  462. data/resources/unicode_data/properties/Block/Egyptian Hieroglyphs/value.dump +0 -0
  463. data/resources/unicode_data/properties/Block/Emoticons/value.dump +0 -0
  464. data/resources/unicode_data/properties/Block/Enclosed Alphanumeric Supplement/value.dump +0 -0
  465. data/resources/unicode_data/properties/Block/Enclosed Alphanumerics/value.dump +3 -0
  466. Months/value.dump +0 -0
  467. data/resources/unicode_data/properties/Block/Enclosed Ideographic Supplement/value.dump +0 -0
  468. data/resources/unicode_data/properties/Block/Ethiopic/value.dump +0 -0
  469. data/resources/unicode_data/properties/Block/Ethiopic Extended/value.dump +3 -0
  470. data/resources/unicode_data/properties/Block/Ethiopic Extended-A/value.dump +0 -0
  471. data/resources/unicode_data/properties/Block/Ethiopic Supplement/value.dump +3 -0
  472. data/resources/unicode_data/properties/Block/General Punctuation/value.dump +0 -0
  473. data/resources/unicode_data/properties/Block/Geometric Shapes/value.dump +3 -0
  474. data/resources/unicode_data/properties/Block/Georgian/value.dump +3 -0
  475. data/resources/unicode_data/properties/Block/Georgian Supplement/value.dump +0 -0
  476. data/resources/unicode_data/properties/Block/Glagolitic/value.dump +0 -0
  477. data/resources/unicode_data/properties/Block/Gothic/value.dump +3 -0
  478. data/resources/unicode_data/properties/Block/Greek Extended/value.dump +0 -0
  479. data/resources/unicode_data/properties/Block/Greek and Coptic/value.dump +3 -0
  480. data/resources/unicode_data/properties/Block/Gujarati/value.dump +4 -0
  481. data/resources/unicode_data/properties/Block/Gurmukhi/value.dump +0 -0
  482. Fullwidth Forms/value.dump +0 -0
  483. data/resources/unicode_data/properties/Block/Hangul Compatibility Jamo/value.dump +3 -0
  484. data/resources/unicode_data/properties/Block/Hangul Jamo/value.dump +0 -0
  485. data/resources/unicode_data/properties/Block/Hangul Jamo Extended-A/value.dump +3 -0
  486. data/resources/unicode_data/properties/Block/Hangul Jamo Extended-B/value.dump +3 -0
  487. data/resources/unicode_data/properties/Block/Hangul Syllables/value.dump +0 -0
  488. data/resources/unicode_data/properties/Block/Hanunoo/value.dump +3 -0
  489. data/resources/unicode_data/properties/Block/Hebrew/value.dump +3 -0
  490. data/resources/unicode_data/properties/Block/High Private Use Surrogates/value.dump +3 -0
  491. data/resources/unicode_data/properties/Block/High Surrogates/value.dump +0 -0
  492. data/resources/unicode_data/properties/Block/Hiragana/value.dump +3 -0
  493. data/resources/unicode_data/properties/Block/IPA Extensions/value.dump +3 -0
  494. data/resources/unicode_data/properties/Block/Ideographic Description Characters/value.dump +3 -0
  495. data/resources/unicode_data/properties/Block/Imperial Aramaic/value.dump +3 -0
  496. data/resources/unicode_data/properties/Block/Inscriptional Pahlavi/value.dump +3 -0
  497. data/resources/unicode_data/properties/Block/Inscriptional Parthian/value.dump +3 -0
  498. data/resources/unicode_data/properties/Block/Javanese/value.dump +3 -0
  499. data/resources/unicode_data/properties/Block/Kaithi/value.dump +3 -0
  500. data/resources/unicode_data/properties/Block/Kana Supplement/value.dump +0 -0
  501. data/resources/unicode_data/properties/Block/Kanbun/value.dump +3 -0
  502. data/resources/unicode_data/properties/Block/Kangxi Radicals/value.dump +0 -0
  503. data/resources/unicode_data/properties/Block/Kannada/value.dump +3 -0
  504. data/resources/unicode_data/properties/Block/Katakana/value.dump +3 -0
  505. data/resources/unicode_data/properties/Block/Katakana Phonetic Extensions/value.dump +3 -0
  506. data/resources/unicode_data/properties/Block/Kayah Li/value.dump +0 -0
  507. data/resources/unicode_data/properties/Block/Kharoshthi/value.dump +0 -0
  508. data/resources/unicode_data/properties/Block/Khmer/value.dump +3 -0
  509. data/resources/unicode_data/properties/Block/Khmer Symbols/value.dump +3 -0
  510. data/resources/unicode_data/properties/Block/Lao/value.dump +3 -0
  511. data/resources/unicode_data/properties/Block/Latin Extended Additional/value.dump +0 -0
  512. data/resources/unicode_data/properties/Block/Latin Extended-A/value.dump +0 -0
  513. data/resources/unicode_data/properties/Block/Latin Extended-B/value.dump +3 -0
  514. data/resources/unicode_data/properties/Block/Latin Extended-C/value.dump +3 -0
  515. data/resources/unicode_data/properties/Block/Latin Extended-D/value.dump +3 -0
  516. data/resources/unicode_data/properties/Block/Latin-1 Supplement/value.dump +3 -0
  517. data/resources/unicode_data/properties/Block/Lepcha/value.dump +0 -0
  518. data/resources/unicode_data/properties/Block/Letterlike Symbols/value.dump +0 -0
  519. data/resources/unicode_data/properties/Block/Limbu/value.dump +0 -0
  520. data/resources/unicode_data/properties/Block/Linear B Ideograms/value.dump +0 -0
  521. data/resources/unicode_data/properties/Block/Linear B Syllabary/value.dump +0 -0
  522. data/resources/unicode_data/properties/Block/Lisu/value.dump +3 -0
  523. data/resources/unicode_data/properties/Block/Low Surrogates/value.dump +0 -0
  524. data/resources/unicode_data/properties/Block/Lycian/value.dump +3 -0
  525. data/resources/unicode_data/properties/Block/Lydian/value.dump +3 -0
  526. data/resources/unicode_data/properties/Block/Mahjong Tiles/value.dump +0 -0
  527. data/resources/unicode_data/properties/Block/Malayalam/value.dump +0 -0
  528. data/resources/unicode_data/properties/Block/Mandaic/value.dump +3 -0
  529. data/resources/unicode_data/properties/Block/Mathematical Alphanumeric Symbols/value.dump +0 -0
  530. data/resources/unicode_data/properties/Block/Mathematical Operators/value.dump +0 -0
  531. data/resources/unicode_data/properties/Block/Meetei Mayek/value.dump +3 -0
  532. data/resources/unicode_data/properties/Block/Meetei Mayek Extensions/value.dump +3 -0
  533. data/resources/unicode_data/properties/Block/Meroitic Cursive/value.dump +3 -0
  534. data/resources/unicode_data/properties/Block/Meroitic Hieroglyphs/value.dump +3 -0
  535. data/resources/unicode_data/properties/Block/Miao/value.dump +0 -0
  536. data/resources/unicode_data/properties/Block/Miscellaneous Mathematical Symbols-A/value.dump +3 -0
  537. data/resources/unicode_data/properties/Block/Miscellaneous Mathematical Symbols-B/value.dump +3 -0
  538. data/resources/unicode_data/properties/Block/Miscellaneous Symbols/value.dump +0 -0
  539. data/resources/unicode_data/properties/Block/Miscellaneous Symbols And Pictographs/value.dump +0 -0
  540. Arrows/value.dump +0 -0
  541. data/resources/unicode_data/properties/Block/Miscellaneous Technical/value.dump +0 -0
  542. data/resources/unicode_data/properties/Block/Modifier Tone Letters/value.dump +0 -0
  543. data/resources/unicode_data/properties/Block/Mongolian/value.dump +0 -0
  544. data/resources/unicode_data/properties/Block/Musical Symbols/value.dump +0 -0
  545. data/resources/unicode_data/properties/Block/Myanmar/value.dump +0 -0
  546. data/resources/unicode_data/properties/Block/Myanmar Extended-A/value.dump +3 -0
  547. data/resources/unicode_data/properties/Block/NKo/value.dump +3 -0
  548. data/resources/unicode_data/properties/Block/New Tai Lue/value.dump +3 -0
  549. data/resources/unicode_data/properties/Block/Number Forms/value.dump +3 -0
  550. data/resources/unicode_data/properties/Block/Ogham/value.dump +3 -0
  551. data/resources/unicode_data/properties/Block/Ol Chiki/value.dump +3 -0
  552. data/resources/unicode_data/properties/Block/Old Italic/value.dump +0 -0
  553. data/resources/unicode_data/properties/Block/Old Persian/value.dump +3 -0
  554. data/resources/unicode_data/properties/Block/Old South Arabian/value.dump +5 -0
  555. data/resources/unicode_data/properties/Block/Old Turkic/value.dump +0 -0
  556. data/resources/unicode_data/properties/Block/Optical Character Recognition/value.dump +3 -0
  557. data/resources/unicode_data/properties/Block/Oriya/value.dump +0 -0
  558. data/resources/unicode_data/properties/Block/Osmanya/value.dump +3 -0
  559. data/resources/unicode_data/properties/Block/Phags-pa/value.dump +3 -0
  560. data/resources/unicode_data/properties/Block/Phaistos Disc/value.dump +3 -0
  561. data/resources/unicode_data/properties/Block/Phoenician/value.dump +0 -0
  562. data/resources/unicode_data/properties/Block/Phonetic Extensions/value.dump +0 -0
  563. data/resources/unicode_data/properties/Block/Phonetic Extensions Supplement/value.dump +3 -0
  564. data/resources/unicode_data/properties/Block/Playing Cards/value.dump +3 -0
  565. data/resources/unicode_data/properties/Block/Private Use Area/value.dump +0 -0
  566. data/resources/unicode_data/properties/Block/Rejang/value.dump +3 -0
  567. data/resources/unicode_data/properties/Block/Rumi Numeral Symbols/value.dump +3 -0
  568. data/resources/unicode_data/properties/Block/Runic/value.dump +3 -0
  569. data/resources/unicode_data/properties/Block/Samaritan/value.dump +0 -0
  570. data/resources/unicode_data/properties/Block/Saurashtra/value.dump +3 -0
  571. data/resources/unicode_data/properties/Block/Sharada/value.dump +3 -0
  572. data/resources/unicode_data/properties/Block/Shavian/value.dump +3 -0
  573. data/resources/unicode_data/properties/Block/Sinhala/value.dump +3 -0
  574. data/resources/unicode_data/properties/Block/Small Form Variants/value.dump +3 -0
  575. data/resources/unicode_data/properties/Block/Sora Sompeng/value.dump +3 -0
  576. data/resources/unicode_data/properties/Block/Spacing Modifier Letters/value.dump +3 -0
  577. data/resources/unicode_data/properties/Block/Specials/value.dump +3 -0
  578. data/resources/unicode_data/properties/Block/Sundanese/value.dump +3 -0
  579. data/resources/unicode_data/properties/Block/Sundanese Supplement/value.dump +3 -0
  580. data/resources/unicode_data/properties/Block/Superscripts and Subscripts/value.dump +3 -0
  581. data/resources/unicode_data/properties/Block/Supplemental Arrows-A/value.dump +3 -0
  582. data/resources/unicode_data/properties/Block/Supplemental Arrows-B/value.dump +0 -0
  583. data/resources/unicode_data/properties/Block/Supplemental Mathematical Operators/value.dump +0 -0
  584. data/resources/unicode_data/properties/Block/Supplemental Punctuation/value.dump +0 -0
  585. data/resources/unicode_data/properties/Block/Supplementary Private Use Area-A/value.dump +0 -0
  586. data/resources/unicode_data/properties/Block/Supplementary Private Use Area-B/value.dump +0 -0
  587. data/resources/unicode_data/properties/Block/Syloti Nagri/value.dump +0 -0
  588. data/resources/unicode_data/properties/Block/Syriac/value.dump +0 -0
  589. data/resources/unicode_data/properties/Block/Tagalog/value.dump +0 -0
  590. data/resources/unicode_data/properties/Block/Tagbanwa/value.dump +3 -0
  591. data/resources/unicode_data/properties/Block/Tags/value.dump +0 -0
  592. data/resources/unicode_data/properties/Block/Tai Le/value.dump +3 -0
  593. data/resources/unicode_data/properties/Block/Tai Tham/value.dump +3 -0
  594. data/resources/unicode_data/properties/Block/Tai Viet/value.dump +3 -0
  595. data/resources/unicode_data/properties/Block/Tai Xuan Jing Symbols/value.dump +0 -0
  596. data/resources/unicode_data/properties/Block/Takri/value.dump +3 -0
  597. data/resources/unicode_data/properties/Block/Tamil/value.dump +3 -0
  598. data/resources/unicode_data/properties/Block/Telugu/value.dump +0 -0
  599. data/resources/unicode_data/properties/Block/Thaana/value.dump +3 -0
  600. data/resources/unicode_data/properties/Block/Thai/value.dump +0 -0
  601. data/resources/unicode_data/properties/Block/Tibetan/value.dump +0 -0
  602. data/resources/unicode_data/properties/Block/Tifinagh/value.dump +3 -0
  603. data/resources/unicode_data/properties/Block/Transport And Map Symbols/value.dump +3 -0
  604. data/resources/unicode_data/properties/Block/Ugaritic/value.dump +3 -0
  605. data/resources/unicode_data/properties/Block/Unified Canadian Aboriginal Syllabics/value.dump +0 -0
  606. data/resources/unicode_data/properties/Block/Unified Canadian Aboriginal Syllabics Extended/value.dump +3 -0
  607. data/resources/unicode_data/properties/Block/Vai/value.dump +0 -0
  608. data/resources/unicode_data/properties/Block/Variation Selectors/value.dump +0 -0
  609. data/resources/unicode_data/properties/Block/Variation Selectors Supplement/value.dump +0 -0
  610. data/resources/unicode_data/properties/Block/Vedic Extensions/value.dump +3 -0
  611. data/resources/unicode_data/properties/Block/Vertical Forms/value.dump +3 -0
  612. data/resources/unicode_data/properties/Block/Yi Radicals/value.dump +3 -0
  613. data/resources/unicode_data/properties/Block/Yi Syllables/value.dump +0 -0
  614. data/resources/unicode_data/properties/Block/Yijing Hexagram Symbols/value.dump +3 -0
  615. data/resources/unicode_data/properties/Canonical_Combining_Class/0/value.dump +0 -0
  616. data/resources/unicode_data/properties/Canonical_Combining_Class/1/value.dump +13 -0
  617. data/resources/unicode_data/properties/Canonical_Combining_Class/10/value.dump +3 -0
  618. data/resources/unicode_data/properties/Canonical_Combining_Class/103/value.dump +3 -0
  619. data/resources/unicode_data/properties/Canonical_Combining_Class/107/value.dump +3 -0
  620. data/resources/unicode_data/properties/Canonical_Combining_Class/11/value.dump +3 -0
  621. data/resources/unicode_data/properties/Canonical_Combining_Class/118/value.dump +3 -0
  622. data/resources/unicode_data/properties/Canonical_Combining_Class/12/value.dump +3 -0
  623. data/resources/unicode_data/properties/Canonical_Combining_Class/122/value.dump +3 -0
  624. data/resources/unicode_data/properties/Canonical_Combining_Class/129/value.dump +3 -0
  625. data/resources/unicode_data/properties/Canonical_Combining_Class/13/value.dump +3 -0
  626. data/resources/unicode_data/properties/Canonical_Combining_Class/130/value.dump +5 -0
  627. data/resources/unicode_data/properties/Canonical_Combining_Class/132/value.dump +3 -0
  628. data/resources/unicode_data/properties/Canonical_Combining_Class/14/value.dump +3 -0
  629. data/resources/unicode_data/properties/Canonical_Combining_Class/15/value.dump +3 -0
  630. data/resources/unicode_data/properties/Canonical_Combining_Class/16/value.dump +3 -0
  631. data/resources/unicode_data/properties/Canonical_Combining_Class/17/value.dump +3 -0
  632. data/resources/unicode_data/properties/Canonical_Combining_Class/18/value.dump +4 -0
  633. data/resources/unicode_data/properties/Canonical_Combining_Class/19/value.dump +3 -0
  634. data/resources/unicode_data/properties/Canonical_Combining_Class/20/value.dump +3 -0
  635. data/resources/unicode_data/properties/Canonical_Combining_Class/202/value.dump +5 -0
  636. data/resources/unicode_data/properties/Canonical_Combining_Class/21/value.dump +3 -0
  637. data/resources/unicode_data/properties/Canonical_Combining_Class/214/value.dump +3 -0
  638. data/resources/unicode_data/properties/Canonical_Combining_Class/216/value.dump +6 -0
  639. data/resources/unicode_data/properties/Canonical_Combining_Class/218/value.dump +3 -0
  640. data/resources/unicode_data/properties/Canonical_Combining_Class/22/value.dump +3 -0
  641. data/resources/unicode_data/properties/Canonical_Combining_Class/220/value.dump +70 -0
  642. data/resources/unicode_data/properties/Canonical_Combining_Class/222/value.dump +6 -0
  643. data/resources/unicode_data/properties/Canonical_Combining_Class/224/value.dump +3 -0
  644. data/resources/unicode_data/properties/Canonical_Combining_Class/226/value.dump +3 -0
  645. data/resources/unicode_data/properties/Canonical_Combining_Class/228/value.dump +5 -0
  646. data/resources/unicode_data/properties/Canonical_Combining_Class/23/value.dump +3 -0
  647. data/resources/unicode_data/properties/Canonical_Combining_Class/230/value.dump +0 -0
  648. data/resources/unicode_data/properties/Canonical_Combining_Class/232/value.dump +6 -0
  649. data/resources/unicode_data/properties/Canonical_Combining_Class/233/value.dump +6 -0
  650. data/resources/unicode_data/properties/Canonical_Combining_Class/234/value.dump +5 -0
  651. data/resources/unicode_data/properties/Canonical_Combining_Class/24/value.dump +3 -0
  652. data/resources/unicode_data/properties/Canonical_Combining_Class/240/value.dump +3 -0
  653. data/resources/unicode_data/properties/Canonical_Combining_Class/25/value.dump +3 -0
  654. data/resources/unicode_data/properties/Canonical_Combining_Class/26/value.dump +3 -0
  655. data/resources/unicode_data/properties/Canonical_Combining_Class/27/value.dump +4 -0
  656. data/resources/unicode_data/properties/Canonical_Combining_Class/28/value.dump +4 -0
  657. data/resources/unicode_data/properties/Canonical_Combining_Class/29/value.dump +4 -0
  658. data/resources/unicode_data/properties/Canonical_Combining_Class/30/value.dump +4 -0
  659. data/resources/unicode_data/properties/Canonical_Combining_Class/31/value.dump +4 -0
  660. data/resources/unicode_data/properties/Canonical_Combining_Class/32/value.dump +4 -0
  661. data/resources/unicode_data/properties/Canonical_Combining_Class/33/value.dump +3 -0
  662. data/resources/unicode_data/properties/Canonical_Combining_Class/34/value.dump +3 -0
  663. data/resources/unicode_data/properties/Canonical_Combining_Class/35/value.dump +3 -0
  664. data/resources/unicode_data/properties/Canonical_Combining_Class/36/value.dump +3 -0
  665. data/resources/unicode_data/properties/Canonical_Combining_Class/7/value.dump +19 -0
  666. data/resources/unicode_data/properties/Canonical_Combining_Class/8/value.dump +3 -0
  667. data/resources/unicode_data/properties/Canonical_Combining_Class/84/value.dump +3 -0
  668. data/resources/unicode_data/properties/Canonical_Combining_Class/9/value.dump +41 -0
  669. data/resources/unicode_data/properties/Canonical_Combining_Class/91/value.dump +3 -0
  670. data/resources/unicode_data/properties/Case_Ignorable/value.dump +0 -0
  671. data/resources/unicode_data/properties/Cased/value.dump +0 -0
  672. data/resources/unicode_data/properties/Changes_When_Casefolded/value.dump +0 -0
  673. data/resources/unicode_data/properties/Changes_When_Casemapped/value.dump +0 -0
  674. data/resources/unicode_data/properties/Changes_When_Lowercased/value.dump +0 -0
  675. data/resources/unicode_data/properties/Changes_When_Titlecased/value.dump +589 -0
  676. data/resources/unicode_data/properties/Changes_When_Uppercased/value.dump +588 -0
  677. data/resources/unicode_data/properties/Dash/value.dump +0 -0
  678. data/resources/unicode_data/properties/Default_Ignorable_Code_Point/value.dump +0 -0
  679. data/resources/unicode_data/properties/Deprecated/value.dump +0 -0
  680. data/resources/unicode_data/properties/Diacritic/value.dump +135 -0
  681. data/resources/unicode_data/properties/East_Asian_Width/A/value.dump +0 -0
  682. data/resources/unicode_data/properties/East_Asian_Width/F/value.dump +0 -0
  683. data/resources/unicode_data/properties/East_Asian_Width/H/value.dump +9 -0
  684. data/resources/unicode_data/properties/East_Asian_Width/N/value.dump +0 -0
  685. data/resources/unicode_data/properties/East_Asian_Width/Na/value.dump +9 -0
  686. data/resources/unicode_data/properties/East_Asian_Width/W/value.dump +0 -0
  687. data/resources/unicode_data/properties/Extender/value.dump +26 -0
  688. data/resources/unicode_data/properties/General_Category/C/c/value.dump +0 -0
  689. data/resources/unicode_data/properties/General_Category/C/f/value.dump +0 -0
  690. data/resources/unicode_data/properties/General_Category/C/o/value.dump +0 -0
  691. data/resources/unicode_data/properties/General_Category/C/s/value.dump +0 -0
  692. data/resources/unicode_data/properties/General_Category/L/l/value.dump +0 -0
  693. data/resources/unicode_data/properties/General_Category/L/m/value.dump +54 -0
  694. data/resources/unicode_data/properties/General_Category/L/o/value.dump +0 -0
  695. data/resources/unicode_data/properties/General_Category/L/t/value.dump +12 -0
  696. data/resources/unicode_data/properties/General_Category/L/u/value.dump +0 -0
  697. data/resources/unicode_data/properties/General_Category/M/c/value.dump +0 -0
  698. data/resources/unicode_data/properties/General_Category/M/e/value.dump +6 -0
  699. data/resources/unicode_data/properties/General_Category/M/n/value.dump +0 -0
  700. data/resources/unicode_data/properties/General_Category/N/d/value.dump +0 -0
  701. data/resources/unicode_data/properties/General_Category/N/l/value.dump +0 -0
  702. data/resources/unicode_data/properties/General_Category/N/o/value.dump +0 -0
  703. data/resources/unicode_data/properties/General_Category/P/c/value.dump +8 -0
  704. data/resources/unicode_data/properties/General_Category/P/d/value.dump +0 -0
  705. data/resources/unicode_data/properties/General_Category/P/e/value.dump +72 -0
  706. data/resources/unicode_data/properties/General_Category/P/f/value.dump +14 -0
  707. data/resources/unicode_data/properties/General_Category/P/i/value.dump +13 -0
  708. data/resources/unicode_data/properties/General_Category/P/o/value.dump +0 -0
  709. data/resources/unicode_data/properties/General_Category/P/s/value.dump +76 -0
  710. data/resources/unicode_data/properties/General_Category/S/c/value.dump +21 -0
  711. data/resources/unicode_data/properties/General_Category/S/k/value.dump +0 -0
  712. data/resources/unicode_data/properties/General_Category/S/m/value.dump +0 -0
  713. data/resources/unicode_data/properties/General_Category/S/o/value.dump +0 -0
  714. data/resources/unicode_data/properties/General_Category/Z/l/value.dump +3 -0
  715. data/resources/unicode_data/properties/General_Category/Z/p/value.dump +3 -0
  716. data/resources/unicode_data/properties/General_Category/Z/s/value.dump +0 -0
  717. data/resources/unicode_data/properties/Grapheme_Base/value.dump +0 -0
  718. data/resources/unicode_data/properties/Grapheme_Cluster_Break/CR/value.dump +3 -0
  719. data/resources/unicode_data/properties/Grapheme_Cluster_Break/Control/value.dump +0 -0
  720. data/resources/unicode_data/properties/Grapheme_Cluster_Break/Extend/value.dump +0 -0
  721. data/resources/unicode_data/properties/Grapheme_Cluster_Break/L/value.dump +0 -0
  722. data/resources/unicode_data/properties/Grapheme_Cluster_Break/LF/value.dump +3 -0
  723. data/resources/unicode_data/properties/Grapheme_Cluster_Break/LV/value.dump +0 -0
  724. data/resources/unicode_data/properties/Grapheme_Cluster_Break/LVT/value.dump +401 -0
  725. data/resources/unicode_data/properties/Grapheme_Cluster_Break/Regional_Indicator/value.dump +3 -0
  726. data/resources/unicode_data/properties/Grapheme_Cluster_Break/SpacingMark/value.dump +0 -0
  727. data/resources/unicode_data/properties/Grapheme_Cluster_Break/T/value.dump +4 -0
  728. data/resources/unicode_data/properties/Grapheme_Cluster_Break/V/value.dump +4 -0
  729. data/resources/unicode_data/properties/Grapheme_Extend/value.dump +0 -0
  730. data/resources/unicode_data/properties/Grapheme_Link/value.dump +41 -0
  731. data/resources/unicode_data/properties/Hangul_Syllable_Type/L/value.dump +0 -0
  732. data/resources/unicode_data/properties/Hangul_Syllable_Type/LV/value.dump +0 -0
  733. data/resources/unicode_data/properties/Hangul_Syllable_Type/LVT/value.dump +401 -0
  734. data/resources/unicode_data/properties/Hangul_Syllable_Type/T/value.dump +4 -0
  735. data/resources/unicode_data/properties/Hangul_Syllable_Type/V/value.dump +4 -0
  736. data/resources/unicode_data/properties/Hex_Digit/value.dump +8 -0
  737. data/resources/unicode_data/properties/Hyphen/value.dump +12 -0
  738. data/resources/unicode_data/properties/IDS_Binary_Operator/value.dump +4 -0
  739. data/resources/unicode_data/properties/IDS_Trinary_Operator/value.dump +3 -0
  740. data/resources/unicode_data/properties/ID_Continue/value.dump +0 -0
  741. data/resources/unicode_data/properties/ID_Start/value.dump +0 -0
  742. data/resources/unicode_data/properties/Ideographic/value.dump +0 -0
  743. data/resources/unicode_data/properties/Indic_Positional_Category/Bottom/value.dump +78 -0
  744. data/resources/unicode_data/properties/Indic_Positional_Category/Bottom_And_Right/value.dump +4 -0
  745. data/resources/unicode_data/properties/Indic_Positional_Category/Invisible/value.dump +10 -0
  746. data/resources/unicode_data/properties/Indic_Positional_Category/Left/value.dump +36 -0
  747. data/resources/unicode_data/properties/Indic_Positional_Category/Left_And_Right/value.dump +10 -0
  748. data/resources/unicode_data/properties/Indic_Positional_Category/Overstruck/value.dump +8 -0
  749. data/resources/unicode_data/properties/Indic_Positional_Category/Right/value.dump +86 -0
  750. data/resources/unicode_data/properties/Indic_Positional_Category/Top/value.dump +91 -0
  751. data/resources/unicode_data/properties/Indic_Positional_Category/Top_And_Bottom/value.dump +8 -0
  752. data/resources/unicode_data/properties/Indic_Positional_Category/Top_And_Bottom_And_Right/value.dump +3 -0
  753. data/resources/unicode_data/properties/Indic_Positional_Category/Top_And_Left/value.dump +6 -0
  754. data/resources/unicode_data/properties/Indic_Positional_Category/Top_And_Left_And_Right/value.dump +4 -0
  755. data/resources/unicode_data/properties/Indic_Positional_Category/Top_And_Right/value.dump +12 -0
  756. data/resources/unicode_data/properties/Indic_Positional_Category/Visual_Order_Left/value.dump +8 -0
  757. data/resources/unicode_data/properties/Indic_Syllabic_Category/Avagraha/value.dump +15 -0
  758. data/resources/unicode_data/properties/Indic_Syllabic_Category/Bindu/value.dump +0 -0
  759. data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant/value.dump +0 -0
  760. data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Dead/value.dump +4 -0
  761. data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Final/value.dump +13 -0
  762. data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Head_Letter/value.dump +3 -0
  763. data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Medial/value.dump +12 -0
  764. data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Placeholder/value.dump +0 -0
  765. data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Repha/value.dump +8 -0
  766. data/resources/unicode_data/properties/Indic_Syllabic_Category/Consonant_Subjoined/value.dump +11 -0
  767. data/resources/unicode_data/properties/Indic_Syllabic_Category/Modifying_Letter/value.dump +3 -0
  768. data/resources/unicode_data/properties/Indic_Syllabic_Category/Nukta/value.dump +18 -0
  769. data/resources/unicode_data/properties/Indic_Syllabic_Category/Register_Shifter/value.dump +3 -0
  770. data/resources/unicode_data/properties/Indic_Syllabic_Category/Tone_Letter/value.dump +5 -0
  771. data/resources/unicode_data/properties/Indic_Syllabic_Category/Tone_Mark/value.dump +17 -0
  772. data/resources/unicode_data/properties/Indic_Syllabic_Category/Virama/value.dump +41 -0
  773. data/resources/unicode_data/properties/Indic_Syllabic_Category/Visarga/value.dump +32 -0
  774. data/resources/unicode_data/properties/Indic_Syllabic_Category/Vowel/value.dump +6 -0
  775. data/resources/unicode_data/properties/Indic_Syllabic_Category/Vowel_Dependent/value.dump +112 -0
  776. data/resources/unicode_data/properties/Indic_Syllabic_Category/Vowel_Independent/value.dump +0 -0
  777. data/resources/unicode_data/properties/Jamo_Short_Name/A/value.dump +3 -0
  778. data/resources/unicode_data/properties/Jamo_Short_Name/AE/value.dump +3 -0
  779. data/resources/unicode_data/properties/Jamo_Short_Name/B/value.dump +4 -0
  780. data/resources/unicode_data/properties/Jamo_Short_Name/BB/value.dump +3 -0
  781. data/resources/unicode_data/properties/Jamo_Short_Name/BS/value.dump +3 -0
  782. data/resources/unicode_data/properties/Jamo_Short_Name/C/value.dump +4 -0
  783. data/resources/unicode_data/properties/Jamo_Short_Name/D/value.dump +4 -0
  784. data/resources/unicode_data/properties/Jamo_Short_Name/DD/value.dump +3 -0
  785. data/resources/unicode_data/properties/Jamo_Short_Name/E/value.dump +3 -0
  786. data/resources/unicode_data/properties/Jamo_Short_Name/EO/value.dump +3 -0
  787. data/resources/unicode_data/properties/Jamo_Short_Name/EU/value.dump +3 -0
  788. data/resources/unicode_data/properties/Jamo_Short_Name/G/value.dump +0 -0
  789. data/resources/unicode_data/properties/Jamo_Short_Name/GG/value.dump +4 -0
  790. data/resources/unicode_data/properties/Jamo_Short_Name/GS/value.dump +3 -0
  791. data/resources/unicode_data/properties/Jamo_Short_Name/H/value.dump +4 -0
  792. data/resources/unicode_data/properties/Jamo_Short_Name/I/value.dump +3 -0
  793. data/resources/unicode_data/properties/Jamo_Short_Name/J/value.dump +4 -0
  794. data/resources/unicode_data/properties/Jamo_Short_Name/JJ/value.dump +3 -0
  795. data/resources/unicode_data/properties/Jamo_Short_Name/K/value.dump +4 -0
  796. data/resources/unicode_data/properties/Jamo_Short_Name/L/value.dump +3 -0
  797. data/resources/unicode_data/properties/Jamo_Short_Name/LB/value.dump +3 -0
  798. data/resources/unicode_data/properties/Jamo_Short_Name/LG/value.dump +3 -0
  799. data/resources/unicode_data/properties/Jamo_Short_Name/LH/value.dump +3 -0
  800. data/resources/unicode_data/properties/Jamo_Short_Name/LM/value.dump +3 -0
  801. data/resources/unicode_data/properties/Jamo_Short_Name/LP/value.dump +3 -0
  802. data/resources/unicode_data/properties/Jamo_Short_Name/LS/value.dump +3 -0
  803. data/resources/unicode_data/properties/Jamo_Short_Name/LT/value.dump +3 -0
  804. data/resources/unicode_data/properties/Jamo_Short_Name/M/value.dump +4 -0
  805. data/resources/unicode_data/properties/Jamo_Short_Name/N/value.dump +4 -0
  806. data/resources/unicode_data/properties/Jamo_Short_Name/NG/value.dump +3 -0
  807. data/resources/unicode_data/properties/Jamo_Short_Name/NH/value.dump +3 -0
  808. data/resources/unicode_data/properties/Jamo_Short_Name/NJ/value.dump +3 -0
  809. data/resources/unicode_data/properties/Jamo_Short_Name/O/value.dump +3 -0
  810. data/resources/unicode_data/properties/Jamo_Short_Name/OE/value.dump +3 -0
  811. data/resources/unicode_data/properties/Jamo_Short_Name/P/value.dump +4 -0
  812. data/resources/unicode_data/properties/Jamo_Short_Name/R/value.dump +3 -0
  813. data/resources/unicode_data/properties/Jamo_Short_Name/S/value.dump +4 -0
  814. data/resources/unicode_data/properties/Jamo_Short_Name/SS/value.dump +6 -0
  815. data/resources/unicode_data/properties/Jamo_Short_Name/T/value.dump +4 -0
  816. data/resources/unicode_data/properties/Jamo_Short_Name/U/value.dump +3 -0
  817. data/resources/unicode_data/properties/Jamo_Short_Name/WA/value.dump +3 -0
  818. data/resources/unicode_data/properties/Jamo_Short_Name/WAE/value.dump +3 -0
  819. data/resources/unicode_data/properties/Jamo_Short_Name/WE/value.dump +3 -0
  820. data/resources/unicode_data/properties/Jamo_Short_Name/WEO/value.dump +3 -0
  821. data/resources/unicode_data/properties/Jamo_Short_Name/WI/value.dump +3 -0
  822. data/resources/unicode_data/properties/Jamo_Short_Name/YA/value.dump +3 -0
  823. data/resources/unicode_data/properties/Jamo_Short_Name/YAE/value.dump +3 -0
  824. data/resources/unicode_data/properties/Jamo_Short_Name/YE/value.dump +3 -0
  825. data/resources/unicode_data/properties/Jamo_Short_Name/YEO/value.dump +3 -0
  826. data/resources/unicode_data/properties/Jamo_Short_Name/YI/value.dump +3 -0
  827. data/resources/unicode_data/properties/Jamo_Short_Name/YO/value.dump +3 -0
  828. data/resources/unicode_data/properties/Jamo_Short_Name/YU/value.dump +3 -0
  829. data/resources/unicode_data/properties/Jamo_Short_Name/value.dump +3 -0
  830. data/resources/unicode_data/properties/Join_Control/value.dump +3 -0
  831. data/resources/unicode_data/properties/Line_Break/AI/value.dump +0 -0
  832. data/resources/unicode_data/properties/Line_Break/AL/value.dump +0 -0
  833. data/resources/unicode_data/properties/Line_Break/B2/value.dump +4 -0
  834. data/resources/unicode_data/properties/Line_Break/BA/value.dump +0 -0
  835. data/resources/unicode_data/properties/Line_Break/BB/value.dump +15 -0
  836. data/resources/unicode_data/properties/Line_Break/BK/value.dump +4 -0
  837. data/resources/unicode_data/properties/Line_Break/CB/value.dump +3 -0
  838. data/resources/unicode_data/properties/Line_Break/CJ/value.dump +27 -0
  839. data/resources/unicode_data/properties/Line_Break/CL/value.dump +81 -0
  840. data/resources/unicode_data/properties/Line_Break/CM/value.dump +0 -0
  841. data/resources/unicode_data/properties/Line_Break/CP/value.dump +4 -0
  842. data/resources/unicode_data/properties/Line_Break/CR/value.dump +3 -0
  843. data/resources/unicode_data/properties/Line_Break/EX/value.dump +24 -0
  844. data/resources/unicode_data/properties/Line_Break/GL/value.dump +13 -0
  845. data/resources/unicode_data/properties/Line_Break/H2/value.dump +0 -0
  846. data/resources/unicode_data/properties/Line_Break/H3/value.dump +401 -0
  847. data/resources/unicode_data/properties/Line_Break/HL/value.dump +12 -0
  848. data/resources/unicode_data/properties/Line_Break/HY/value.dump +3 -0
  849. data/resources/unicode_data/properties/Line_Break/ID/value.dump +0 -0
  850. data/resources/unicode_data/properties/Line_Break/IN/value.dump +4 -0
  851. data/resources/unicode_data/properties/Line_Break/IS/value.dump +12 -0
  852. data/resources/unicode_data/properties/Line_Break/JL/value.dump +0 -0
  853. data/resources/unicode_data/properties/Line_Break/JT/value.dump +4 -0
  854. data/resources/unicode_data/properties/Line_Break/JV/value.dump +4 -0
  855. data/resources/unicode_data/properties/Line_Break/LF/value.dump +3 -0
  856. data/resources/unicode_data/properties/Line_Break/NL/value.dump +3 -0
  857. data/resources/unicode_data/properties/Line_Break/NS/value.dump +17 -0
  858. data/resources/unicode_data/properties/Line_Break/NU/value.dump +0 -0
  859. data/resources/unicode_data/properties/Line_Break/OP/value.dump +83 -0
  860. data/resources/unicode_data/properties/Line_Break/PO/value.dump +20 -0
  861. data/resources/unicode_data/properties/Line_Break/PR/value.dump +24 -0
  862. data/resources/unicode_data/properties/Line_Break/QU/value.dump +0 -0
  863. data/resources/unicode_data/properties/Line_Break/RI/value.dump +3 -0
  864. data/resources/unicode_data/properties/Line_Break/SA/value.dump +0 -0
  865. data/resources/unicode_data/properties/Line_Break/SG/value.dump +0 -0
  866. data/resources/unicode_data/properties/Line_Break/SP/value.dump +3 -0
  867. data/resources/unicode_data/properties/Line_Break/SY/value.dump +3 -0
  868. data/resources/unicode_data/properties/Line_Break/WJ/value.dump +4 -0
  869. data/resources/unicode_data/properties/Line_Break/XX/value.dump +0 -0
  870. data/resources/unicode_data/properties/Line_Break/ZW/value.dump +3 -0
  871. data/resources/unicode_data/properties/Logical_Order_Exception/value.dump +8 -0
  872. data/resources/unicode_data/properties/Lowercase/value.dump +0 -0
  873. data/resources/unicode_data/properties/Math/value.dump +0 -0
  874. data/resources/unicode_data/properties/Noncharacter_Code_Point/value.dump +22 -0
  875. data/resources/unicode_data/properties/Numeric_Type/0/value.dump +0 -0
  876. data/resources/unicode_data/properties/Numeric_Type/1/value.dump +69 -0
  877. data/resources/unicode_data/properties/Numeric_Type/2/value.dump +68 -0
  878. data/resources/unicode_data/properties/Numeric_Type/3/value.dump +68 -0
  879. data/resources/unicode_data/properties/Numeric_Type/4/value.dump +68 -0
  880. data/resources/unicode_data/properties/Numeric_Type/5/value.dump +65 -0
  881. data/resources/unicode_data/properties/Numeric_Type/6/value.dump +65 -0
  882. data/resources/unicode_data/properties/Numeric_Type/7/value.dump +65 -0
  883. data/resources/unicode_data/properties/Numeric_Type/8/value.dump +65 -0
  884. data/resources/unicode_data/properties/Numeric_Type/9/value.dump +67 -0
  885. data/resources/unicode_data/properties/Numeric_Type/value.dump +0 -0
  886. data/resources/unicode_data/properties/Other_Alphabetic/value.dump +0 -0
  887. data/resources/unicode_data/properties/Other_Default_Ignorable_Code_Point/value.dump +0 -0
  888. data/resources/unicode_data/properties/Other_Grapheme_Extend/value.dump +19 -0
  889. data/resources/unicode_data/properties/Other_ID_Continue/value.dump +6 -0
  890. data/resources/unicode_data/properties/Other_ID_Start/value.dump +5 -0
  891. data/resources/unicode_data/properties/Other_Lowercase/value.dump +20 -0
  892. data/resources/unicode_data/properties/Other_Math/value.dump +0 -0
  893. data/resources/unicode_data/properties/Other_Uppercase/value.dump +4 -0
  894. data/resources/unicode_data/properties/Pattern_Syntax/value.dump +0 -0
  895. data/resources/unicode_data/properties/Pattern_White_Space/value.dump +8 -0
  896. data/resources/unicode_data/properties/Quotation_Mark/value.dump +14 -0
  897. data/resources/unicode_data/properties/Radical/value.dump +0 -0
  898. data/resources/unicode_data/properties/STerm/value.dump +0 -0
  899. data/resources/unicode_data/properties/Script/Arabic/value.dump +0 -0
  900. data/resources/unicode_data/properties/Script/Armenian/value.dump +8 -0
  901. data/resources/unicode_data/properties/Script/Avestan/value.dump +0 -0
  902. data/resources/unicode_data/properties/Script/Balinese/value.dump +0 -0
  903. data/resources/unicode_data/properties/Script/Bamum/value.dump +0 -0
  904. data/resources/unicode_data/properties/Script/Batak/value.dump +4 -0
  905. data/resources/unicode_data/properties/Script/Bengali/value.dump +16 -0
  906. data/resources/unicode_data/properties/Script/Bopomofo/value.dump +5 -0
  907. data/resources/unicode_data/properties/Script/Brahmi/value.dump +0 -0
  908. data/resources/unicode_data/properties/Script/Braille/value.dump +0 -0
  909. data/resources/unicode_data/properties/Script/Buginese/value.dump +0 -0
  910. data/resources/unicode_data/properties/Script/Buhid/value.dump +3 -0
  911. data/resources/unicode_data/properties/Script/Canadian_Aboriginal/value.dump +0 -0
  912. data/resources/unicode_data/properties/Script/Carian/value.dump +3 -0
  913. data/resources/unicode_data/properties/Script/Chakma/value.dump +0 -0
  914. data/resources/unicode_data/properties/Script/Cham/value.dump +0 -0
  915. data/resources/unicode_data/properties/Script/Cherokee/value.dump +3 -0
  916. data/resources/unicode_data/properties/Script/Common/value.dump +0 -0
  917. data/resources/unicode_data/properties/Script/Coptic/value.dump +5 -0
  918. data/resources/unicode_data/properties/Script/Cuneiform/value.dump +0 -0
  919. data/resources/unicode_data/properties/Script/Cypriot/value.dump +0 -0
  920. data/resources/unicode_data/properties/Script/Cyrillic/value.dump +0 -0
  921. data/resources/unicode_data/properties/Script/Deseret/value.dump +0 -0
  922. data/resources/unicode_data/properties/Script/Devanagari/value.dump +0 -0
  923. data/resources/unicode_data/properties/Script/Egyptian_Hieroglyphs/value.dump +0 -0
  924. data/resources/unicode_data/properties/Script/Ethiopic/value.dump +0 -0
  925. data/resources/unicode_data/properties/Script/Georgian/value.dump +0 -0
  926. data/resources/unicode_data/properties/Script/Glagolitic/value.dump +0 -0
  927. data/resources/unicode_data/properties/Script/Gothic/value.dump +3 -0
  928. data/resources/unicode_data/properties/Script/Greek/value.dump +0 -0
  929. data/resources/unicode_data/properties/Script/Gujarati/value.dump +40 -0
  930. data/resources/unicode_data/properties/Script/Gurmukhi/value.dump +50 -0
  931. data/resources/unicode_data/properties/Script/Han/value.dump +0 -0
  932. data/resources/unicode_data/properties/Script/Hangul/value.dump +0 -0
  933. data/resources/unicode_data/properties/Script/Hanunoo/value.dump +3 -0
  934. data/resources/unicode_data/properties/Script/Hebrew/value.dump +11 -0
  935. data/resources/unicode_data/properties/Script/Hiragana/value.dump +0 -0
  936. data/resources/unicode_data/properties/Script/Imperial_Aramaic/value.dump +4 -0
  937. data/resources/unicode_data/properties/Script/Inherited/value.dump +0 -0
  938. data/resources/unicode_data/properties/Script/Inscriptional_Pahlavi/value.dump +4 -0
  939. data/resources/unicode_data/properties/Script/Inscriptional_Parthian/value.dump +4 -0
  940. data/resources/unicode_data/properties/Script/Javanese/value.dump +5 -0
  941. data/resources/unicode_data/properties/Script/Kaithi/value.dump +3 -0
  942. data/resources/unicode_data/properties/Script/Kannada/value.dump +16 -0
  943. data/resources/unicode_data/properties/Script/Katakana/value.dump +0 -0
  944. data/resources/unicode_data/properties/Script/Kayah_Li/value.dump +0 -0
  945. data/resources/unicode_data/properties/Script/Kharoshthi/value.dump +0 -0
  946. data/resources/unicode_data/properties/Script/Khmer/value.dump +6 -0
  947. data/resources/unicode_data/properties/Script/Lao/value.dump +20 -0
  948. data/resources/unicode_data/properties/Script/Latin/value.dump +0 -0
  949. data/resources/unicode_data/properties/Script/Lepcha/value.dump +0 -0
  950. data/resources/unicode_data/properties/Script/Limbu/value.dump +0 -0
  951. data/resources/unicode_data/properties/Script/Linear_B/value.dump +0 -0
  952. data/resources/unicode_data/properties/Script/Lisu/value.dump +3 -0
  953. data/resources/unicode_data/properties/Script/Lycian/value.dump +3 -0
  954. data/resources/unicode_data/properties/Script/Lydian/value.dump +4 -0
  955. data/resources/unicode_data/properties/Script/Malayalam/value.dump +13 -0
  956. data/resources/unicode_data/properties/Script/Mandaic/value.dump +4 -0
  957. data/resources/unicode_data/properties/Script/Meetei_Mayek/value.dump +5 -0
  958. data/resources/unicode_data/properties/Script/Meroitic_Cursive/value.dump +4 -0
  959. data/resources/unicode_data/properties/Script/Meroitic_Hieroglyphs/value.dump +3 -0
  960. data/resources/unicode_data/properties/Script/Miao/value.dump +0 -0
  961. data/resources/unicode_data/properties/Script/Mongolian/value.dump +0 -0
  962. data/resources/unicode_data/properties/Script/Myanmar/value.dump +0 -0
  963. data/resources/unicode_data/properties/Script/New_Tai_Lue/value.dump +6 -0
  964. data/resources/unicode_data/properties/Script/Nko/value.dump +3 -0
  965. data/resources/unicode_data/properties/Script/Ogham/value.dump +3 -0
  966. data/resources/unicode_data/properties/Script/Ol_Chiki/value.dump +3 -0
  967. data/resources/unicode_data/properties/Script/Old_Italic/value.dump +0 -0
  968. data/resources/unicode_data/properties/Script/Old_Persian/value.dump +4 -0
  969. data/resources/unicode_data/properties/Script/Old_South_Arabian/value.dump +5 -0
  970. data/resources/unicode_data/properties/Script/Old_Turkic/value.dump +0 -0
  971. data/resources/unicode_data/properties/Script/Oriya/value.dump +16 -0
  972. data/resources/unicode_data/properties/Script/Osmanya/value.dump +4 -0
  973. data/resources/unicode_data/properties/Script/Phags_Pa/value.dump +3 -0
  974. data/resources/unicode_data/properties/Script/Phoenician/value.dump +0 -0
  975. data/resources/unicode_data/properties/Script/Rejang/value.dump +4 -0
  976. data/resources/unicode_data/properties/Script/Runic/value.dump +4 -0
  977. data/resources/unicode_data/properties/Script/Samaritan/value.dump +0 -0
  978. data/resources/unicode_data/properties/Script/Saurashtra/value.dump +4 -0
  979. data/resources/unicode_data/properties/Script/Sharada/value.dump +4 -0
  980. data/resources/unicode_data/properties/Script/Shavian/value.dump +3 -0
  981. data/resources/unicode_data/properties/Script/Sinhala/value.dump +13 -0
  982. data/resources/unicode_data/properties/Script/Sora_Sompeng/value.dump +4 -0
  983. data/resources/unicode_data/properties/Script/Sundanese/value.dump +4 -0
  984. data/resources/unicode_data/properties/Script/Syloti_Nagri/value.dump +0 -0
  985. data/resources/unicode_data/properties/Script/Syriac/value.dump +0 -0
  986. data/resources/unicode_data/properties/Script/Tagalog/value.dump +0 -0
  987. data/resources/unicode_data/properties/Script/Tagbanwa/value.dump +5 -0
  988. data/resources/unicode_data/properties/Script/Tai_Le/value.dump +4 -0
  989. data/resources/unicode_data/properties/Script/Tai_Tham/value.dump +8 -0
  990. data/resources/unicode_data/properties/Script/Tai_Viet/value.dump +4 -0
  991. data/resources/unicode_data/properties/Script/Takri/value.dump +4 -0
  992. data/resources/unicode_data/properties/Script/Tamil/value.dump +18 -0
  993. data/resources/unicode_data/properties/Script/Telugu/value.dump +16 -0
  994. data/resources/unicode_data/properties/Script/Thaana/value.dump +3 -0
  995. data/resources/unicode_data/properties/Script/Thai/value.dump +4 -0
  996. data/resources/unicode_data/properties/Script/Tibetan/value.dump +0 -0
  997. data/resources/unicode_data/properties/Script/Tifinagh/value.dump +5 -0
  998. data/resources/unicode_data/properties/Script/Ugaritic/value.dump +4 -0
  999. data/resources/unicode_data/properties/Script/Vai/value.dump +0 -0
  1000. data/resources/unicode_data/properties/Script/Yi/value.dump +0 -0
  1001. data/resources/unicode_data/properties/Script_Extensions/Arab/value.dump +11 -0
  1002. data/resources/unicode_data/properties/Script_Extensions/Armn/value.dump +3 -0
  1003. data/resources/unicode_data/properties/Script_Extensions/Beng/value.dump +3 -0
  1004. data/resources/unicode_data/properties/Script_Extensions/Bopo/value.dump +19 -0
  1005. data/resources/unicode_data/properties/Script_Extensions/Bugi/value.dump +3 -0
  1006. data/resources/unicode_data/properties/Script_Extensions/Buhd/value.dump +3 -0
  1007. data/resources/unicode_data/properties/Script_Extensions/Cakm/value.dump +4 -0
  1008. data/resources/unicode_data/properties/Script_Extensions/Cprt/value.dump +0 -0
  1009. data/resources/unicode_data/properties/Script_Extensions/Cyrl/value.dump +3 -0
  1010. data/resources/unicode_data/properties/Script_Extensions/Deva/value.dump +4 -0
  1011. data/resources/unicode_data/properties/Script_Extensions/Geor/value.dump +3 -0
  1012. data/resources/unicode_data/properties/Script_Extensions/Grek/value.dump +5 -0
  1013. data/resources/unicode_data/properties/Script_Extensions/Gujr/value.dump +3 -0
  1014. data/resources/unicode_data/properties/Script_Extensions/Guru/value.dump +4 -0
  1015. data/resources/unicode_data/properties/Script_Extensions/Hang/value.dump +18 -0
  1016. data/resources/unicode_data/properties/Script_Extensions/Hani/value.dump +21 -0
  1017. data/resources/unicode_data/properties/Script_Extensions/Hano/value.dump +3 -0
  1018. data/resources/unicode_data/properties/Script_Extensions/Hira/value.dump +24 -0
  1019. data/resources/unicode_data/properties/Script_Extensions/Java/value.dump +3 -0
  1020. data/resources/unicode_data/properties/Script_Extensions/Kana/value.dump +24 -0
  1021. data/resources/unicode_data/properties/Script_Extensions/Kthi/value.dump +3 -0
  1022. data/resources/unicode_data/properties/Script_Extensions/Latn/value.dump +5 -0
  1023. data/resources/unicode_data/properties/Script_Extensions/Linb/value.dump +0 -0
  1024. data/resources/unicode_data/properties/Script_Extensions/Mand/value.dump +3 -0
  1025. data/resources/unicode_data/properties/Script_Extensions/Mong/value.dump +4 -0
  1026. data/resources/unicode_data/properties/Script_Extensions/Mymr/value.dump +3 -0
  1027. data/resources/unicode_data/properties/Script_Extensions/Orya/value.dump +3 -0
  1028. data/resources/unicode_data/properties/Script_Extensions/Phag/value.dump +4 -0
  1029. data/resources/unicode_data/properties/Script_Extensions/Sylo/value.dump +3 -0
  1030. data/resources/unicode_data/properties/Script_Extensions/Syrc/value.dump +8 -0
  1031. data/resources/unicode_data/properties/Script_Extensions/Tagb/value.dump +3 -0
  1032. data/resources/unicode_data/properties/Script_Extensions/Takr/value.dump +3 -0
  1033. data/resources/unicode_data/properties/Script_Extensions/Tale/value.dump +3 -0
  1034. data/resources/unicode_data/properties/Script_Extensions/Tglg/value.dump +3 -0
  1035. data/resources/unicode_data/properties/Script_Extensions/Thaa/value.dump +8 -0
  1036. data/resources/unicode_data/properties/Script_Extensions/Yiii/value.dump +8 -0
  1037. data/resources/unicode_data/properties/Sentence_Break/ATerm/value.dump +6 -0
  1038. data/resources/unicode_data/properties/Sentence_Break/CR/value.dump +3 -0
  1039. data/resources/unicode_data/properties/Sentence_Break/Close/value.dump +0 -0
  1040. data/resources/unicode_data/properties/Sentence_Break/Extend/value.dump +0 -0
  1041. data/resources/unicode_data/properties/Sentence_Break/Format/value.dump +0 -0
  1042. data/resources/unicode_data/properties/Sentence_Break/LF/value.dump +3 -0
  1043. data/resources/unicode_data/properties/Sentence_Break/Lower/value.dump +0 -0
  1044. data/resources/unicode_data/properties/Sentence_Break/Numeric/value.dump +0 -0
  1045. data/resources/unicode_data/properties/Sentence_Break/OLetter/value.dump +0 -0
  1046. data/resources/unicode_data/properties/Sentence_Break/SContinue/value.dump +21 -0
  1047. data/resources/unicode_data/properties/Sentence_Break/STerm/value.dump +0 -0
  1048. data/resources/unicode_data/properties/Sentence_Break/Sep/value.dump +4 -0
  1049. data/resources/unicode_data/properties/Sentence_Break/Sp/value.dump +0 -0
  1050. data/resources/unicode_data/properties/Sentence_Break/Upper/value.dump +0 -0
  1051. data/resources/unicode_data/properties/Soft_Dotted/value.dump +33 -0
  1052. data/resources/unicode_data/properties/Terminal_Punctuation/value.dump +0 -0
  1053. data/resources/unicode_data/properties/Unified_Ideograph/value.dump +0 -0
  1054. data/resources/unicode_data/properties/Uppercase/value.dump +0 -0
  1055. data/resources/unicode_data/properties/Variation_Selector/value.dump +0 -0
  1056. data/resources/unicode_data/properties/White_Space/value.dump +0 -0
  1057. data/resources/unicode_data/properties/Word_Break/ALetter/value.dump +0 -0
  1058. data/resources/unicode_data/properties/Word_Break/CR/value.dump +3 -0
  1059. data/resources/unicode_data/properties/Word_Break/Double_Quote/value.dump +3 -0
  1060. data/resources/unicode_data/properties/Word_Break/Extend/value.dump +0 -0
  1061. data/resources/unicode_data/properties/Word_Break/ExtendNumLet/value.dump +8 -0
  1062. data/resources/unicode_data/properties/Word_Break/Format/value.dump +0 -0
  1063. data/resources/unicode_data/properties/Word_Break/Hebrew_Letter/value.dump +12 -0
  1064. data/resources/unicode_data/properties/Word_Break/Katakana/value.dump +0 -0
  1065. data/resources/unicode_data/properties/Word_Break/LF/value.dump +3 -0
  1066. data/resources/unicode_data/properties/Word_Break/MidLetter/value.dump +10 -0
  1067. data/resources/unicode_data/properties/Word_Break/MidNum/value.dump +16 -0
  1068. data/resources/unicode_data/properties/Word_Break/MidNumLet/value.dump +9 -0
  1069. data/resources/unicode_data/properties/Word_Break/Newline/value.dump +5 -0
  1070. data/resources/unicode_data/properties/Word_Break/Numeric/value.dump +0 -0
  1071. data/resources/unicode_data/properties/Word_Break/Regional_Indicator/value.dump +3 -0
  1072. data/resources/unicode_data/properties/Word_Break/Single_Quote/value.dump +3 -0
  1073. data/resources/unicode_data/properties/XID_Continue/value.dump +0 -0
  1074. data/resources/unicode_data/properties/XID_Start/value.dump +0 -0
  1075. data/resources/unicode_data/property_aliases.yml +350 -0
  1076. data/resources/unicode_data/property_value_aliases.yml +1829 -0
  1077. data/spec/bidi/bidi_spec.rb +2 -2
  1078. data/spec/collation/collation_spec.rb +1 -1
  1079. data/spec/collation/collator_spec.rb +6 -6
  1080. data/spec/collation/sort_key_builder_spec.rb +11 -11
  1081. data/spec/collation/tailoring_spec.rb +1 -1
  1082. data/spec/collation/trie_dumps_spec.rb +1 -1
  1083. data/spec/data_readers/date_time_data_reader_spec.rb +1 -1
  1084. data/spec/data_readers/number_data_reader_spec.rb +19 -6
  1085. data/spec/formatters/calendars/datetime_formatter_spec.rb +1 -1
  1086. data/spec/formatters/numbers/abbreviated/abbreviated_number_formatter_spec.rb +1 -1
  1087. data/spec/formatters/numbers/abbreviated/long_decimal_formatter_spec.rb +5 -5
  1088. data/spec/formatters/numbers/abbreviated/short_decimal_formatter_spec.rb +4 -4
  1089. data/spec/formatters/numbers/currency_formatter_spec.rb +10 -10
  1090. data/spec/formatters/numbers/decimal_formatter_spec.rb +2 -2
  1091. data/spec/formatters/numbers/helpers/fraction_spec.rb +4 -4
  1092. data/spec/formatters/numbers/helpers/integer_spec.rb +21 -16
  1093. data/spec/formatters/numbers/number_formatter_spec.rb +9 -9
  1094. data/spec/formatters/numbers/percent_formatter_spec.rb +2 -2
  1095. data/spec/formatters/numbers/rbnf/rbnf_spec.rb +5 -5
  1096. data/spec/formatters/plurals/plural_formatter_spec.rb +25 -25
  1097. data/spec/formatters/plurals/rules_spec.rb +4 -4
  1098. data/spec/localized/localized_date_spec.rb +25 -25
  1099. data/spec/localized/localized_datetime_spec.rb +7 -7
  1100. data/spec/localized/localized_hash_spec.rb +1 -1
  1101. data/spec/localized/localized_number_spec.rb +23 -23
  1102. data/spec/localized/localized_object_spec.rb +2 -2
  1103. data/spec/localized/localized_string_spec.rb +43 -16
  1104. data/spec/localized/localized_symbol_spec.rb +31 -4
  1105. data/spec/localized/localized_time_spec.rb +3 -3
  1106. data/spec/localized/localized_timespan_spec.rb +42 -42
  1107. data/spec/normalization_spec.rb +4 -4
  1108. data/spec/parsers/number_parser_spec.rb +10 -10
  1109. data/spec/parsers/parser_spec.rb +19 -3
  1110. data/spec/parsers/symbol_table_spec.rb +1 -1
  1111. data/spec/parsers/unicode_regex/character_class_spec.rb +12 -0
  1112. data/spec/parsers/unicode_regex/character_range_spec.rb +24 -5
  1113. data/spec/parsers/unicode_regex/character_set_spec.rb +9 -1
  1114. data/spec/parsers/unicode_regex_parser_spec.rb +1 -1
  1115. data/spec/resources/loader_spec.rb +6 -6
  1116. data/spec/{shared → segmentation}/break_iterator_spec.rb +45 -16
  1117. data/spec/segmentation/parser_spec.rb +107 -0
  1118. data/spec/segmentation/rule_set_spec.rb +102 -0
  1119. data/spec/shared/calendar_spec.rb +30 -30
  1120. data/spec/shared/caser_spec.rb +79 -0
  1121. data/spec/shared/code_point_spec.rb +52 -151
  1122. data/spec/shared/currencies_spec.rb +8 -8
  1123. data/spec/shared/language_codes_spec.rb +13 -13
  1124. data/spec/shared/likely_subtags_spec.rb +58 -0
  1125. data/spec/shared/locale_spec.rb +211 -0
  1126. data/spec/shared/numbers_spec.rb +4 -4
  1127. data/spec/shared/postal_codes_spec.rb +24 -4
  1128. data/spec/shared/properties_database_spec.rb +157 -0
  1129. data/spec/shared/property_name_aliases_spec.rb +56 -0
  1130. data/spec/shared/property_normalizer_spec.rb +64 -0
  1131. data/spec/shared/property_set_spec.rb +218 -0
  1132. data/spec/shared/property_value_aliases_spec.rb +58 -0
  1133. data/spec/shared/territories_spec.rb +1 -1
  1134. data/spec/shared/unicode_regex_spec.rb +35 -2
  1135. data/spec/spec_helper.rb +3 -3
  1136. data/spec/tokenizers/calendars/date_tokenizer_spec.rb +23 -23
  1137. data/spec/tokenizers/calendars/datetime_tokenizer_spec.rb +18 -18
  1138. data/spec/tokenizers/calendars/time_tokenizer_spec.rb +19 -19
  1139. data/spec/tokenizers/composite_token_spec.rb +4 -4
  1140. data/spec/tokenizers/numbers/number_tokenizer_spec.rb +16 -16
  1141. data/spec/tokenizers/token_spec.rb +2 -2
  1142. data/spec/tokenizers/unicode_regex/unicode_regex_tokenizer_spec.rb +94 -94
  1143. data/spec/utils/file_system_trie_spec.rb +98 -0
  1144. data/spec/utils/range_set_spec.rb +53 -1
  1145. data/spec/utils/script_detector_spec.rb +58 -0
  1146. data/spec/utils/yaml/yaml_spec.rb +22 -22
  1147. data/spec/utils_spec.rb +21 -21
  1148. metadata +832 -28
  1149. data/lib/twitter_cldr/parsers/segmentation_parser.rb +0 -137
  1150. data/lib/twitter_cldr/resources/canonical_compositions_updater.rb +0 -51
  1151. data/lib/twitter_cldr/resources/composition_exclusions_importer.rb +0 -62
  1152. data/lib/twitter_cldr/resources/normalization_quick_check_importer.rb +0 -73
  1153. data/lib/twitter_cldr/resources/unicode_properties_importer.rb +0 -79
  1154. data/lib/twitter_cldr/shared/break_iterator.rb +0 -213
  1155. data/lib/twitter_cldr/tokenizers/segmentation/segmentation_tokenizer.rb +0 -39
  1156. data/resources/shared/segments/tailorings/en.yml +0 -8
  1157. data/resources/unicode_data/canonical_compositions.yml +0 -4925
  1158. data/resources/unicode_data/composition_exclusions.yml +0 -297
  1159. data/resources/unicode_data/hangul_blocks.yml +0 -21
  1160. data/resources/unicode_data/indices/bidi_class.yml +0 -4572
  1161. data/resources/unicode_data/indices/bidi_mirrored.yml +0 -3087
  1162. data/resources/unicode_data/indices/category.yml +0 -10918
  1163. data/resources/unicode_data/indices/keys.yml +0 -101
  1164. data/resources/unicode_data/nfc_quick_check.yml +0 -293
  1165. data/resources/unicode_data/nfd_quick_check.yml +0 -909
  1166. data/resources/unicode_data/nfkc_quick_check.yml +0 -989
  1167. data/resources/unicode_data/nfkd_quick_check.yml +0 -1537
  1168. data/resources/unicode_data/properties/line_break.yml +0 -9269
  1169. data/resources/unicode_data/properties/sentence_break.yml +0 -8067
  1170. data/resources/unicode_data/properties/word_break.yml +0 -3001
  1171. data/spec/parsers/segmentation_parser_spec.rb +0 -100
  1172. data/spec/tokenizers/segmentation/segmentation_tokenizer_spec.rb +0 -40
@@ -78,13 +78,33 @@ describe PostalCodes do
78
78
  postal_code = PostalCodes.for_territory(territory)
79
79
 
80
80
  it "returns samples that match #{territory}" do
81
- postal_code.sample(10).each do |sample|
82
- result = postal_code.valid?(sample)
83
- puts "Failed with example #{sample}" unless result
84
- result.should be_true
81
+ if postal_code.has_generator?
82
+ postal_code.sample(10).each do |sample|
83
+ result = postal_code.valid?(sample)
84
+ puts "Failed with example #{sample}" unless result
85
+ result.should be_true
86
+ end
85
87
  end
86
88
  end
87
89
  end
88
90
  end
89
91
  end
92
+
93
+ context 'with a postal code that has no AST' do
94
+ let(:postal_code) { PostalCodes.new(:xx, /\d{5}/, nil) }
95
+
96
+ describe '#sample' do
97
+ it 'raises an exception' do
98
+ expect { postal_code.sample }.to raise_error(
99
+ MissingPostcodeGeneratorError
100
+ )
101
+ end
102
+ end
103
+
104
+ describe '#has_generator?' do
105
+ it 'returns false' do
106
+ expect(postal_code).to_not have_generator
107
+ end
108
+ end
109
+ end
90
110
  end
@@ -0,0 +1,157 @@
1
+ # encoding: UTF-8
2
+
3
+ # Copyright 2012 Twitter, Inc
4
+ # http://www.apache.org/licenses/LICENSE-2.0
5
+
6
+ require 'spec_helper'
7
+
8
+ require 'fileutils'
9
+ require 'securerandom'
10
+ require 'tmpdir'
11
+
12
+ include TwitterCldr::Shared
13
+ include TwitterCldr::Utils
14
+
15
+ describe PropertiesDatabase do
16
+ context 'with an empty database' do
17
+ let(:tmp_dir) do
18
+ File.join(Dir.tmpdir, SecureRandom.hex)
19
+ end
20
+
21
+ let(:database) { PropertiesDatabase.new(tmp_dir) }
22
+
23
+ before(:each) do
24
+ FileUtils.mkdir_p(tmp_dir)
25
+ end
26
+
27
+ after(:each) do
28
+ FileUtils.rm_rf(tmp_dir)
29
+ end
30
+
31
+ describe '#store' do
32
+ it 'associates the code points with the property name/value' do
33
+ database.store('foo', 'bar', RangeSet.new([1..4]))
34
+ result = database.code_points_for_property('foo', 'bar')
35
+ expect(result).to be_a(RangeSet)
36
+ expect(result.to_a).to eq([1..4])
37
+ end
38
+ end
39
+ end
40
+
41
+ context 'with a full database of properties' do
42
+ let(:database) { PropertiesDatabase.new }
43
+
44
+ describe '#code_points_for_property' do
45
+ it 'retrieves code points for the property name' do
46
+ code_points = database.code_points_for_property('Math')
47
+ [126, 172, 215, 1014, 9168, 10176].each do |cp|
48
+ expect(code_points).to include(cp)
49
+ end
50
+ end
51
+
52
+ it 'retrieves code points for the property name/value pair' do
53
+ code_points = database.code_points_for_property('Age', '1.1')
54
+ [501, 736, 890, 990, 1118, 1227, 1632].each do |cp|
55
+ expect(code_points).to include(cp)
56
+ end
57
+ end
58
+
59
+ it "returns an empty range set if the property name can't be found" do
60
+ code_points = database.code_points_for_property('foo')
61
+ expect(code_points.to_a).to eq([])
62
+ end
63
+
64
+ it "returns an empty range set if the property name/value pair can't be found" do
65
+ code_points = database.code_points_for_property('Age', 'foo')
66
+ expect(code_points.to_a).to eq([])
67
+ end
68
+ end
69
+
70
+ describe '#include?' do
71
+ it 'returns true if the database contains the property name' do
72
+ expect(database.include?('Age')).to be_true
73
+ end
74
+
75
+ it 'returns true if the database contains the property name/value pair' do
76
+ expect(database.include?('Age', '1.1')).to be_true
77
+ end
78
+
79
+ it "returns false if the database doesn't contain the property name" do
80
+ expect(database.include?('foo')).to be_false
81
+ end
82
+
83
+ it "returns false if the database doesn't contain the property name/value pair" do
84
+ expect(database.include?('Age', 'foo')).to be_false
85
+ end
86
+ end
87
+
88
+ describe '#properties_for_code_point' do
89
+ it 'returns a property set for the given code point' do
90
+ property_set = database.properties_for_code_point(65)
91
+ expect(property_set).to be_a(PropertySet)
92
+ expect(property_set.general_category).to eq(Set.new(%w(L Lu)))
93
+ expect(property_set.word_break).to eq(Set.new(%w(ALetter)))
94
+ end
95
+ end
96
+
97
+ describe '#property_names' do
98
+ it 'returns a list of all valid property names' do
99
+ %w(Radical Script Hex_Digit Diacritic).each do |property_name|
100
+ expect(database.property_names).to include(property_name)
101
+ end
102
+ end
103
+ end
104
+
105
+ describe '#property_values_for' do
106
+ it 'returns a list of all valid values for a property name' do
107
+ values = database.property_values_for('Script')
108
+ %w(Cyrillic Latin Hangul Han Bengali Tagalog Yi).each do |script|
109
+ expect(values).to include(script)
110
+ end
111
+ end
112
+
113
+ it 'correctly expands value prefixes for General_Category' do
114
+ values = database.property_values_for('General_Category')
115
+ expect(values).to include('Cc')
116
+ expect(values).to include('C')
117
+
118
+ expect(values).to include('Lo')
119
+ expect(values).to include('L')
120
+
121
+ expect(values).to include('Pd')
122
+ expect(values).to include('P')
123
+
124
+ expect(values).to include('Sm')
125
+ expect(values).to include('S')
126
+ end
127
+ end
128
+
129
+ describe '#each_property_pair' do
130
+ it 'yields each property name/value pair' do
131
+ pairs = database.each_property_pair.to_a
132
+
133
+ expected_pairs = [
134
+ %w(Script Thai), ['Radical', nil],
135
+ ['Math', nil], %w(Line_Break HY),
136
+ %w(Jamo_Short_Name EU), ['Hyphen', nil]
137
+ ]
138
+
139
+ expected_pairs.each do |expected_pair|
140
+ expect(pairs).to include(expected_pair)
141
+ end
142
+ end
143
+ end
144
+
145
+ describe '#normalize' do
146
+ let(:property_name) { 'foo' }
147
+ let(:property_value) { 'bar' }
148
+
149
+ it 'delegates normalization to a normalizer' do
150
+ normalizer = Object.new
151
+ stub(database).normalizer { normalizer }
152
+ mock(normalizer).normalize(property_name, property_value)
153
+ database.normalize(property_name, property_value)
154
+ end
155
+ end
156
+ end
157
+ end
@@ -0,0 +1,56 @@
1
+ # encoding: UTF-8
2
+
3
+ # Copyright 2012 Twitter, Inc
4
+ # http://www.apache.org/licenses/LICENSE-2.0
5
+
6
+ require 'spec_helper'
7
+
8
+ include TwitterCldr::Shared
9
+
10
+ describe PropertyNameAliases do
11
+ let(:alias_class) { PropertyNameAliases }
12
+
13
+ describe '#abbreviated_alias_for' do
14
+ it 'finds the abbreviated alias for a long property name' do
15
+ expect(alias_class.abbreviated_alias_for('Script')).to eq('sc')
16
+ expect(alias_class.abbreviated_alias_for('Age')).to eq('age')
17
+ expect(alias_class.abbreviated_alias_for('Uppercase_Mapping')).to eq('uc')
18
+ end
19
+
20
+ it 'returns nil if no alias can be found' do
21
+ expect(alias_class.abbreviated_alias_for('foo')).to be_nil
22
+ end
23
+ end
24
+
25
+ describe '#long_alias_for' do
26
+ it 'finds the long alias for an abbreviated property name' do
27
+ expect(alias_class.long_alias_for('sc')).to eq('Script')
28
+ expect(alias_class.long_alias_for('age')).to eq('Age')
29
+ expect(alias_class.long_alias_for('uc')).to eq('Uppercase_Mapping')
30
+ end
31
+
32
+ it 'returns nil if no alias can be found' do
33
+ expect(alias_class.long_alias_for('foo')).to be_nil
34
+ end
35
+ end
36
+
37
+ describe '#aliases_for' do
38
+ examples = {
39
+ 'cjkRSUnicode' => %w(kRSUnicode Unicode_Radical_Stroke URS),
40
+ 'WSpace' => %w(White_Space space),
41
+ 'scf' => %w(Simple_Case_Folding sfc),
42
+ 'IDS' => %w(ID_Start)
43
+ }
44
+
45
+ examples.each_pair do |property_name, aliases|
46
+ it "finds all the known aliases for the #{property_name} property name" do
47
+ found = alias_class.aliases_for(property_name)
48
+ expect(found).to match_array(aliases)
49
+ end
50
+ end
51
+
52
+ it 'returns an empty array if no aliases are found' do
53
+ expect(alias_class.aliases_for('foo')).to eq([])
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,64 @@
1
+ # encoding: UTF-8
2
+
3
+ # Copyright 2012 Twitter, Inc
4
+ # http://www.apache.org/licenses/LICENSE-2.0
5
+
6
+ require 'spec_helper'
7
+
8
+ include TwitterCldr::Shared
9
+
10
+ describe PropertyNormalizer do
11
+ let(:database) { PropertiesDatabase.new }
12
+ let(:normalizer) { PropertyNormalizer.new(database) }
13
+
14
+ describe '#normalize' do
15
+ it 'correctly normalizes just property names' do
16
+ name, value = normalizer.normalize('IDS')
17
+ expect(name).to eq('ID_Start')
18
+ expect(value).to be_nil
19
+ end
20
+
21
+ it 'correctly normalizes property names and values' do
22
+ %w(age Age).each do |name|
23
+ %w(1.1 V1_1).each do |value|
24
+ cur_name, cur_value = normalizer.normalize(name, value)
25
+ expect(cur_name).to eq('Age')
26
+ expect(cur_value).to eq('1.1')
27
+ end
28
+ end
29
+ end
30
+
31
+ it 'correctly normalizes properties that support numeric values' do
32
+ %w(ccc Canonical_Combining_Class).each do |name|
33
+ %w(0 NR Not_Reordered).each do |value|
34
+ cur_name, cur_value = normalizer.normalize(name, value)
35
+ expect(cur_name).to eq('Canonical_Combining_Class')
36
+ expect(cur_value).to eq('0')
37
+ end
38
+ end
39
+ end
40
+
41
+ it "returns a blank property when the name and value can't be found" do
42
+ name, value = normalizer.normalize('foo', 'bar')
43
+ expect(name).to be_nil
44
+ expect(value).to be_nil
45
+ end
46
+
47
+ it 'handles valid name but invalid value' do
48
+ name, value = normalizer.normalize('ideographic', 'ideographic')
49
+ expect(name).to be_nil
50
+ expect(value).to be_nil
51
+ end
52
+
53
+ it 'fixes casing of property names' do
54
+ name, value = normalizer.normalize('ideographic')
55
+ expect(name).to eq('Ideographic')
56
+ end
57
+
58
+ it 'fixes casing of property names and values' do
59
+ name, value = normalizer.normalize('sc', 'han')
60
+ expect(name).to eq('Script')
61
+ expect(value).to eq('Han')
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,218 @@
1
+ # encoding: UTF-8
2
+
3
+ # Copyright 2012 Twitter, Inc
4
+ # http://www.apache.org/licenses/LICENSE-2.0
5
+
6
+ require 'spec_helper'
7
+
8
+ include TwitterCldr::Shared
9
+
10
+ describe PropertySet do
11
+ let(:properties_hash) { {} }
12
+ let(:property_set) { PropertySet.new(properties_hash) }
13
+
14
+ describe '#age' do
15
+ it 'defaults to "Unassigned"' do
16
+ expect(property_set.age).to eq(['Unassigned'])
17
+ end
18
+
19
+ it 'returns the age when one is supplied' do
20
+ properties_hash.merge!('Age' => ['foo'])
21
+ expect(property_set.age).to eq(['foo'])
22
+ end
23
+ end
24
+
25
+ describe '#joining_type' do
26
+ it 'defaults to "Non_Joining"' do
27
+ expect(property_set.joining_type).to eq(['Non_Joining'])
28
+ end
29
+
30
+ it 'defaults to the joining type that corresponds to the general category (if set)' do
31
+ properties_hash.merge!('General_Category' => ['Mn'])
32
+ expect(property_set.joining_type).to eq(['Transparent'])
33
+ end
34
+
35
+ it 'returns the joining type when one is supplied' do
36
+ properties_hash.merge!('Joining_Type' => ['foo'])
37
+ expect(property_set.joining_type).to eq(['foo'])
38
+ end
39
+ end
40
+
41
+ describe '#bidi_paired_bracket_type' do
42
+ it 'defaults to "None"' do
43
+ expect(property_set.bidi_paired_bracket_type).to eq(['None'])
44
+ end
45
+
46
+ it 'returns the bracket type when one is supplied' do
47
+ properties_hash.merge!('Bidi_Paired_Bracket_Type' => ['foo'])
48
+ expect(property_set.bidi_paired_bracket_type).to eq(['foo'])
49
+ end
50
+ end
51
+
52
+ describe '#block' do
53
+ it 'defaults to "No_Block"' do
54
+ expect(property_set.block).to eq(['No_Block'])
55
+ end
56
+
57
+ it 'returns the block when one is supplied' do
58
+ properties_hash.merge!('Block' => ['foo'])
59
+ expect(property_set.block).to eq(['foo'])
60
+ end
61
+ end
62
+
63
+ describe '#east_asian_width' do
64
+ it 'defaults to "N"' do
65
+ expect(property_set.east_asian_width).to eq(['N'])
66
+ end
67
+
68
+ it 'returns the width when one is supplied' do
69
+ properties_hash.merge!('East_Asian_Width' => ['foo'])
70
+ expect(property_set.east_asian_width).to eq(['foo'])
71
+ end
72
+ end
73
+
74
+ describe '#grapheme_cluster_break' do
75
+ it 'defaults to "Other"' do
76
+ expect(property_set.grapheme_cluster_break).to eq(['Other'])
77
+ end
78
+
79
+ it 'returns the break when one is supplied' do
80
+ properties_hash.merge!('Grapheme_Cluster_Break' => ['foo'])
81
+ expect(property_set.grapheme_cluster_break).to eq(['foo'])
82
+ end
83
+ end
84
+
85
+ describe '#hangul_syllable_type' do
86
+ it 'defaults to "Not_Applicable"' do
87
+ expect(property_set.hangul_syllable_type).to eq(['Not_Applicable'])
88
+ end
89
+
90
+ it 'returns the syllable type when one is supplied' do
91
+ properties_hash.merge!('Hangul_Syllable_Type' => ['foo'])
92
+ expect(property_set.hangul_syllable_type).to eq(['foo'])
93
+ end
94
+ end
95
+
96
+ describe '#indic_positional_category' do
97
+ it 'defaults to "NA"' do
98
+ expect(property_set.indic_positional_category).to eq(['NA'])
99
+ end
100
+
101
+ it 'returns the positional category if one is supplied' do
102
+ properties_hash.merge!('Indic_Positional_Category' => ['foo'])
103
+ expect(property_set.indic_positional_category).to eq(['foo'])
104
+ end
105
+ end
106
+
107
+ describe '#indic_syllabic_category' do
108
+ it 'defaults to "Other"' do
109
+ expect(property_set.indic_syllabic_category).to eq(['Other'])
110
+ end
111
+
112
+ it 'returns the syllabic category if one is supplied' do
113
+ properties_hash.merge!('Indic_Syllabic_Category' => ['foo'])
114
+ expect(property_set.indic_syllabic_category).to eq(['foo'])
115
+ end
116
+ end
117
+
118
+ describe '#jamo_short_name' do
119
+ it 'defaults to "<none>"' do
120
+ expect(property_set.jamo_short_name).to eq(['<none>'])
121
+ end
122
+
123
+ it 'returns the short name if one is supplied' do
124
+ properties_hash.merge!('Jamo_Short_Name' => ['foo'])
125
+ expect(property_set.jamo_short_name).to eq(['foo'])
126
+ end
127
+ end
128
+
129
+ describe '#line_break' do
130
+ it 'defaults to XX' do
131
+ expect(property_set.line_break).to eq(['XX'])
132
+ end
133
+
134
+ it 'returns the line break category if one is supplied' do
135
+ properties_hash.merge!('Line_Break' => ['foo'])
136
+ expect(property_set.line_break).to eq(['foo'])
137
+ end
138
+ end
139
+
140
+ describe '#general_category' do
141
+ it 'defaults to nil' do
142
+ expect(property_set.general_category).to eq([])
143
+ end
144
+
145
+ it 'returns the general category if one is supplied' do
146
+ properties_hash.merge!('General_Category' => ['foo'])
147
+ expect(property_set.general_category).to eq(['foo'])
148
+ end
149
+ end
150
+
151
+ describe '#script_extensions' do
152
+ it 'defaults to "<script>"' do
153
+ expect(property_set.script_extensions).to eq(['<script>'])
154
+ end
155
+
156
+ it 'returns the script extension if one is supplied' do
157
+ properties_hash.merge!('Script_Extensions' => ['foo'])
158
+ expect(property_set.script_extensions).to eq(['foo'])
159
+ end
160
+ end
161
+
162
+ describe '#script' do
163
+ it 'defaults to "Unknown"' do
164
+ expect(property_set.script).to eq(['Unknown'])
165
+ end
166
+
167
+ it 'returns the script if one is supplied' do
168
+ properties_hash.merge!('Script' => ['foo'])
169
+ expect(property_set.script).to eq(['foo'])
170
+ end
171
+ end
172
+
173
+ describe '#sentence_break' do
174
+ it 'defaults to "Other"' do
175
+ expect(property_set.sentence_break).to eq(['Other'])
176
+ end
177
+
178
+ it 'returns the sentence break category if one is supplied' do
179
+ properties_hash.merge!('Sentence_Break' => ['foo'])
180
+ expect(property_set.sentence_break).to eq(['foo'])
181
+ end
182
+ end
183
+
184
+ describe '#word_break' do
185
+ it 'defaults to "Other"' do
186
+ expect(property_set.word_break).to eq(['Other'])
187
+ end
188
+
189
+ it 'returns the word break category if one is supplied' do
190
+ properties_hash.merge!('Word_Break' => ['foo'])
191
+ expect(property_set.word_break).to eq(['foo'])
192
+ end
193
+ end
194
+
195
+ describe 'properties without defaults' do
196
+ CodePoint.properties.property_names.each do |property_name|
197
+ method_name = property_name.downcase
198
+
199
+ if PropertySet::AdditionalPropertyMethods.method_defined?(method_name)
200
+ describe "##{method_name}" do
201
+ it 'returns true if the property has been set but has no value' do
202
+ properties_hash.merge!(property_name => nil)
203
+ expect(property_set.send(method_name)).to eq(true)
204
+ end
205
+
206
+ it 'returns false if the property has not been set' do
207
+ expect(property_set.send(method_name)).to eq(false)
208
+ end
209
+
210
+ it 'returns the property value if it has been set' do
211
+ properties_hash.merge!(property_name => ['foo'])
212
+ expect(property_set.send(method_name)).to eq(['foo'])
213
+ end
214
+ end
215
+ end
216
+ end
217
+ end
218
+ end
@@ -0,0 +1,58 @@
1
+ # encoding: UTF-8
2
+
3
+ # Copyright 2012 Twitter, Inc
4
+ # http://www.apache.org/licenses/LICENSE-2.0
5
+
6
+ require 'spec_helper'
7
+
8
+ include TwitterCldr::Shared
9
+
10
+ describe PropertyValueAliases do
11
+ let(:alias_class) { PropertyValueAliases }
12
+
13
+ describe '#abbreviated_alias_for' do
14
+ it 'finds the abbreviated alias for a long property value' do
15
+ expect(alias_class.abbreviated_alias_for('AHex', 'No')).to eq('N')
16
+ expect(alias_class.abbreviated_alias_for('AHex', 'Yes')).to eq('Y')
17
+
18
+ expect(alias_class.abbreviated_alias_for('dt', 'Canonical')).to eq('Can')
19
+ expect(alias_class.abbreviated_alias_for('dt', 'Circle')).to eq('Enc')
20
+ expect(alias_class.abbreviated_alias_for('dt', 'Final')).to eq('Fin')
21
+ end
22
+
23
+ it 'returns nil if no alias can be found' do
24
+ expect(alias_class.abbreviated_alias_for('AHex', 'foo')).to be_nil
25
+ end
26
+ end
27
+
28
+ describe '#long_alias_for' do
29
+ it 'finds the long alias for an abbreviated property value' do
30
+ expect(alias_class.long_alias_for('AHex', 'N')).to eq('No')
31
+ expect(alias_class.long_alias_for('AHex', 'Y')).to eq('Yes')
32
+
33
+ expect(alias_class.long_alias_for('dt', 'Can')).to eq('Canonical')
34
+ expect(alias_class.long_alias_for('dt', 'Enc')).to eq('Circle')
35
+ expect(alias_class.long_alias_for('dt', 'Fin')).to eq('Final')
36
+ end
37
+
38
+ it 'returns nil if no alias can be found' do
39
+ expect(alias_class.long_alias_for('AHex', 'foo')).to be_nil
40
+ end
41
+ end
42
+
43
+ describe '#numeric_alias_for' do
44
+ it 'finds the numeric alias (if one exists) for a long or abbreviated property value' do
45
+ %w(0 NR Not_Reordered).each do |value|
46
+ expect(alias_class.numeric_alias_for('ccc', value)).to eq('0')
47
+ end
48
+ end
49
+ end
50
+
51
+ describe '#aliases_for' do
52
+ it 'compiles a list of value aliases for the given property name' do
53
+ expect(alias_class.aliases_for('ccc', 'NR')).to match_array(%w(0 Not_Reordered))
54
+ expect(alias_class.aliases_for('ccc', 'Not_Reordered')).to match_array(%w(0 NR))
55
+ expect(alias_class.aliases_for('ccc', '0')).to match_array(%w(NR Not_Reordered))
56
+ end
57
+ end
58
+ end
@@ -121,7 +121,7 @@ describe Territories do
121
121
  { "is" => [ { "US" => "United States",
122
122
  5 => "Suður-Ameríka" },
123
123
  { "009" => "Eyjaálfa" } ] }
124
- ).should == { :is => [ { :us => "United States" }, { } ] }
124
+ ).should == { is: [ { us: "United States" }, { } ] }
125
125
  end
126
126
 
127
127
  end
@@ -60,6 +60,18 @@ describe UnicodeRegex do
60
60
  "(?:[\\u{0067}-\\u{006b}])(?:[\\u{0070}-\\u{0073}])"
61
61
  )
62
62
  end
63
+
64
+ it "supports modifiers" do
65
+ regex = UnicodeRegex.compile('abc', 'm').to_regexp
66
+ expect(regex.options).to eq(Regexp::MULTILINE)
67
+ end
68
+
69
+ it "supports multiple modifiers at once" do
70
+ regex = UnicodeRegex.compile('abc', 'mi').to_regexp
71
+ expect(regex.options).to eq(
72
+ Regexp::MULTILINE | Regexp::IGNORECASE
73
+ )
74
+ end
63
75
  end
64
76
  end
65
77
 
@@ -160,6 +172,20 @@ describe UnicodeRegex do
160
172
  expect(regex).not_to exactly_match("a")
161
173
  end
162
174
 
175
+ it "should match a regex containing a unioned character set" do
176
+ regex = compile("[[:L:][:White_Space:]]*")
177
+ expect(regex).to exactly_match("abc")
178
+ expect(regex).to exactly_match("くøß")
179
+ expect("a b c _ d".gsub(regex.to_regexp, "")).to eq("_")
180
+ end
181
+
182
+ it "should match a regex containing a negated unioned character set" do
183
+ regex = compile("[^[:L:][:White_Space:]]*")
184
+ expect(regex).to exactly_match(".,/")
185
+ expect(regex).to_not exactly_match("a b c")
186
+ expect("a b c _ d".gsub(regex.to_regexp, "")).to eq("a b c d")
187
+ end
188
+
163
189
  it "should match a regex containing a negated character set (alternate syntax)" do
164
190
  regex = compile("[[:^Zs:]]")
165
191
  expect(regex).to exactly_match("a")
@@ -192,12 +218,19 @@ describe UnicodeRegex do
192
218
  end
193
219
 
194
220
  it "should match a regex with a complicated expression inside the char class" do
195
- # not [separators U space-tilde] diff [letters diff numbers] (diff is commutative)
196
- regex = compile("[^[\\p{Z}\\u0020-\\u007f]-[\\p{L}]-[\\p{N}]]")
221
+ # [separators U space-tilde] diff [letters diff numbers] (diff is commutative)
222
+ regex = compile("[[\\p{Z}\\u0020-\\u007f]-[\\p{L}]-[\\p{N}]]")
197
223
  expect(regex).to exactly_match(" ")
198
224
  expect(regex).to exactly_match(",")
199
225
  expect(regex).not_to exactly_match("a")
200
226
  end
227
+
228
+ it "should treat a dash that is the first character of a character class as a literal dash instead of a range" do
229
+ regex = compile("[-abc]*")
230
+ expect(regex).to exactly_match("a-b-c")
231
+ expect(regex).to exactly_match("--a")
232
+ expect(regex).not_to exactly_match("def")
233
+ end
201
234
  end
202
235
  end
203
236
  end
data/spec/spec_helper.rb CHANGED
@@ -48,9 +48,9 @@ end
48
48
  RSpec.configure do |config|
49
49
  config.mock_with :rr
50
50
 
51
- config.filter_run(:focus => true)
51
+ config.filter_run(focus: true)
52
52
  config.run_all_when_everything_filtered = true
53
- config.filter_run_excluding(:slow => true) unless ENV['FULL_SPEC']
53
+ config.filter_run_excluding(slow: true) unless ENV['FULL_SPEC']
54
54
 
55
55
  config.before(:each) do
56
56
  TwitterCldr.reset_locale_fallbacks
@@ -62,7 +62,7 @@ end
62
62
 
63
63
  RSpec::Matchers.define :match_normalized do |expected|
64
64
  match do |actual|
65
- expected.localize.normalize(:using => :NFKC).to_s == actual.localize.normalize(:using => :NFKC).to_s
65
+ expected.localize.normalize(using: :NFKC).to_s == actual.localize.normalize(using: :NFKC).to_s
66
66
  end
67
67
  end
68
68