twitter_cldr 3.0.0.beta1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (698) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +16 -2
  3. data/History.txt +9 -1
  4. data/README.md +297 -113
  5. data/Rakefile +97 -17
  6. data/lib/twitter_cldr/collation/collator.rb +12 -3
  7. data/lib/twitter_cldr/collation/trie_builder.rb +1 -1
  8. data/lib/twitter_cldr/{tokenizers/calendars → data_readers}/additional_date_format_selector.rb +6 -4
  9. data/lib/twitter_cldr/data_readers/calendar_data_reader.rb +91 -0
  10. data/lib/twitter_cldr/data_readers/data_reader.rb +32 -0
  11. data/lib/twitter_cldr/data_readers/date_data_reader.rb +26 -0
  12. data/lib/twitter_cldr/data_readers/date_time_data_reader.rb +41 -0
  13. data/lib/twitter_cldr/data_readers/number_data_reader.rb +142 -0
  14. data/lib/twitter_cldr/data_readers/time_data_reader.rb +26 -0
  15. data/lib/twitter_cldr/data_readers/timespan_data_reader.rb +122 -0
  16. data/lib/twitter_cldr/data_readers.rb +17 -0
  17. data/lib/twitter_cldr/formatters/calendars/{datetime_formatter.rb → date_time_formatter.rb} +27 -42
  18. data/lib/twitter_cldr/formatters/calendars/timespan_formatter.rb +3 -64
  19. data/lib/twitter_cldr/formatters/formatter.rb +39 -0
  20. data/lib/twitter_cldr/formatters/list_formatter.rb +22 -12
  21. data/lib/twitter_cldr/formatters/numbers/abbreviated/abbreviated_number_formatter.rb +5 -26
  22. data/lib/twitter_cldr/formatters/numbers/currency_formatter.rb +2 -11
  23. data/lib/twitter_cldr/formatters/numbers/decimal_formatter.rb +4 -2
  24. data/lib/twitter_cldr/formatters/numbers/number_formatter.rb +45 -27
  25. data/lib/twitter_cldr/formatters/numbers/percent_formatter.rb +3 -13
  26. data/lib/twitter_cldr/formatters/numbers/rbnf/formatters.rb +224 -0
  27. data/lib/twitter_cldr/formatters/numbers/rbnf/post_processors/chinese.rb +122 -0
  28. data/lib/twitter_cldr/formatters/numbers/rbnf/rule.rb +93 -0
  29. data/lib/twitter_cldr/formatters/numbers/rbnf/rule_group.rb +20 -0
  30. data/lib/twitter_cldr/formatters/numbers/rbnf/rule_parser.rb +86 -0
  31. data/lib/twitter_cldr/formatters/numbers/rbnf/rule_set.rb +259 -0
  32. data/lib/twitter_cldr/formatters/numbers/rbnf/substitution.rb +30 -0
  33. data/lib/twitter_cldr/formatters/numbers/rbnf.rb +127 -0
  34. data/lib/twitter_cldr/formatters/plurals/plural_formatter.rb +18 -6
  35. data/lib/twitter_cldr/formatters.rb +4 -5
  36. data/lib/twitter_cldr/localized/localized_array.rb +1 -1
  37. data/lib/twitter_cldr/localized/localized_date.rb +6 -3
  38. data/lib/twitter_cldr/localized/localized_datetime.rb +38 -15
  39. data/lib/twitter_cldr/localized/localized_number.rb +40 -24
  40. data/lib/twitter_cldr/localized/localized_object.rb +4 -4
  41. data/lib/twitter_cldr/localized/localized_string.rb +40 -7
  42. data/lib/twitter_cldr/localized/localized_time.rb +9 -2
  43. data/lib/twitter_cldr/localized/localized_timespan.rb +50 -5
  44. data/lib/twitter_cldr/normalization.rb +8 -19
  45. data/lib/twitter_cldr/parsers/parser.rb +50 -0
  46. data/lib/twitter_cldr/parsers/segmentation_parser.rb +137 -0
  47. data/lib/twitter_cldr/parsers/symbol_table.rb +30 -0
  48. data/lib/twitter_cldr/parsers/unicode_regex/character_class.rb +91 -0
  49. data/lib/twitter_cldr/parsers/unicode_regex/character_range.rb +39 -0
  50. data/lib/twitter_cldr/parsers/unicode_regex/character_set.rb +65 -0
  51. data/lib/twitter_cldr/parsers/unicode_regex/component.rb +50 -0
  52. data/lib/twitter_cldr/parsers/unicode_regex/literal.rb +83 -0
  53. data/lib/twitter_cldr/parsers/unicode_regex/unicode_string.rb +41 -0
  54. data/lib/twitter_cldr/parsers/unicode_regex_parser.rb +262 -0
  55. data/lib/twitter_cldr/parsers.rb +5 -1
  56. data/lib/twitter_cldr/resources/casefolder.rb.erb +64 -0
  57. data/lib/twitter_cldr/resources/casefolder_class_generator.rb +75 -0
  58. data/lib/twitter_cldr/resources/download.rb +10 -4
  59. data/lib/twitter_cldr/resources/icu_based_importer.rb +18 -0
  60. data/lib/twitter_cldr/resources/locales_resources_importer.rb +24 -13
  61. data/lib/twitter_cldr/resources/normalization_quick_check_importer.rb +1 -14
  62. data/lib/twitter_cldr/resources/rbnf_test_importer.rb +107 -0
  63. data/lib/twitter_cldr/resources/readme_renderer.rb +115 -0
  64. data/lib/twitter_cldr/resources/tailoring_importer.rb +2 -8
  65. data/lib/twitter_cldr/resources/uli/segment_exceptions_importer.rb +62 -0
  66. data/lib/twitter_cldr/resources/uli.rb +12 -0
  67. data/lib/twitter_cldr/resources/unicode_data_importer.rb +84 -14
  68. data/lib/twitter_cldr/resources/unicode_importer.rb +37 -0
  69. data/lib/twitter_cldr/resources/unicode_properties_importer.rb +79 -0
  70. data/lib/twitter_cldr/resources.rb +8 -1
  71. data/lib/twitter_cldr/shared/break_iterator.rb +213 -0
  72. data/lib/twitter_cldr/shared/calendar.rb +38 -14
  73. data/lib/twitter_cldr/shared/casefolder.rb +210 -0
  74. data/lib/twitter_cldr/shared/code_point.rb +103 -16
  75. data/lib/twitter_cldr/shared/numbering_system.rb +58 -0
  76. data/lib/twitter_cldr/shared/territories.rb +43 -1
  77. data/lib/twitter_cldr/shared/unicode_regex.rb +81 -0
  78. data/lib/twitter_cldr/shared.rb +13 -9
  79. data/lib/twitter_cldr/tokenizers/calendars/date_time_tokenizer.rb +77 -0
  80. data/lib/twitter_cldr/tokenizers/calendars/date_tokenizer.rb +14 -29
  81. data/lib/twitter_cldr/tokenizers/calendars/time_tokenizer.rb +13 -28
  82. data/lib/twitter_cldr/tokenizers/calendars/timespan_tokenizer.rb +11 -87
  83. data/lib/twitter_cldr/tokenizers/numbers/number_tokenizer.rb +16 -71
  84. data/lib/twitter_cldr/tokenizers/numbers/rbnf_tokenizer.rb +53 -0
  85. data/lib/twitter_cldr/tokenizers/pattern_tokenizer.rb +42 -0
  86. data/lib/twitter_cldr/tokenizers/segmentation/segmentation_tokenizer.rb +39 -0
  87. data/lib/twitter_cldr/tokenizers/tokenizer.rb +116 -0
  88. data/lib/twitter_cldr/tokenizers/unicode_regex/unicode_regex_tokenizer.rb +52 -0
  89. data/lib/twitter_cldr/tokenizers.rb +8 -4
  90. data/lib/twitter_cldr/utils/code_points.rb +1 -1
  91. data/lib/twitter_cldr/utils/range_set.rb +242 -0
  92. data/lib/twitter_cldr/utils/yaml.rb +17 -12
  93. data/lib/twitter_cldr/utils.rb +1 -1
  94. data/lib/twitter_cldr/version.rb +1 -1
  95. data/lib/twitter_cldr.rb +2 -1
  96. data/resources/custom/locales/sv/units.yml +8 -0
  97. data/resources/locales/af/calendars.yml +278 -224
  98. data/resources/locales/af/currencies.yml +954 -916
  99. data/resources/locales/af/languages.yml +583 -580
  100. data/resources/locales/af/layout.yml +5 -5
  101. data/resources/locales/af/lists.yml +23 -7
  102. data/resources/locales/af/numbers.yml +59 -54
  103. data/resources/locales/af/plurals.yml +2 -2
  104. data/resources/locales/af/rbnf.yml +261 -0
  105. data/resources/locales/af/territories.yml +264 -263
  106. data/resources/locales/ar/calendars.yml +287 -259
  107. data/resources/locales/ar/currencies.yml +1730 -1692
  108. data/resources/locales/ar/languages.yml +583 -580
  109. data/resources/locales/ar/layout.yml +5 -5
  110. data/resources/locales/ar/lists.yml +23 -7
  111. data/resources/locales/ar/numbers.yml +66 -61
  112. data/resources/locales/ar/plurals.yml +5 -8
  113. data/resources/locales/ar/rbnf.yml +519 -0
  114. data/resources/locales/ar/territories.yml +264 -263
  115. data/resources/locales/be/calendars.yml +238 -237
  116. data/resources/locales/be/currencies.yml +954 -917
  117. data/resources/locales/be/languages.yml +583 -580
  118. data/resources/locales/be/layout.yml +5 -5
  119. data/resources/locales/be/lists.yml +23 -7
  120. data/resources/locales/be/numbers.yml +62 -57
  121. data/resources/locales/be/plurals.yml +7 -4
  122. data/resources/locales/be/rbnf.yml +1288 -0
  123. data/resources/locales/be/territories.yml +264 -263
  124. data/resources/locales/bg/calendars.yml +278 -218
  125. data/resources/locales/bg/currencies.yml +955 -917
  126. data/resources/locales/bg/languages.yml +583 -580
  127. data/resources/locales/bg/layout.yml +5 -5
  128. data/resources/locales/bg/lists.yml +23 -7
  129. data/resources/locales/bg/numbers.yml +62 -57
  130. data/resources/locales/bg/plurals.yml +2 -2
  131. data/resources/locales/bg/rbnf.yml +280 -0
  132. data/resources/locales/bg/territories.yml +264 -263
  133. data/resources/locales/bn/calendars.yml +287 -225
  134. data/resources/locales/bn/currencies.yml +953 -916
  135. data/resources/locales/bn/languages.yml +583 -580
  136. data/resources/locales/bn/layout.yml +5 -5
  137. data/resources/locales/bn/lists.yml +23 -7
  138. data/resources/locales/bn/numbers.yml +62 -57
  139. data/resources/locales/bn/plurals.yml +2 -2
  140. data/resources/locales/bn/rbnf.yml +4 -0
  141. data/resources/locales/bn/territories.yml +264 -263
  142. data/resources/locales/ca/calendars.yml +278 -278
  143. data/resources/locales/ca/currencies.yml +953 -916
  144. data/resources/locales/ca/languages.yml +583 -580
  145. data/resources/locales/ca/layout.yml +5 -5
  146. data/resources/locales/ca/lists.yml +23 -7
  147. data/resources/locales/ca/numbers.yml +62 -57
  148. data/resources/locales/ca/plurals.yml +3 -2
  149. data/resources/locales/ca/rbnf.yml +756 -0
  150. data/resources/locales/ca/territories.yml +264 -263
  151. data/resources/locales/cs/calendars.yml +269 -262
  152. data/resources/locales/cs/currencies.yml +1483 -1172
  153. data/resources/locales/cs/languages.yml +583 -580
  154. data/resources/locales/cs/layout.yml +5 -5
  155. data/resources/locales/cs/lists.yml +23 -7
  156. data/resources/locales/cs/numbers.yml +64 -58
  157. data/resources/locales/cs/plurals.yml +6 -2
  158. data/resources/locales/cs/rbnf.yml +367 -0
  159. data/resources/locales/cs/territories.yml +264 -263
  160. data/resources/locales/cy/calendars.yml +275 -274
  161. data/resources/locales/cy/currencies.yml +1585 -1548
  162. data/resources/locales/cy/languages.yml +583 -580
  163. data/resources/locales/cy/layout.yml +5 -5
  164. data/resources/locales/cy/lists.yml +23 -7
  165. data/resources/locales/cy/numbers.yml +66 -61
  166. data/resources/locales/cy/plurals.yml +4 -3
  167. data/resources/locales/cy/rbnf.yml +298 -0
  168. data/resources/locales/cy/territories.yml +264 -263
  169. data/resources/locales/da/calendars.yml +281 -280
  170. data/resources/locales/da/currencies.yml +954 -916
  171. data/resources/locales/da/languages.yml +583 -580
  172. data/resources/locales/da/layout.yml +5 -5
  173. data/resources/locales/da/lists.yml +23 -7
  174. data/resources/locales/da/numbers.yml +62 -57
  175. data/resources/locales/da/plurals.yml +3 -2
  176. data/resources/locales/da/rbnf.yml +194 -0
  177. data/resources/locales/da/territories.yml +264 -263
  178. data/resources/locales/de/calendars.yml +294 -293
  179. data/resources/locales/de/currencies.yml +954 -916
  180. data/resources/locales/de/languages.yml +583 -580
  181. data/resources/locales/de/layout.yml +5 -5
  182. data/resources/locales/de/lists.yml +23 -7
  183. data/resources/locales/de/numbers.yml +62 -57
  184. data/resources/locales/de/plurals.yml +3 -2
  185. data/resources/locales/de/rbnf.yml +346 -0
  186. data/resources/locales/de/territories.yml +264 -263
  187. data/resources/locales/el/calendars.yml +279 -282
  188. data/resources/locales/el/currencies.yml +954 -916
  189. data/resources/locales/el/languages.yml +583 -580
  190. data/resources/locales/el/layout.yml +5 -5
  191. data/resources/locales/el/lists.yml +23 -7
  192. data/resources/locales/el/numbers.yml +62 -57
  193. data/resources/locales/el/plurals.yml +2 -2
  194. data/resources/locales/el/rbnf.yml +880 -0
  195. data/resources/locales/el/territories.yml +264 -263
  196. data/resources/locales/en/calendars.yml +192 -191
  197. data/resources/locales/en/currencies.yml +953 -915
  198. data/resources/locales/en/languages.yml +583 -580
  199. data/resources/locales/en/layout.yml +5 -5
  200. data/resources/locales/en/lists.yml +23 -7
  201. data/resources/locales/en/numbers.yml +62 -57
  202. data/resources/locales/en/plurals.yml +3 -2
  203. data/resources/locales/en/rbnf.yml +542 -0
  204. data/resources/locales/en/territories.yml +264 -263
  205. data/resources/locales/en-GB/calendars.yml +195 -194
  206. data/resources/locales/en-GB/currencies.yml +953 -915
  207. data/resources/locales/en-GB/languages.yml +583 -580
  208. data/resources/locales/en-GB/layout.yml +5 -5
  209. data/resources/locales/en-GB/lists.yml +23 -7
  210. data/resources/locales/en-GB/numbers.yml +62 -57
  211. data/resources/locales/en-GB/plurals.yml +2 -1
  212. data/resources/locales/en-GB/rbnf.yml +4 -0
  213. data/resources/locales/en-GB/territories.yml +264 -263
  214. data/resources/locales/es/calendars.yml +288 -238
  215. data/resources/locales/es/currencies.yml +953 -922
  216. data/resources/locales/es/languages.yml +583 -580
  217. data/resources/locales/es/layout.yml +5 -5
  218. data/resources/locales/es/lists.yml +23 -7
  219. data/resources/locales/es/numbers.yml +62 -57
  220. data/resources/locales/es/plurals.yml +2 -2
  221. data/resources/locales/es/rbnf.yml +913 -0
  222. data/resources/locales/es/territories.yml +264 -263
  223. data/resources/locales/eu/calendars.yml +277 -218
  224. data/resources/locales/eu/currencies.yml +953 -916
  225. data/resources/locales/eu/languages.yml +583 -580
  226. data/resources/locales/eu/layout.yml +5 -5
  227. data/resources/locales/eu/lists.yml +23 -7
  228. data/resources/locales/eu/numbers.yml +56 -51
  229. data/resources/locales/eu/plurals.yml +2 -2
  230. data/resources/locales/eu/rbnf.yml +4 -0
  231. data/resources/locales/eu/territories.yml +264 -263
  232. data/resources/locales/fa/calendars.yml +294 -293
  233. data/resources/locales/fa/currencies.yml +955 -916
  234. data/resources/locales/fa/languages.yml +583 -580
  235. data/resources/locales/fa/layout.yml +5 -5
  236. data/resources/locales/fa/lists.yml +23 -7
  237. data/resources/locales/fa/numbers.yml +62 -57
  238. data/resources/locales/fa/plurals.yml +2 -2
  239. data/resources/locales/fa/rbnf.yml +157 -0
  240. data/resources/locales/fa/territories.yml +264 -263
  241. data/resources/locales/fi/calendars.yml +284 -283
  242. data/resources/locales/fi/currencies.yml +953 -915
  243. data/resources/locales/fi/languages.yml +583 -580
  244. data/resources/locales/fi/layout.yml +5 -5
  245. data/resources/locales/fi/lists.yml +23 -7
  246. data/resources/locales/fi/numbers.yml +62 -57
  247. data/resources/locales/fi/plurals.yml +3 -2
  248. data/resources/locales/fi/rbnf.yml +206 -0
  249. data/resources/locales/fi/territories.yml +264 -263
  250. data/resources/locales/fil/calendars.yml +281 -230
  251. data/resources/locales/fil/currencies.yml +953 -916
  252. data/resources/locales/fil/languages.yml +583 -580
  253. data/resources/locales/fil/layout.yml +5 -5
  254. data/resources/locales/fil/lists.yml +23 -7
  255. data/resources/locales/fil/numbers.yml +62 -57
  256. data/resources/locales/fil/plurals.yml +3 -2
  257. data/resources/locales/fil/rbnf.yml +158 -0
  258. data/resources/locales/fil/territories.yml +264 -263
  259. data/resources/locales/fr/calendars.yml +297 -296
  260. data/resources/locales/fr/currencies.yml +968 -949
  261. data/resources/locales/fr/languages.yml +583 -580
  262. data/resources/locales/fr/layout.yml +5 -5
  263. data/resources/locales/fr/lists.yml +23 -7
  264. data/resources/locales/fr/numbers.yml +62 -57
  265. data/resources/locales/fr/plurals.yml +2 -2
  266. data/resources/locales/fr/rbnf.yml +621 -0
  267. data/resources/locales/fr/territories.yml +264 -263
  268. data/resources/locales/ga/calendars.yml +192 -191
  269. data/resources/locales/ga/currencies.yml +954 -916
  270. data/resources/locales/ga/languages.yml +583 -580
  271. data/resources/locales/ga/layout.yml +5 -5
  272. data/resources/locales/ga/lists.yml +23 -7
  273. data/resources/locales/ga/numbers.yml +62 -57
  274. data/resources/locales/ga/plurals.yml +4 -3
  275. data/resources/locales/ga/rbnf.yml +615 -0
  276. data/resources/locales/ga/territories.yml +264 -263
  277. data/resources/locales/gl/calendars.yml +283 -217
  278. data/resources/locales/gl/currencies.yml +953 -916
  279. data/resources/locales/gl/languages.yml +583 -580
  280. data/resources/locales/gl/layout.yml +5 -5
  281. data/resources/locales/gl/lists.yml +23 -7
  282. data/resources/locales/gl/numbers.yml +62 -57
  283. data/resources/locales/gl/plurals.yml +3 -2
  284. data/resources/locales/gl/rbnf.yml +4 -0
  285. data/resources/locales/gl/territories.yml +264 -263
  286. data/resources/locales/he/calendars.yml +248 -220
  287. data/resources/locales/he/currencies.yml +992 -932
  288. data/resources/locales/he/languages.yml +583 -580
  289. data/resources/locales/he/layout.yml +5 -5
  290. data/resources/locales/he/lists.yml +23 -7
  291. data/resources/locales/he/numbers.yml +64 -59
  292. data/resources/locales/he/plurals.yml +6 -3
  293. data/resources/locales/he/rbnf.yml +1029 -0
  294. data/resources/locales/he/territories.yml +264 -263
  295. data/resources/locales/hi/calendars.yml +284 -216
  296. data/resources/locales/hi/currencies.yml +953 -915
  297. data/resources/locales/hi/languages.yml +583 -580
  298. data/resources/locales/hi/layout.yml +5 -5
  299. data/resources/locales/hi/lists.yml +23 -7
  300. data/resources/locales/hi/numbers.yml +60 -55
  301. data/resources/locales/hi/plurals.yml +2 -2
  302. data/resources/locales/hi/rbnf.yml +430 -0
  303. data/resources/locales/hi/territories.yml +264 -263
  304. data/resources/locales/hr/calendars.yml +308 -307
  305. data/resources/locales/hr/currencies.yml +1248 -1504
  306. data/resources/locales/hr/languages.yml +583 -580
  307. data/resources/locales/hr/layout.yml +5 -5
  308. data/resources/locales/hr/lists.yml +23 -7
  309. data/resources/locales/hr/numbers.yml +63 -59
  310. data/resources/locales/hr/plurals.yml +12 -4
  311. data/resources/locales/hr/rbnf.yml +599 -0
  312. data/resources/locales/hr/territories.yml +264 -263
  313. data/resources/locales/hu/calendars.yml +285 -284
  314. data/resources/locales/hu/currencies.yml +954 -916
  315. data/resources/locales/hu/languages.yml +583 -580
  316. data/resources/locales/hu/layout.yml +5 -5
  317. data/resources/locales/hu/lists.yml +23 -7
  318. data/resources/locales/hu/numbers.yml +62 -57
  319. data/resources/locales/hu/plurals.yml +2 -2
  320. data/resources/locales/hu/rbnf.yml +363 -0
  321. data/resources/locales/hu/territories.yml +264 -263
  322. data/resources/locales/id/calendars.yml +276 -275
  323. data/resources/locales/id/currencies.yml +954 -916
  324. data/resources/locales/id/languages.yml +583 -580
  325. data/resources/locales/id/layout.yml +5 -5
  326. data/resources/locales/id/lists.yml +23 -7
  327. data/resources/locales/id/numbers.yml +61 -56
  328. data/resources/locales/id/plurals.yml +2 -2
  329. data/resources/locales/id/rbnf.yml +121 -0
  330. data/resources/locales/id/territories.yml +264 -263
  331. data/resources/locales/is/calendars.yml +281 -242
  332. data/resources/locales/is/currencies.yml +954 -916
  333. data/resources/locales/is/languages.yml +583 -580
  334. data/resources/locales/is/layout.yml +5 -5
  335. data/resources/locales/is/lists.yml +23 -7
  336. data/resources/locales/is/numbers.yml +62 -57
  337. data/resources/locales/is/plurals.yml +5 -2
  338. data/resources/locales/is/rbnf.yml +326 -0
  339. data/resources/locales/is/territories.yml +264 -263
  340. data/resources/locales/it/calendars.yml +275 -260
  341. data/resources/locales/it/currencies.yml +953 -920
  342. data/resources/locales/it/languages.yml +583 -580
  343. data/resources/locales/it/layout.yml +5 -5
  344. data/resources/locales/it/lists.yml +23 -7
  345. data/resources/locales/it/numbers.yml +59 -54
  346. data/resources/locales/it/plurals.yml +3 -2
  347. data/resources/locales/it/rbnf.yml +1189 -0
  348. data/resources/locales/it/territories.yml +264 -263
  349. data/resources/locales/ja/calendars.yml +269 -207
  350. data/resources/locales/ja/currencies.yml +953 -915
  351. data/resources/locales/ja/languages.yml +583 -580
  352. data/resources/locales/ja/layout.yml +5 -5
  353. data/resources/locales/ja/lists.yml +23 -7
  354. data/resources/locales/ja/numbers.yml +62 -57
  355. data/resources/locales/ja/plurals.yml +2 -2
  356. data/resources/locales/ja/rbnf.yml +209 -0
  357. data/resources/locales/ja/territories.yml +264 -263
  358. data/resources/locales/ko/calendars.yml +246 -213
  359. data/resources/locales/ko/currencies.yml +953 -915
  360. data/resources/locales/ko/languages.yml +583 -580
  361. data/resources/locales/ko/layout.yml +5 -5
  362. data/resources/locales/ko/lists.yml +23 -7
  363. data/resources/locales/ko/numbers.yml +60 -55
  364. data/resources/locales/ko/plurals.yml +2 -2
  365. data/resources/locales/ko/rbnf.yml +722 -0
  366. data/resources/locales/ko/territories.yml +264 -263
  367. data/resources/locales/lv/calendars.yml +286 -285
  368. data/resources/locales/lv/currencies.yml +1122 -1084
  369. data/resources/locales/lv/languages.yml +583 -580
  370. data/resources/locales/lv/layout.yml +5 -5
  371. data/resources/locales/lv/lists.yml +23 -7
  372. data/resources/locales/lv/numbers.yml +63 -58
  373. data/resources/locales/lv/plurals.yml +11 -3
  374. data/resources/locales/lv/rbnf.yml +238 -0
  375. data/resources/locales/lv/territories.yml +264 -263
  376. data/resources/locales/ms/calendars.yml +280 -279
  377. data/resources/locales/ms/currencies.yml +954 -916
  378. data/resources/locales/ms/languages.yml +583 -580
  379. data/resources/locales/ms/layout.yml +5 -5
  380. data/resources/locales/ms/lists.yml +23 -7
  381. data/resources/locales/ms/numbers.yml +62 -57
  382. data/resources/locales/ms/plurals.yml +2 -2
  383. data/resources/locales/ms/rbnf.yml +130 -0
  384. data/resources/locales/ms/territories.yml +264 -263
  385. data/resources/locales/nb/calendars.yml +284 -283
  386. data/resources/locales/nb/currencies.yml +958 -916
  387. data/resources/locales/nb/languages.yml +583 -580
  388. data/resources/locales/nb/layout.yml +5 -5
  389. data/resources/locales/nb/lists.yml +23 -7
  390. data/resources/locales/nb/numbers.yml +62 -57
  391. data/resources/locales/nb/plurals.yml +2 -2
  392. data/resources/locales/nb/rbnf.yml +191 -0
  393. data/resources/locales/nb/territories.yml +264 -263
  394. data/resources/locales/nl/calendars.yml +285 -284
  395. data/resources/locales/nl/currencies.yml +953 -917
  396. data/resources/locales/nl/languages.yml +583 -580
  397. data/resources/locales/nl/layout.yml +5 -5
  398. data/resources/locales/nl/lists.yml +23 -7
  399. data/resources/locales/nl/numbers.yml +62 -57
  400. data/resources/locales/nl/plurals.yml +3 -2
  401. data/resources/locales/nl/rbnf.yml +320 -0
  402. data/resources/locales/nl/territories.yml +264 -263
  403. data/resources/locales/pl/calendars.yml +288 -287
  404. data/resources/locales/pl/currencies.yml +1326 -1284
  405. data/resources/locales/pl/languages.yml +583 -580
  406. data/resources/locales/pl/layout.yml +5 -5
  407. data/resources/locales/pl/lists.yml +23 -7
  408. data/resources/locales/pl/numbers.yml +64 -59
  409. data/resources/locales/pl/plurals.yml +11 -4
  410. data/resources/locales/pl/rbnf.yml +410 -0
  411. data/resources/locales/pl/territories.yml +264 -263
  412. data/resources/locales/pt/calendars.yml +290 -289
  413. data/resources/locales/pt/currencies.yml +954 -916
  414. data/resources/locales/pt/languages.yml +583 -580
  415. data/resources/locales/pt/layout.yml +5 -5
  416. data/resources/locales/pt/lists.yml +23 -7
  417. data/resources/locales/pt/numbers.yml +62 -57
  418. data/resources/locales/pt/plurals.yml +4 -2
  419. data/resources/locales/pt/rbnf.yml +586 -0
  420. data/resources/locales/pt/territories.yml +264 -263
  421. data/resources/locales/ro/calendars.yml +284 -283
  422. data/resources/locales/ro/currencies.yml +1170 -1132
  423. data/resources/locales/ro/languages.yml +583 -580
  424. data/resources/locales/ro/layout.yml +5 -5
  425. data/resources/locales/ro/lists.yml +23 -7
  426. data/resources/locales/ro/numbers.yml +63 -58
  427. data/resources/locales/ro/plurals.yml +5 -2
  428. data/resources/locales/ro/rbnf.yml +250 -0
  429. data/resources/locales/ro/territories.yml +264 -263
  430. data/resources/locales/ru/calendars.yml +282 -281
  431. data/resources/locales/ru/currencies.yml +1118 -1247
  432. data/resources/locales/ru/languages.yml +583 -580
  433. data/resources/locales/ru/layout.yml +5 -5
  434. data/resources/locales/ru/lists.yml +23 -7
  435. data/resources/locales/ru/numbers.yml +63 -59
  436. data/resources/locales/ru/plurals.yml +8 -4
  437. data/resources/locales/ru/rbnf.yml +385 -0
  438. data/resources/locales/ru/territories.yml +264 -263
  439. data/resources/locales/sk/calendars.yml +254 -251
  440. data/resources/locales/sk/currencies.yml +1174 -1008
  441. data/resources/locales/sk/languages.yml +583 -580
  442. data/resources/locales/sk/layout.yml +5 -5
  443. data/resources/locales/sk/lists.yml +23 -7
  444. data/resources/locales/sk/numbers.yml +64 -58
  445. data/resources/locales/sk/plurals.yml +6 -2
  446. data/resources/locales/sk/rbnf.yml +304 -0
  447. data/resources/locales/sk/territories.yml +264 -263
  448. data/resources/locales/sq/calendars.yml +283 -206
  449. data/resources/locales/sq/currencies.yml +954 -916
  450. data/resources/locales/sq/languages.yml +583 -580
  451. data/resources/locales/sq/layout.yml +5 -5
  452. data/resources/locales/sq/lists.yml +23 -7
  453. data/resources/locales/sq/numbers.yml +62 -57
  454. data/resources/locales/sq/plurals.yml +2 -2
  455. data/resources/locales/sq/rbnf.yml +181 -0
  456. data/resources/locales/sq/territories.yml +264 -263
  457. data/resources/locales/sr/calendars.yml +290 -289
  458. data/resources/locales/sr/currencies.yml +1251 -1508
  459. data/resources/locales/sr/languages.yml +583 -580
  460. data/resources/locales/sr/layout.yml +5 -5
  461. data/resources/locales/sr/lists.yml +23 -7
  462. data/resources/locales/sr/numbers.yml +62 -58
  463. data/resources/locales/sr/plurals.yml +12 -4
  464. data/resources/locales/sr/rbnf.yml +429 -0
  465. data/resources/locales/sr/territories.yml +264 -263
  466. data/resources/locales/sv/calendars.yml +290 -289
  467. data/resources/locales/sv/currencies.yml +960 -930
  468. data/resources/locales/sv/languages.yml +583 -580
  469. data/resources/locales/sv/layout.yml +5 -5
  470. data/resources/locales/sv/lists.yml +23 -7
  471. data/resources/locales/sv/numbers.yml +63 -58
  472. data/resources/locales/sv/plurals.yml +3 -2
  473. data/resources/locales/sv/rbnf.yml +692 -0
  474. data/resources/locales/sv/territories.yml +264 -263
  475. data/resources/locales/ta/calendars.yml +281 -266
  476. data/resources/locales/ta/currencies.yml +953 -915
  477. data/resources/locales/ta/languages.yml +583 -580
  478. data/resources/locales/ta/layout.yml +5 -5
  479. data/resources/locales/ta/lists.yml +23 -7
  480. data/resources/locales/ta/numbers.yml +62 -57
  481. data/resources/locales/ta/plurals.yml +2 -2
  482. data/resources/locales/ta/rbnf.yml +241 -0
  483. data/resources/locales/ta/territories.yml +264 -263
  484. data/resources/locales/th/calendars.yml +278 -289
  485. data/resources/locales/th/currencies.yml +953 -915
  486. data/resources/locales/th/languages.yml +583 -580
  487. data/resources/locales/th/layout.yml +5 -5
  488. data/resources/locales/th/lists.yml +23 -7
  489. data/resources/locales/th/numbers.yml +62 -57
  490. data/resources/locales/th/plurals.yml +2 -2
  491. data/resources/locales/th/rbnf.yml +119 -0
  492. data/resources/locales/th/territories.yml +264 -263
  493. data/resources/locales/tr/calendars.yml +287 -286
  494. data/resources/locales/tr/currencies.yml +953 -916
  495. data/resources/locales/tr/languages.yml +583 -580
  496. data/resources/locales/tr/layout.yml +5 -5
  497. data/resources/locales/tr/lists.yml +23 -7
  498. data/resources/locales/tr/numbers.yml +61 -56
  499. data/resources/locales/tr/plurals.yml +2 -2
  500. data/resources/locales/tr/rbnf.yml +277 -0
  501. data/resources/locales/tr/territories.yml +264 -263
  502. data/resources/locales/uk/calendars.yml +286 -252
  503. data/resources/locales/uk/currencies.yml +1311 -1070
  504. data/resources/locales/uk/languages.yml +583 -580
  505. data/resources/locales/uk/layout.yml +5 -5
  506. data/resources/locales/uk/lists.yml +23 -7
  507. data/resources/locales/uk/numbers.yml +64 -59
  508. data/resources/locales/uk/plurals.yml +10 -4
  509. data/resources/locales/uk/rbnf.yml +430 -0
  510. data/resources/locales/uk/territories.yml +264 -263
  511. data/resources/locales/ur/calendars.yml +267 -228
  512. data/resources/locales/ur/currencies.yml +954 -916
  513. data/resources/locales/ur/languages.yml +583 -580
  514. data/resources/locales/ur/layout.yml +5 -5
  515. data/resources/locales/ur/lists.yml +23 -7
  516. data/resources/locales/ur/numbers.yml +62 -57
  517. data/resources/locales/ur/plurals.yml +3 -2
  518. data/resources/locales/ur/rbnf.yml +4 -0
  519. data/resources/locales/ur/territories.yml +264 -263
  520. data/resources/locales/vi/calendars.yml +256 -236
  521. data/resources/locales/vi/currencies.yml +953 -915
  522. data/resources/locales/vi/languages.yml +583 -580
  523. data/resources/locales/vi/layout.yml +5 -5
  524. data/resources/locales/vi/lists.yml +23 -7
  525. data/resources/locales/vi/numbers.yml +62 -57
  526. data/resources/locales/vi/plurals.yml +2 -2
  527. data/resources/locales/vi/rbnf.yml +164 -0
  528. data/resources/locales/vi/territories.yml +264 -263
  529. data/resources/locales/zh/calendars.yml +266 -265
  530. data/resources/locales/zh/currencies.yml +953 -915
  531. data/resources/locales/zh/languages.yml +583 -580
  532. data/resources/locales/zh/layout.yml +5 -5
  533. data/resources/locales/zh/lists.yml +23 -7
  534. data/resources/locales/zh/numbers.yml +62 -57
  535. data/resources/locales/zh/plurals.yml +2 -2
  536. data/resources/locales/zh/rbnf.yml +689 -0
  537. data/resources/locales/zh/territories.yml +264 -263
  538. data/resources/locales/zh-Hant/calendars.yml +266 -265
  539. data/resources/locales/zh-Hant/currencies.yml +955 -915
  540. data/resources/locales/zh-Hant/languages.yml +583 -580
  541. data/resources/locales/zh-Hant/layout.yml +5 -5
  542. data/resources/locales/zh-Hant/lists.yml +23 -7
  543. data/resources/locales/zh-Hant/numbers.yml +62 -57
  544. data/resources/locales/zh-Hant/plurals.yml +2 -2
  545. data/resources/locales/zh-Hant/rbnf.yml +647 -0
  546. data/resources/locales/zh-Hant/territories.yml +264 -263
  547. data/resources/shared/currency_digits_and_rounding.yml +67 -64
  548. data/resources/shared/numbering_systems.yml +176 -0
  549. data/resources/shared/rbnf_root.yml +1573 -0
  550. data/resources/shared/segments/segments_root.yml +728 -0
  551. data/resources/shared/segments/tailorings/en.yml +8 -0
  552. data/resources/uli/segments/de.yml +128 -0
  553. data/resources/uli/segments/en.yml +154 -0
  554. data/resources/uli/segments/es.yml +112 -0
  555. data/resources/uli/segments/fr.yml +47 -0
  556. data/resources/uli/segments/it.yml +37 -0
  557. data/resources/uli/segments/pt.yml +173 -0
  558. data/resources/uli/segments/ru.yml +10 -0
  559. data/resources/unicode_data/casefolding.yml +4765 -0
  560. data/resources/unicode_data/indices/bidi_class.yml +4572 -0
  561. data/resources/unicode_data/indices/bidi_mirrored.yml +3087 -0
  562. data/resources/unicode_data/indices/category.yml +10918 -0
  563. data/resources/unicode_data/indices/keys.yml +101 -0
  564. data/resources/unicode_data/properties/line_break.yml +9269 -0
  565. data/resources/unicode_data/properties/sentence_break.yml +8067 -0
  566. data/resources/unicode_data/properties/word_break.yml +3001 -0
  567. data/spec/collation/collation_spec.rb +2 -1
  568. data/spec/collation/collator_spec.rb +4 -3
  569. data/spec/collation/tailoring_spec.rb +2 -2
  570. data/spec/collation/tailoring_tests/he.txt +5 -2
  571. data/spec/{tokenizers/calendars → data_readers}/additional_date_format_selector_spec.rb +13 -13
  572. data/spec/data_readers/date_time_data_reader_spec.rb +26 -0
  573. data/spec/data_readers/number_data_reader_spec.rb +18 -0
  574. data/spec/data_readers/timespan_data_reader.rb +22 -0
  575. data/spec/formatters/calendars/datetime_formatter_spec.rb +18 -22
  576. data/spec/formatters/list_formatter_spec.rb +16 -87
  577. data/spec/formatters/numbers/abbreviated/abbreviated_number_formatter_spec.rb +15 -59
  578. data/spec/formatters/numbers/abbreviated/long_decimal_formatter_spec.rb +32 -17
  579. data/spec/formatters/numbers/abbreviated/short_decimal_formatter_spec.rb +33 -17
  580. data/spec/formatters/numbers/currency_formatter_spec.rb +18 -13
  581. data/spec/formatters/numbers/decimal_formatter_spec.rb +16 -18
  582. data/spec/formatters/numbers/number_formatter_spec.rb +40 -31
  583. data/spec/formatters/numbers/percent_formatter_spec.rb +14 -6
  584. data/spec/formatters/numbers/rbnf/allowed_failures.yml +74 -0
  585. data/spec/formatters/numbers/rbnf/locales/af/rbnf_test.yml +706 -0
  586. data/spec/formatters/numbers/rbnf/locales/ar/rbnf_test.yml +706 -0
  587. data/spec/formatters/numbers/rbnf/locales/be/rbnf_test.yml +1174 -0
  588. data/spec/formatters/numbers/rbnf/locales/bg/rbnf_test.yml +706 -0
  589. data/spec/formatters/numbers/rbnf/locales/bn/rbnf_test.yml +1291 -0
  590. data/spec/formatters/numbers/rbnf/locales/ca/rbnf_test.yml +1174 -0
  591. data/spec/formatters/numbers/rbnf/locales/cs/rbnf_test.yml +823 -0
  592. data/spec/formatters/numbers/rbnf/locales/cy/rbnf_test.yml +940 -0
  593. data/spec/formatters/numbers/rbnf/locales/da/rbnf_test.yml +940 -0
  594. data/spec/formatters/numbers/rbnf/locales/de/rbnf_test.yml +940 -0
  595. data/spec/formatters/numbers/rbnf/locales/el/rbnf_test.yml +1174 -0
  596. data/spec/formatters/numbers/rbnf/locales/en/rbnf_test.yml +1291 -0
  597. data/spec/formatters/numbers/rbnf/locales/en-GB/rbnf_test.yml +1291 -0
  598. data/spec/formatters/numbers/rbnf/locales/es/rbnf_test.yml +1642 -0
  599. data/spec/formatters/numbers/rbnf/locales/eu/rbnf_test.yml +1291 -0
  600. data/spec/formatters/numbers/rbnf/locales/fa/rbnf_test.yml +589 -0
  601. data/spec/formatters/numbers/rbnf/locales/fi/rbnf_test.yml +706 -0
  602. data/spec/formatters/numbers/rbnf/locales/fil/rbnf_test.yml +706 -0
  603. data/spec/formatters/numbers/rbnf/locales/fr/rbnf_test.yml +1408 -0
  604. data/spec/formatters/numbers/rbnf/locales/ga/rbnf_test.yml +940 -0
  605. data/spec/formatters/numbers/rbnf/locales/gl/rbnf_test.yml +1291 -0
  606. data/spec/formatters/numbers/rbnf/locales/he/rbnf_test.yml +1057 -0
  607. data/spec/formatters/numbers/rbnf/locales/hi/rbnf_test.yml +823 -0
  608. data/spec/formatters/numbers/rbnf/locales/hr/rbnf_test.yml +1174 -0
  609. data/spec/formatters/numbers/rbnf/locales/hu/rbnf_test.yml +940 -0
  610. data/spec/formatters/numbers/rbnf/locales/id/rbnf_test.yml +706 -0
  611. data/spec/formatters/numbers/rbnf/locales/is/rbnf_test.yml +823 -0
  612. data/spec/formatters/numbers/rbnf/locales/it/rbnf_test.yml +1174 -0
  613. data/spec/formatters/numbers/rbnf/locales/ja/rbnf_test.yml +823 -0
  614. data/spec/formatters/numbers/rbnf/locales/ko/rbnf_test.yml +1408 -0
  615. data/spec/formatters/numbers/rbnf/locales/lv/rbnf_test.yml +706 -0
  616. data/spec/formatters/numbers/rbnf/locales/ms/rbnf_test.yml +706 -0
  617. data/spec/formatters/numbers/rbnf/locales/nb/rbnf_test.yml +940 -0
  618. data/spec/formatters/numbers/rbnf/locales/nl/rbnf_test.yml +706 -0
  619. data/spec/formatters/numbers/rbnf/locales/pl/rbnf_test.yml +823 -0
  620. data/spec/formatters/numbers/rbnf/locales/pt/rbnf_test.yml +1174 -0
  621. data/spec/formatters/numbers/rbnf/locales/ro/rbnf_test.yml +823 -0
  622. data/spec/formatters/numbers/rbnf/locales/ru/rbnf_test.yml +823 -0
  623. data/spec/formatters/numbers/rbnf/locales/sk/rbnf_test.yml +823 -0
  624. data/spec/formatters/numbers/rbnf/locales/sq/rbnf_test.yml +706 -0
  625. data/spec/formatters/numbers/rbnf/locales/sr/rbnf_test.yml +940 -0
  626. data/spec/formatters/numbers/rbnf/locales/sv/rbnf_test.yml +1876 -0
  627. data/spec/formatters/numbers/rbnf/locales/ta/rbnf_test.yml +706 -0
  628. data/spec/formatters/numbers/rbnf/locales/th/rbnf_test.yml +706 -0
  629. data/spec/formatters/numbers/rbnf/locales/tr/rbnf_test.yml +706 -0
  630. data/spec/formatters/numbers/rbnf/locales/uk/rbnf_test.yml +823 -0
  631. data/spec/formatters/numbers/rbnf/locales/ur/rbnf_test.yml +1291 -0
  632. data/spec/formatters/numbers/rbnf/locales/vi/rbnf_test.yml +706 -0
  633. data/spec/formatters/numbers/rbnf/locales/zh/rbnf_test.yml +940 -0
  634. data/spec/formatters/numbers/rbnf/locales/zh-Hant/rbnf_test.yml +940 -0
  635. data/spec/formatters/numbers/rbnf/rbnf_spec.rb +98 -0
  636. data/spec/formatters/plurals/plural_formatter_spec.rb +4 -4
  637. data/spec/formatters/plurals/rules_spec.rb +5 -5
  638. data/spec/localized/localized_date_spec.rb +1 -1
  639. data/spec/localized/localized_datetime_spec.rb +8 -13
  640. data/spec/localized/localized_number_spec.rb +17 -32
  641. data/spec/localized/localized_object_spec.rb +0 -5
  642. data/spec/localized/localized_string_spec.rb +40 -2
  643. data/spec/localized/localized_time_spec.rb +3 -6
  644. data/spec/localized/localized_timespan_spec.rb +144 -0
  645. data/spec/normalization_spec.rb +12 -12
  646. data/spec/parsers/number_parser_spec.rb +5 -5
  647. data/spec/parsers/parser_spec.rb +60 -0
  648. data/spec/parsers/segmentation_parser_spec.rb +96 -0
  649. data/spec/parsers/symbol_table_spec.rb +32 -0
  650. data/spec/parsers/unicode_regex/character_class_spec.rb +117 -0
  651. data/spec/parsers/unicode_regex/character_range_spec.rb +21 -0
  652. data/spec/parsers/unicode_regex/character_set_spec.rb +36 -0
  653. data/spec/parsers/unicode_regex/literal_spec.rb +34 -0
  654. data/spec/parsers/unicode_regex/unicode_string_spec.rb +22 -0
  655. data/spec/parsers/unicode_regex_parser_spec.rb +86 -0
  656. data/spec/readme_spec.rb +8 -269
  657. data/spec/shared/break_iterator_spec.rb +72 -0
  658. data/spec/shared/calendar_spec.rb +5 -4
  659. data/spec/shared/casefolder_spec.rb +30 -0
  660. data/spec/shared/casefolding.txt +251 -0
  661. data/spec/shared/casefolding_expected.txt +251 -0
  662. data/spec/shared/code_point_spec.rb +44 -14
  663. data/spec/shared/numbering_system_spec.rb +41 -0
  664. data/spec/shared/territories_spec.rb +14 -6
  665. data/spec/shared/unicode_regex_spec.rb +203 -0
  666. data/spec/spec_helper.rb +17 -0
  667. data/spec/tokenizers/calendars/date_tokenizer_spec.rb +26 -30
  668. data/spec/tokenizers/calendars/datetime_tokenizer_spec.rb +11 -90
  669. data/spec/tokenizers/calendars/time_tokenizer_spec.rb +5 -5
  670. data/spec/tokenizers/calendars/timespan_tokenizer_spec.rb +17 -7
  671. data/spec/tokenizers/numbers/number_tokenizer_spec.rb +28 -27
  672. data/spec/tokenizers/segmentation/segmentation_tokenizer_spec.rb +40 -0
  673. data/spec/tokenizers/unicode_regex/unicode_regex_tokenizer_spec.rb +190 -0
  674. data/spec/utils/range_set_spec.rb +171 -0
  675. data/spec/utils/yaml/yaml_spec.rb +62 -51
  676. data/twitter_cldr.gemspec +1 -1
  677. metadata +199 -30
  678. data/lib/twitter_cldr/formatters/base.rb +0 -47
  679. data/lib/twitter_cldr/formatters/calendars/date_formatter.rb +0 -19
  680. data/lib/twitter_cldr/formatters/calendars/time_formatter.rb +0 -19
  681. data/lib/twitter_cldr/normalization/base.rb +0 -37
  682. data/lib/twitter_cldr/normalization/hangul.rb +0 -79
  683. data/lib/twitter_cldr/normalization/nfc.rb +0 -24
  684. data/lib/twitter_cldr/normalization/nfd.rb +0 -26
  685. data/lib/twitter_cldr/normalization/nfkc.rb +0 -114
  686. data/lib/twitter_cldr/normalization/nfkd.rb +0 -120
  687. data/lib/twitter_cldr/normalization/quick_check.rb +0 -41
  688. data/lib/twitter_cldr/tokenizers/base.rb +0 -169
  689. data/lib/twitter_cldr/tokenizers/calendars/datetime_tokenizer.rb +0 -131
  690. data/lib/twitter_cldr/utils/territories.rb +0 -56
  691. data/spec/formatters/base_spec.rb +0 -18
  692. data/spec/formatters/calendars/timespan_formatter_spec.rb +0 -112
  693. data/spec/normalization/NormalizationTestShort.txt +0 -602
  694. data/spec/normalization/base_spec.rb +0 -16
  695. data/spec/normalization/hangul_spec.rb +0 -42
  696. data/spec/normalization/normalization_spec.rb +0 -113
  697. data/spec/tokenizers/base_spec.rb +0 -259
  698. data/spec/utils/territories_spec.rb +0 -16
@@ -1,263 +1,264 @@
1
- ---
2
- :th:
3
- :territories:
4
- :ac: เกาะแอสเซนชัน
5
- :ad: อันดอร์รา
6
- :ae: สหรัฐอาหรับเอมิเรตส์
7
- :af: อัฟกานิสถาน
8
- :ag: แอนติกาและบาร์บูดา
9
- :ai: แองกวิลลา
10
- :al: แอลเบเนีย
11
- :am: อาร์เมเนีย
12
- :an: เนเธอร์แลนด์แอนทิลลิส
13
- :ao: แองโกลา
14
- :aq: แอนตาร์กติกา
15
- :ar: อาร์เจนตินา
16
- :as: อเมริกันซามัว
17
- :at: ออสเตรีย
18
- :au: ออสเตรเลีย
19
- :aw: อารูบา
20
- :ax: หมู่เกาะโอลันด์
21
- :az: อาเซอร์ไบจาน
22
- :ba: บอสเนียและเฮอร์เซโกวีนา
23
- :bb: บาร์เบโดส
24
- :bd: บังกลาเทศ
25
- :be: เบลเยียม
26
- :bf: บูร์กินาฟาโซ
27
- :bg: บัลแกเรีย
28
- :bh: บาห์เรน
29
- :bi: บุรุนดี
30
- :bj: เบนิน
31
- :bl: เซนต์บาร์เธเลมี
32
- :bm: เบอร์มิวดา
33
- :bn: บรูไน
34
- :bo: โบลิเวีย
35
- :bq: เนเธอร์แลนด์แคริบเบียน
36
- :br: บราซิล
37
- :bs: บาฮามาส
38
- :bt: ภูฏาน
39
- :bv: เกาะบูเวต
40
- :bw: บอตสวานา
41
- :by: เบลารุส
42
- :bz: เบลีซ
43
- :ca: แคนาดา
44
- :cc: หมู่เกาะโคโคส
45
- :cd: คองโก [สาธารณรัฐประชาธิปไตย]
46
- :cf: สาธารณรัฐแอฟริกากลาง
47
- :cg: คองโก [สาธารณรัฐ]
48
- :ch: สวิตเซอร์แลนด์
49
- :ci: ไอวอรี่โคสต์
50
- :ck: หมู่เกาะคุก
51
- :cl: ชิลี
52
- :cm: แคเมอรูน
53
- :cn: จีน
54
- :co: โคลอมเบีย
55
- :cp: เกาะคลิปเปอร์ตัน
56
- :cr: คอสตาริกา
57
- :cu: คิวบา
58
- :cv: เคปเวิร์ด
59
- :cw: คูราเซา
60
- :cx: เกาะคริสต์มาส
61
- :cy: ไซปรัส
62
- :cz: สาธารณรัฐเช็ก
63
- :de: เยอรมนี
64
- :dg: ดิเอโกการ์เซีย
65
- :dj: จิบูตี
66
- :dk: เดนมาร์ก
67
- :dm: โดมินิกา
68
- :do: สาธารณรัฐโดมินิกัน
69
- :dz: แอลจีเรีย
70
- :ea: ซีโอตาและเมลิลลา
71
- :ec: เอกวาดอร์
72
- :ee: เอสโตเนีย
73
- :eg: อียิปต์
74
- :eh: ซาฮาราตะวันตก
75
- :er: เอริเทรีย
76
- :es: สเปน
77
- :et: เอธิโอเปีย
78
- :eu: สหภาพยุโรป
79
- :fi: ฟินแลนด์
80
- :fj: ฟิจิ
81
- :fk: หมู่เกาะฟอล์กแลนด์ [อิสลาส มาลวินาส]
82
- :fm: ไมโครนีเซีย
83
- :fo: หมู่เกาะแฟโร
84
- :fr: ฝรั่งเศส
85
- :ga: กาบอง
86
- :gb: สหราชอาณาจักร
87
- :gd: เกรเนดา
88
- :ge: จอร์เจีย
89
- :gf: เฟรนช์เกียนา
90
- :gg: เกิร์นซีย์
91
- :gh: กานา
92
- :gi: ยิบรอลตาร์
93
- :gl: กรีนแลนด์
94
- :gm: แกมเบีย
95
- :gn: กินี
96
- :gp: กวาเดอลูป
97
- :gq: อิเควทอเรียลกินี
98
- :gr: กรีซ
99
- :gs: เกาะเซาท์จอร์เจียและหมู่เกาะเซาท์แซนด์วิช
100
- :gt: กัวเตมาลา
101
- :gu: กวม
102
- :gw: กินี-บิสเซา
103
- :gy: กายอานา
104
- :hk: ฮ่องกง
105
- :hm: เกาะเฮิร์ดและหมู่เกาะแมกดอนัลด์
106
- :hn: ฮอนดูรัส
107
- :hr: โครเอเชีย
108
- :ht: เฮติ
109
- :hu: ฮังการี
110
- :ic: หมู่เกาะคานารี
111
- :id: อินโดนีเซีย
112
- :ie: ไอร์แลนด์
113
- :il: อิสราเอล
114
- :im: เกาะแมน
115
- :in: อินเดีย
116
- :io: บริติชอินเดียนโอเชียนเทร์ริทอรี
117
- :iq: อิรัก
118
- :ir: อิหร่าน
119
- :is: ไอซ์แลนด์
120
- :it: อิตาลี
121
- :je: เจอร์ซีย์
122
- :jm: จาเมกา
123
- :jo: จอร์แดน
124
- :jp: ญี่ปุ่น
125
- :ke: เคนยา
126
- :kg: คีร์กีซสถาน
127
- :kh: กัมพูชา
128
- :ki: คิริบาส
129
- :km: คอโมโรส
130
- :kn: เซนต์คิตส์และเนวิส
131
- :kp: เกาหลีเหนือ
132
- :kr: เกาหลีใต้
133
- :kw: คูเวต
134
- :ky: หมู่เกาะเคย์แมน
135
- :kz: คาซัคสถาน
136
- :la: ลาว
137
- :lb: เลบานอน
138
- :lc: เซนต์ลูเซีย
139
- :li: ลิกเตนสไตน์
140
- :lk: ศรีลังกา
141
- :lr: ไลบีเรีย
142
- :ls: เลโซโท
143
- :lt: ลิทัวเนีย
144
- :lu: ลักเซมเบิร์ก
145
- :lv: ลัตเวีย
146
- :ly: ลิเบีย
147
- :ma: โมร็อกโก
148
- :mc: โมนาโก
149
- :md: มอลโดวา
150
- :me: มอนเตเนโกร
151
- :mf: เซนต์มาติน
152
- :mg: มาดากัสการ์
153
- :mh: หมู่เกาะมาร์แชลล์
154
- :mk: มาซิโดเนีย
155
- :ml: มาลี
156
- :mm: เมียนม่าร์ [พม่า]
157
- :mn: มองโกเลีย
158
- :mo: มาเก๊า
159
- :mp: หมู่เกาะนอร์เทิร์นมาเรียนา
160
- :mq: มาร์ตินีก
161
- :mr: มอริเตเนีย
162
- :ms: มอนต์เซอร์รัต
163
- :mt: มอลตา
164
- :mu: มอริเชียส
165
- :mv: มัลดีฟส์
166
- :mw: มาลาวี
167
- :mx: เม็กซิโก
168
- :my: มาเลเซีย
169
- :mz: โมซัมบิก
170
- :na: นามิเบีย
171
- :nc: นิวแคลิโดเนีย
172
- :ne: ไนเจอร์
173
- :nf: เกาะนอร์ฟอล์ก
174
- :ng: ไนจีเรีย
175
- :ni: นิการากัว
176
- :nl: เนเธอร์แลนด์
177
- :no: นอร์เวย์
178
- :np: เนปาล
179
- :nr: นาอูรู
180
- :nu: นีอูเอ
181
- :nz: นิวซีแลนด์
182
- :om: โอมาน
183
- :pa: ปานามา
184
- :pe: เปรู
185
- :pf: เฟรนช์โปลินีเซีย
186
- :pg: ปาปัวนิวกินี
187
- :ph: ฟิลิปปินส์
188
- :pk: ปากีสถาน
189
- :pl: โปแลนด์
190
- :pm: แซงปีแยร์และมีเกอลง
191
- :pn: หมู่เกาะพิตแคร์น
192
- :pr: เปอร์โตริโก
193
- :ps: ปาเลสไตน์
194
- :pt: โปรตุเกส
195
- :pw: ปาเลา
196
- :py: ปารากวัย
197
- :qa: กาตาร์
198
- :qo: เอาต์ไลอิงโอเชียเนีย
199
- :re: เรอูนียง
200
- :ro: โรมาเนีย
201
- :rs: เซอร์เบีย
202
- :ru: รัสเซีย
203
- :rw: รวันดา
204
- :sa: ซาอุดีอาระเบีย
205
- :sb: หมู่เกาะโซโลมอน
206
- :sc: เซเชลส์
207
- :sd: ซูดาน
208
- :se: สวีเดน
209
- :sg: สิงคโปร์
210
- :sh: เซนต์เฮเลนา
211
- :si: สโลวีเนีย
212
- :sj: สฟาลบาร์และยานไมเอน
213
- :sk: สโลวะเกีย
214
- :sl: เซียร์ราลีโอน
215
- :sm: ซานมารีโน
216
- :sn: เซเนกัล
217
- :so: โซมาเลีย
218
- :sr: ซูรินาเม
219
- :ss: ซูดานใต้
220
- :st: เซาตูเมและปรินซิปี
221
- :sv: เอลซัลวาดอร์
222
- :sx: เซนต์มาร์ติน
223
- :sy: ซีเรีย
224
- :sz: สวาซิแลนด์
225
- :ta: ทริสตัน เดอ คูนา
226
- :tc: หมู่เกาะเติกส์และหมู่เกาะเคคอส
227
- :td: ชาด
228
- :tf: เฟรนช์เซาเทิร์นเทร์ริทอรีส์
229
- :tg: โตโก
230
- :th: ไทย
231
- :tj: ทาจิกิสถาน
232
- :tk: โตเกเลา
233
- :tl: ติมอร์ตะวันออก
234
- :tm: เติร์กเมนิสถาน
235
- :tn: ตูนิเซีย
236
- :to: ตองกา
237
- :tr: ตุรกี
238
- :tt: ตรินิแดดและโตเบโก
239
- :tv: ตูวาลู
240
- :tw: ไต้หวัน
241
- :tz: แทนซาเนีย
242
- :ua: ยูเครน
243
- :ug: ยูกันดา
244
- :um: หมู่เกาะรอบนอกของสหรัฐอเมริกา
245
- :us: สหรัฐอเมริกา
246
- :uy: อุรุกวัย
247
- :uz: อุซเบกิสถาน
248
- :va: นครรัฐวาติกัน
249
- :vc: เซนต์วินเซนต์และเกรนาดีนส์
250
- :ve: เวเนซุเอลา
251
- :vg: หมู่เกาะบริติชเวอร์จิน
252
- :vi: หมู่เกาะยูเอสเวอร์จิน
253
- :vn: เวียดนาม
254
- :vu: วานูอาตู
255
- :wf: วาลลิสและฟุตูนา
256
- :ws: ซามัว
257
- :xk: โคโซโว
258
- :ye: เยเมน
259
- :yt: มายอต
260
- :za: แอฟริกาใต้
261
- :zm: แซมเบีย
262
- :zw: ซิมบับเว
263
- :zz: ไม่ทราบภูมิภาค
1
+ ---
2
+ :th:
3
+ :territories:
4
+ :ac: "เกาะแอสเซนชัน"
5
+ :ad: "อันดอร์รา"
6
+ :ae: "สหรัฐอาหรับเอมิเรตส์"
7
+ :af: "อัฟกานิสถาน"
8
+ :ag: "แอนติกาและบาร์บูดา"
9
+ :ai: "แองกวิลลา"
10
+ :al: "แอลเบเนีย"
11
+ :am: "อาร์เมเนีย"
12
+ :an: "เนเธอร์แลนด์แอนทิลลิส"
13
+ :ao: "แองโกลา"
14
+ :aq: "แอนตาร์กติกา"
15
+ :ar: "อาร์เจนตินา"
16
+ :as: "อเมริกันซามัว"
17
+ :at: "ออสเตรีย"
18
+ :au: "ออสเตรเลีย"
19
+ :aw: "อารูบา"
20
+ :ax: "หมู่เกาะโอลันด์"
21
+ :az: "อาเซอร์ไบจาน"
22
+ :ba: "บอสเนียและเฮอร์เซโกวีนา"
23
+ :bb: "บาร์เบโดส"
24
+ :bd: "บังกลาเทศ"
25
+ :be: "เบลเยียม"
26
+ :bf: "บูร์กินาฟาโซ"
27
+ :bg: "บัลแกเรีย"
28
+ :bh: "บาห์เรน"
29
+ :bi: "บุรุนดี"
30
+ :bj: "เบนิน"
31
+ :bl: "เซนต์บาร์เธเลมี"
32
+ :bm: "เบอร์มิวดา"
33
+ :bn: "บรูไน"
34
+ :bo: "โบลิเวีย"
35
+ :bq: "เนเธอร์แลนด์แคริบเบียน"
36
+ :br: "บราซิล"
37
+ :bs: "บาฮามาส"
38
+ :bt: "ภูฏาน"
39
+ :bv: "เกาะบูเวต"
40
+ :bw: "บอตสวานา"
41
+ :by: "เบลารุส"
42
+ :bz: "เบลีซ"
43
+ :ca: "แคนาดา"
44
+ :cc: "หมู่เกาะโคโคส"
45
+ :cd: "คองโก (สาธารณรัฐประชาธิปไตย)"
46
+ :cf: "สาธารณรัฐแอฟริกากลาง"
47
+ :cg: "คองโก (สาธารณรัฐ)"
48
+ :ch: "สวิตเซอร์แลนด์"
49
+ :ci: "ไอวอรี่โคสต์"
50
+ :ck: "หมู่เกาะคุก"
51
+ :cl: "ชิลี"
52
+ :cm: "แคเมอรูน"
53
+ :cn: "จีน"
54
+ :co: "โคลอมเบีย"
55
+ :cp: "เกาะคลิปเปอร์ตัน"
56
+ :cr: "คอสตาริกา"
57
+ :cu: "คิวบา"
58
+ :cv: "เคปเวิร์ด"
59
+ :cw: "คูราเซา"
60
+ :cx: "เกาะคริสต์มาส"
61
+ :cy: "ไซปรัส"
62
+ :cz: "สาธารณรัฐเช็ก"
63
+ :de: "เยอรมนี"
64
+ :dg: "ดิเอโกการ์เซีย"
65
+ :dj: "จิบูตี"
66
+ :dk: "เดนมาร์ก"
67
+ :dm: "โดมินิกา"
68
+ :do: "สาธารณรัฐโดมินิกัน"
69
+ :dz: "แอลจีเรีย"
70
+ :ea: "ซีโอตาและเมลิลลา"
71
+ :ec: "เอกวาดอร์"
72
+ :ee: "เอสโตเนีย"
73
+ :eg: "อียิปต์"
74
+ :eh: "ซาฮาราตะวันตก"
75
+ :er: "เอริเทรีย"
76
+ :es: "สเปน"
77
+ :et: "เอธิโอเปีย"
78
+ :eu: "สหภาพยุโรป"
79
+ :fi: "ฟินแลนด์"
80
+ :fj: "ฟิจิ"
81
+ :fk: "หมู่เกาะฟอล์กแลนด์ (อิสลาส มาลวินาส)"
82
+ :fm: "ไมโครนีเซีย"
83
+ :fo: "หมู่เกาะแฟโร"
84
+ :fr: "ฝรั่งเศส"
85
+ :ga: "กาบอง"
86
+ :gb: "อังกฤษ"
87
+ :gd: "เกรเนดา"
88
+ :ge: "จอร์เจีย"
89
+ :gf: "เฟรนช์เกียนา"
90
+ :gg: "เกิร์นซีย์"
91
+ :gh: "กานา"
92
+ :gi: "ยิบรอลตาร์"
93
+ :gl: "กรีนแลนด์"
94
+ :gm: "แกมเบีย"
95
+ :gn: "กินี"
96
+ :gp: "กวาเดอลูป"
97
+ :gq: "อิเควทอเรียลกินี"
98
+ :gr: "กรีซ"
99
+ :gs: "เกาะเซาท์จอร์เจียและหมู่เกาะเซาท์แซนด์วิช"
100
+ :gt: "กัวเตมาลา"
101
+ :gu: "กวม"
102
+ :gw: "กินี-บิสเซา"
103
+ :gy: "กายอานา"
104
+ :hk: "ฮ่องกง"
105
+ :hm: "เกาะเฮิร์ดและหมู่เกาะแมกดอนัลด์"
106
+ :hn: "ฮอนดูรัส"
107
+ :hr: "โครเอเชีย"
108
+ :ht: "เฮติ"
109
+ :hu: "ฮังการี"
110
+ :ic: "หมู่เกาะคานารี"
111
+ :id: "อินโดนีเซีย"
112
+ :ie: "ไอร์แลนด์"
113
+ :il: "อิสราเอล"
114
+ :im: "เกาะแมน"
115
+ :in: "อินเดีย"
116
+ :io: "บริติชอินเดียนโอเชียนเทร์ริทอรี"
117
+ :iq: "อิรัก"
118
+ :ir: "อิหร่าน"
119
+ :is: "ไอซ์แลนด์"
120
+ :it: "อิตาลี"
121
+ :je: "เจอร์ซีย์"
122
+ :jm: "จาเมกา"
123
+ :jo: "จอร์แดน"
124
+ :jp: "ญี่ปุ่น"
125
+ :ke: "เคนยา"
126
+ :kg: "คีร์กีซสถาน"
127
+ :kh: "กัมพูชา"
128
+ :ki: "คิริบาส"
129
+ :km: "คอโมโรส"
130
+ :kn: "เซนต์คิตส์และเนวิส"
131
+ :kp: "เกาหลีเหนือ"
132
+ :kr: "เกาหลีใต้"
133
+ :kw: "คูเวต"
134
+ :ky: "หมู่เกาะเคย์แมน"
135
+ :kz: "คาซัคสถาน"
136
+ :la: "ลาว"
137
+ :lb: "เลบานอน"
138
+ :lc: "เซนต์ลูเซีย"
139
+ :li: "ลิกเตนสไตน์"
140
+ :lk: "ศรีลังกา"
141
+ :lr: "ไลบีเรีย"
142
+ :ls: "เลโซโท"
143
+ :lt: "ลิทัวเนีย"
144
+ :lu: "ลักเซมเบิร์ก"
145
+ :lv: "ลัตเวีย"
146
+ :ly: "ลิเบีย"
147
+ :ma: "โมร็อกโก"
148
+ :mc: "โมนาโก"
149
+ :md: "มอลโดวา"
150
+ :me: "มอนเตเนโกร"
151
+ :mf: "เซนต์มาติน"
152
+ :mg: "มาดากัสการ์"
153
+ :mh: "หมู่เกาะมาร์แชลล์"
154
+ :mk: "มาซิโดเนีย"
155
+ :ml: "มาลี"
156
+ :mm: "เมียนม่าร์ (พม่า)"
157
+ :mn: "มองโกเลีย"
158
+ :mo: "มาเก๊า"
159
+ :mp: "หมู่เกาะนอร์เทิร์นมาเรียนา"
160
+ :mq: "มาร์ตินีก"
161
+ :mr: "มอริเตเนีย"
162
+ :ms: "มอนต์เซอร์รัต"
163
+ :mt: "มอลตา"
164
+ :mu: "มอริเชียส"
165
+ :mv: "มัลดีฟส์"
166
+ :mw: "มาลาวี"
167
+ :mx: "เม็กซิโก"
168
+ :my: "มาเลเซีย"
169
+ :mz: "โมซัมบิก"
170
+ :na: "นามิเบีย"
171
+ :nc: "นิวแคลิโดเนีย"
172
+ :ne: "ไนเจอร์"
173
+ :nf: "เกาะนอร์ฟอล์ก"
174
+ :ng: "ไนจีเรีย"
175
+ :ni: "นิการากัว"
176
+ :nl: "เนเธอร์แลนด์"
177
+ ? !ruby/symbol "no"
178
+ : "นอร์เวย์"
179
+ :np: "เนปาล"
180
+ :nr: "นาอูรู"
181
+ :nu: "นีอูเอ"
182
+ :nz: "นิวซีแลนด์"
183
+ :om: "โอมาน"
184
+ :pa: "ปานามา"
185
+ :pe: "เปรู"
186
+ :pf: "เฟรนช์โปลินีเซีย"
187
+ :pg: "ปาปัวนิวกินี"
188
+ :ph: "ฟิลิปปินส์"
189
+ :pk: "ปากีสถาน"
190
+ :pl: "โปแลนด์"
191
+ :pm: "แซงปีแยร์และมีเกอลง"
192
+ :pn: "หมู่เกาะพิตแคร์น"
193
+ :pr: "เปอร์โตริโก"
194
+ :ps: "ปาเลสไตน์"
195
+ :pt: "โปรตุเกส"
196
+ :pw: "ปาเลา"
197
+ :py: "ปารากวัย"
198
+ :qa: "กาตาร์"
199
+ :qo: "เอาต์ไลอิงโอเชียเนีย"
200
+ :re: "เรอูนียง"
201
+ :ro: "โรมาเนีย"
202
+ :rs: "เซอร์เบีย"
203
+ :ru: "รัสเซีย"
204
+ :rw: "รวันดา"
205
+ :sa: "ซาอุดีอาระเบีย"
206
+ :sb: "หมู่เกาะโซโลมอน"
207
+ :sc: "เซเชลส์"
208
+ :sd: "ซูดาน"
209
+ :se: "สวีเดน"
210
+ :sg: "สิงคโปร์"
211
+ :sh: "เซนต์เฮเลนา"
212
+ :si: "สโลวีเนีย"
213
+ :sj: "สฟาลบาร์และยานไมเอน"
214
+ :sk: "สโลวะเกีย"
215
+ :sl: "เซียร์ราลีโอน"
216
+ :sm: "ซานมารีโน"
217
+ :sn: "เซเนกัล"
218
+ :so: "โซมาเลีย"
219
+ :sr: "ซูรินาเม"
220
+ :ss: "ซูดานใต้"
221
+ :st: "เซาตูเมและปรินซิปี"
222
+ :sv: "เอลซัลวาดอร์"
223
+ :sx: "เซนต์มาร์ติน"
224
+ :sy: "ซีเรีย"
225
+ :sz: "สวาซิแลนด์"
226
+ :ta: "ทริสตัน เดอ คูนา"
227
+ :tc: "หมู่เกาะเติกส์และหมู่เกาะเคคอส"
228
+ :td: "ชาด"
229
+ :tf: "เฟรนช์เซาเทิร์นเทร์ริทอรีส์"
230
+ :tg: "โตโก"
231
+ :th: "ไทย"
232
+ :tj: "ทาจิกิสถาน"
233
+ :tk: "โตเกเลา"
234
+ :tl: "ติมอร์ตะวันออก"
235
+ :tm: "เติร์กเมนิสถาน"
236
+ :tn: "ตูนิเซีย"
237
+ :to: "ตองกา"
238
+ :tr: "ตุรกี"
239
+ :tt: "ตรินิแดดและโตเบโก"
240
+ :tv: "ตูวาลู"
241
+ :tw: "ไต้หวัน"
242
+ :tz: "แทนซาเนีย"
243
+ :ua: "ยูเครน"
244
+ :ug: "ยูกันดา"
245
+ :um: "หมู่เกาะรอบนอกของสหรัฐอเมริกา"
246
+ :us: "สหรัฐฯ"
247
+ :uy: "อุรุกวัย"
248
+ :uz: "อุซเบกิสถาน"
249
+ :va: "นครวาติกัน"
250
+ :vc: "เซนต์วินเซนต์และเกรนาดีนส์"
251
+ :ve: "เวเนซุเอลา"
252
+ :vg: "หมู่เกาะบริติชเวอร์จิน"
253
+ :vi: "หมู่เกาะยูเอสเวอร์จิน"
254
+ :vn: "เวียดนาม"
255
+ :vu: "วานูอาตู"
256
+ :wf: "วาลลิสและฟุตูนา"
257
+ :ws: "ซามัว"
258
+ :xk: "โคโซโว"
259
+ :ye: "เยเมน"
260
+ :yt: "มายอต"
261
+ :za: "แอฟริกาใต้"
262
+ :zm: "แซมเบีย"
263
+ :zw: "ซิมบับเว"
264
+ :zz: "ภูมิภาคที่ไม่รู้จัก"