interscript 0.1.9 → 2.0.5

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 (352) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +11 -0
  3. data/.rspec +3 -0
  4. data/Gemfile +29 -0
  5. data/LICENSE.adoc +31 -0
  6. data/README.md +3 -0
  7. data/Rakefile +53 -0
  8. data/bin/console +14 -0
  9. data/bin/interscript +5 -0
  10. data/bin/maps_analyze_staging +168 -0
  11. data/bin/maps_debug_compilers +58 -0
  12. data/bin/maps_debug_ordering +88 -0
  13. data/bin/maps_debug_ruby_compile +24 -0
  14. data/bin/maps_debug_step_by_step +44 -0
  15. data/bin/maps_optimize_order +112 -0
  16. data/bin/maps_v1_analyze_regexps +45 -0
  17. data/bin/maps_v1_to_v2 +426 -0
  18. data/bin/setup +8 -0
  19. data/exe/interscript +6 -0
  20. data/interscript.gemspec +31 -0
  21. data/lib/interscript.rb +80 -135
  22. data/lib/interscript/command.rb +5 -5
  23. data/lib/interscript/compiler.rb +22 -0
  24. data/lib/interscript/compiler/javascript.rb +292 -0
  25. data/lib/interscript/compiler/ruby.rb +262 -0
  26. data/lib/interscript/dsl.rb +67 -0
  27. data/lib/interscript/dsl/aliases.rb +23 -0
  28. data/lib/interscript/dsl/document.rb +46 -0
  29. data/lib/interscript/dsl/group.rb +45 -0
  30. data/lib/interscript/dsl/group/parallel.rb +6 -0
  31. data/lib/interscript/dsl/items.rb +89 -0
  32. data/lib/interscript/dsl/metadata.rb +26 -0
  33. data/lib/interscript/dsl/stage.rb +6 -0
  34. data/lib/interscript/dsl/symbol_mm.rb +11 -0
  35. data/lib/interscript/dsl/tests.rb +12 -0
  36. data/lib/interscript/interpreter.rb +251 -0
  37. data/lib/interscript/node.rb +25 -0
  38. data/lib/interscript/node/alias_def.rb +15 -0
  39. data/lib/interscript/node/dependency.rb +13 -0
  40. data/lib/interscript/node/document.rb +45 -0
  41. data/lib/interscript/node/group.rb +34 -0
  42. data/lib/interscript/node/group/parallel.rb +9 -0
  43. data/lib/interscript/node/group/sequential.rb +2 -0
  44. data/lib/interscript/node/item.rb +52 -0
  45. data/lib/interscript/node/item/alias.rb +42 -0
  46. data/lib/interscript/node/item/any.rb +61 -0
  47. data/lib/interscript/node/item/capture.rb +50 -0
  48. data/lib/interscript/node/item/group.rb +51 -0
  49. data/lib/interscript/node/item/repeat.rb +40 -0
  50. data/lib/interscript/node/item/stage.rb +23 -0
  51. data/lib/interscript/node/item/string.rb +51 -0
  52. data/lib/interscript/node/metadata.rb +18 -0
  53. data/lib/interscript/node/rule.rb +6 -0
  54. data/lib/interscript/node/rule/funcall.rb +18 -0
  55. data/lib/interscript/node/rule/run.rb +15 -0
  56. data/lib/interscript/node/rule/sub.rb +65 -0
  57. data/lib/interscript/node/stage.rb +19 -0
  58. data/lib/interscript/node/tests.rb +15 -0
  59. data/lib/interscript/stdlib.rb +211 -0
  60. data/lib/interscript/utils/regexp_converter.rb +283 -0
  61. data/lib/interscript/version.rb +1 -1
  62. data/requirements.txt +1 -0
  63. metadata +73 -458
  64. data/README.adoc +0 -296
  65. data/aliases.json +0 -1
  66. data/lib/g2pwrapper.py +0 -34
  67. data/lib/interscript/fs.rb +0 -96
  68. data/lib/interscript/mapping.rb +0 -144
  69. data/lib/interscript/opal.rb +0 -196
  70. data/lib/interscript/opal/entrypoint.rb +0 -20
  71. data/lib/interscript/opal/exports.rb +0 -11
  72. data/lib/interscript/opal/maps.js.erb +0 -8
  73. data/lib/model-7 +0 -0
  74. data/lib/tha-pt-b-7 +0 -0
  75. data/maps/acadsin-zho-Hani-Latn-2002.yaml +0 -38916
  76. data/maps/alalc-amh-Ethi-Latn-1997.yaml +0 -513
  77. data/maps/alalc-amh-Ethi-Latn-2011.yaml +0 -138
  78. data/maps/alalc-ara-Arab-Latn-1997.yaml +0 -1287
  79. data/maps/alalc-asm-Deva-Latn-1997.yaml +0 -259
  80. data/maps/alalc-asm-Deva-Latn-2012.yaml +0 -55
  81. data/maps/alalc-aze-Arab-Latn-1997.yaml +0 -376
  82. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +0 -145
  83. data/maps/alalc-bel-Cyrl-Latn-1997.yaml +0 -129
  84. data/maps/alalc-ben-Beng-Latn-1997.yaml +0 -291
  85. data/maps/alalc-ben-Beng-Latn-2017.yaml +0 -130
  86. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +0 -98
  87. data/maps/alalc-div-Thaa-Latn-1997.yaml +0 -211
  88. data/maps/alalc-ell-Grek-Latn-1997.yaml +0 -628
  89. data/maps/alalc-ell-Grek-Latn-2010.yaml +0 -626
  90. data/maps/alalc-guj-Gujr-Latn-1997.yaml +0 -266
  91. data/maps/alalc-guj-Gujr-Latn-2011.yaml +0 -64
  92. data/maps/alalc-hin-Deva-Latn-1997.yaml +0 -303
  93. data/maps/alalc-hin-Deva-Latn-2011.yaml +0 -65
  94. data/maps/alalc-kan-Kana-Latn-1997.yaml +0 -274
  95. data/maps/alalc-kan-Kana-Latn-2011.yaml +0 -63
  96. data/maps/alalc-kat-Geok-Latn-1997.yaml +0 -111
  97. data/maps/alalc-kat-Geor-Latn-1997.yaml +0 -150
  98. data/maps/alalc-kor-Hang-Latn-1997.yaml +0 -98
  99. data/maps/alalc-mal-Mlym-Latn-1997.yaml +0 -303
  100. data/maps/alalc-mal-Mlym-Latn-2012.yaml +0 -73
  101. data/maps/alalc-mar-Deva-Latn-1997.yaml +0 -189
  102. data/maps/alalc-mar-Deva-Latn-2011.yaml +0 -45
  103. data/maps/alalc-mkd-Cyrl-Latn-1997.yaml +0 -114
  104. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +0 -103
  105. data/maps/alalc-mon-Cyrl-Latn-1997.yaml +0 -220
  106. data/maps/alalc-ori-Orya-Latn-1997.yaml +0 -284
  107. data/maps/alalc-ori-Orya-Latn-2011.yaml +0 -67
  108. data/maps/alalc-pan-Guru-Latn-1997.yaml +0 -256
  109. data/maps/alalc-pan-Guru-Latn-2011.yaml +0 -78
  110. data/maps/alalc-per-Arab-Latn-1997.yaml +0 -375
  111. data/maps/alalc-pli-Deva-Latn-2012.yaml +0 -144
  112. data/maps/alalc-pra-Deva-Latn-2012.yaml +0 -47
  113. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +0 -225
  114. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +0 -162
  115. data/maps/alalc-san-Deva-Latn-2012.yaml +0 -241
  116. data/maps/alalc-sin-Sinh-Latn-1997.yaml +0 -292
  117. data/maps/alalc-sin-Sinh-Latn-2011.yaml +0 -71
  118. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +0 -118
  119. data/maps/alalc-srp-Cyrl-Latn-2013.yaml +0 -135
  120. data/maps/alalc-tam-Taml-Latn-1997.yaml +0 -62
  121. data/maps/alalc-tam-Taml-Latn-2011.yaml +0 -58
  122. data/maps/alalc-tel-Telu-Latn-1997.yaml +0 -284
  123. data/maps/alalc-tel-Telu-Latn-2011.yaml +0 -64
  124. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +0 -145
  125. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +0 -16
  126. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +0 -283
  127. data/maps/az-aze-Cyrl-Latn-1939.yaml +0 -105
  128. data/maps/az-aze-Cyrl-Latn-1958.yaml +0 -45
  129. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +0 -174
  130. data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +0 -169
  131. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +0 -292
  132. data/maps/bgn-kor-Hang-Latn-1943.yaml +0 -35
  133. data/maps/bgn-kor-Kore-Latn-1943.yaml +0 -31
  134. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +0 -208
  135. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +0 -208
  136. data/maps/bgnpcgn-amh-Ethi-Latn-1967.yaml +0 -532
  137. data/maps/bgnpcgn-ara-Arab-Latn-1956.yaml +0 -598
  138. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +0 -108
  139. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +0 -111
  140. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +0 -188
  141. data/maps/bgnpcgn-bal-Arab-Latn-2008.yaml +0 -329
  142. data/maps/bgnpcgn-bel-Cyrl-Latn-1979.yaml +0 -289
  143. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +0 -119
  144. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +0 -42
  145. data/maps/bgnpcgn-che-Cyrl-Latn-2008.yaml +0 -184
  146. data/maps/bgnpcgn-div-Thaa-Latn-1988.yaml +0 -75
  147. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +0 -705
  148. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +0 -23
  149. data/maps/bgnpcgn-far-Latn-Latn-1964.yaml +0 -28
  150. data/maps/bgnpcgn-fas-Arab-Latn-1956.yaml +0 -96
  151. data/maps/bgnpcgn-isl-Latn-Latn-1964.yaml +0 -37
  152. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +0 -257
  153. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +0 -131
  154. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +0 -42
  155. data/maps/bgnpcgn-kaz-Cyrl-Latn-1979.yaml +0 -247
  156. data/maps/bgnpcgn-kir-Cyrl-Latn-1979.yaml +0 -218
  157. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +0 -253
  158. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +0 -48
  159. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +0 -48
  160. data/maps/bgnpcgn-kur-Arab-Latn-2007.yaml +0 -249
  161. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +0 -163
  162. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +0 -190
  163. data/maps/bgnpcgn-mon-Cyrl-Latn-1964.yaml +0 -223
  164. data/maps/bgnpcgn-nep-Deva-Latn-2011.yaml +0 -230
  165. data/maps/bgnpcgn-per-Arab-Latn-1958.yaml +0 -338
  166. data/maps/bgnpcgn-prs-Arab-Latn-2007.yaml +0 -673
  167. data/maps/bgnpcgn-prs-Arab-Latn-yaghoubi.yaml +0 -459
  168. data/maps/bgnpcgn-pus-Arab-Latn-1968.yaml +0 -377
  169. data/maps/bgnpcgn-rue-Cyrl-Latn-2016.yaml +0 -168
  170. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +0 -318
  171. data/maps/bgnpcgn-srp-Cyrl-Latn-1962.yaml +0 -73
  172. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +0 -170
  173. data/maps/bgnpcgn-tat-Cyrl-Latn-2007.yaml +0 -220
  174. data/maps/bgnpcgn-tgk-Cyrl-Latn-1994.yaml +0 -240
  175. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +0 -166
  176. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +0 -119
  177. data/maps/bgnpcgn-urd-Arab-Latn-2007.yaml +0 -459
  178. data/maps/bgnpcgn-uzb-Cyrl-Latn-1979.yaml +0 -127
  179. data/maps/bgnpcgn-uzb-Cyrl-Latn-2000.yaml +0 -82
  180. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +0 -7456
  181. data/maps/bis-asm-Beng-Latn-13194-1991.yaml +0 -159
  182. data/maps/bis-ben-Beng-Latn-13194-1991.yaml +0 -156
  183. data/maps/bis-dev-Deva-Latn-13194-1991.yaml +0 -184
  184. data/maps/bis-guj-Gujr-Latn-13194-1991.yaml +0 -181
  185. data/maps/bis-kan-Kana-Latn-13194-1991.yaml +0 -173
  186. data/maps/bis-mlm-Mlym-Latn-13194-1991.yaml +0 -176
  187. data/maps/bis-ori-Orya-Latn-13194-1991.yaml +0 -175
  188. data/maps/bis-pnj-Guru-Latn-13194-1991.yaml +0 -175
  189. data/maps/bis-tel-Telu-Latn-13194-1991.yaml +0 -170
  190. data/maps/bis-tml-Taml-Latn-13194-1991.yaml +0 -155
  191. data/maps/by-bel-Cyrl-Latn-1998.yaml +0 -172
  192. data/maps/by-bel-Cyrl-Latn-2007.yaml +0 -115
  193. data/maps/din-grc-Grek-Latn-31634-2011-t1.yaml +0 -899
  194. data/maps/din-hin-Deva-Latn-33904-2018.yaml +0 -100
  195. data/maps/din-kat-Geor-Latn-32707-2010.yaml +0 -145
  196. data/maps/din-mar-Deva-Latn-33904-2018.yaml +0 -84
  197. data/maps/din-nep-Deva-Latn-33904-2018.yaml +0 -119
  198. data/maps/din-pli-Deva-Latn-33904-2018.yaml +0 -75
  199. data/maps/din-pra-Deva-Latn-33904-2018.yaml +0 -63
  200. data/maps/din-san-Deva-Latn-33904-2018.yaml +0 -338
  201. data/maps/din-tam-Taml-Latn-33903-2016.yaml +0 -213
  202. data/maps/dos-nep-Deva-Latn-1997.yaml +0 -47
  203. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +0 -684
  204. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +0 -680
  205. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +0 -19
  206. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +0 -31
  207. data/maps/ggg-kat-Geor-Latn-2002.yaml +0 -92
  208. data/maps/gki-bel-Cyrl-Latn-1992.yaml +0 -33
  209. data/maps/gki-bel-Cyrl-Latn-2000.yaml +0 -201
  210. data/maps/gost-rus-Cyrl-Latn-16876-71-1983.yaml +0 -190
  211. data/maps/gost-rus-Cyrl-Latn-7.79-2000-2002.yaml +0 -157
  212. data/maps/hk-yue-Hani-Latn-1888.yaml +0 -38497
  213. data/maps/icao-bel-Cyrl-Latn-9303.yaml +0 -136
  214. data/maps/icao-bul-Cyrl-Latn-9303.yaml +0 -118
  215. data/maps/icao-fas-Arab-Latn-9303.yaml +0 -103
  216. data/maps/icao-heb-Hebr-Latn-9303.yaml +0 -151
  217. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +0 -117
  218. data/maps/icao-rus-Cyrl-Latn-9303.yaml +0 -117
  219. data/maps/icao-srp-Cyrl-Latn-9303.yaml +0 -117
  220. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +0 -119
  221. data/maps/iso-ara-Arab-Latn-233-1984.yaml +0 -323
  222. data/maps/iso-asm-Beng-Latn-15919-2001.yaml +0 -75
  223. data/maps/iso-ben-Beng-Latn-15919-2001.yaml +0 -175
  224. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +0 -613
  225. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +0 -44
  226. data/maps/iso-guj-Gujr-Latn-15919-2001.yaml +0 -220
  227. data/maps/iso-hin-Deva-Latn-15919-2001.yaml +0 -87
  228. data/maps/iso-inc-Deva-Latn-15919-2001.yaml +0 -61
  229. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +0 -66
  230. data/maps/iso-kan-Kana-Latn-15919-2001.yaml +0 -220
  231. data/maps/iso-kat-Geor-Latn-9984-1996.yaml +0 -145
  232. data/maps/iso-kor-Hang-Latn-1996-method1.yaml +0 -240
  233. data/maps/iso-kor-Hang-Latn-1996-method2.yaml +0 -226
  234. data/maps/iso-mal-Mlym-Latn-15919-2001.yaml +0 -281
  235. data/maps/iso-mar-Deva-Latn-15919-2001.yaml +0 -75
  236. data/maps/iso-nep-Deva-Latn-15919-2001.yaml +0 -87
  237. data/maps/iso-ori-Orya-Latn-15919-2001.yaml +0 -193
  238. data/maps/iso-pan-Guru-Latn-15919-2001.yaml +0 -222
  239. data/maps/iso-pli-Beng-Latn-15919-2001.yaml +0 -73
  240. data/maps/iso-pli-Deva-Latn-15919-2001.yaml +0 -74
  241. data/maps/iso-pli-Sinh-Latn-15919-2001.yaml +0 -219
  242. data/maps/iso-pli-Thai-Latn-15919-2001.yaml +0 -55
  243. data/maps/iso-pra-Deva-Latn-15919-2001.yaml +0 -59
  244. data/maps/iso-prs-Arab-Latn-233-3-1999.yaml +0 -366
  245. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +0 -271
  246. data/maps/iso-san-Deva-Latn-15919-2001.yaml +0 -220
  247. data/maps/iso-tam-Taml-Latn-15919-2001.yaml +0 -159
  248. data/maps/iso-tel-Telu-Latn-15919-2001.yaml +0 -220
  249. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +0 -109
  250. data/maps/kp-kor-Hang-Latn-2002.yaml +0 -909
  251. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +0 -44820
  252. data/maps/masm-mon-Cyrl-Latn-5217-2012.yaml +0 -163
  253. data/maps/masm-mon-Latn-Cyrl-5217-2012.yaml +0 -200
  254. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +0 -411
  255. data/maps/moct-kor-Hang-Latn-2000.yaml +0 -807
  256. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +0 -541
  257. data/maps/mv-div-Thaa-Latn-1987.yaml +0 -200
  258. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +0 -225
  259. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +0 -63
  260. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +0 -109
  261. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +0 -37
  262. data/maps/odni-ara-Arab-Latn-2004.yaml +0 -137
  263. data/maps/odni-ara-Arab-Latn-2015.yaml +0 -315
  264. data/maps/odni-aze-Cyrl-Latn-2015.yaml +0 -144
  265. data/maps/odni-bel-Cyrl-Latn-2015.yaml +0 -148
  266. data/maps/odni-bul-Cyrl-Latn-2005.yaml +0 -90
  267. data/maps/odni-bul-Cyrl-Latn-2015.yaml +0 -96
  268. data/maps/odni-che-Cyrl-Latn-2015.yaml +0 -169
  269. data/maps/odni-fas-Arab-Latn-2004.yaml +0 -276
  270. data/maps/odni-fas-Arab-Latn-2015.yaml +0 -406
  271. data/maps/odni-hin-Deva-Latn-2004.yaml +0 -182
  272. data/maps/odni-hin-Deva-Latn-2015.yaml +0 -258
  273. data/maps/odni-kat-Geor-Latn-2015.yaml +0 -87
  274. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +0 -148
  275. data/maps/odni-kir-Cyrl-Latn-2015.yaml +0 -136
  276. data/maps/odni-kor-Hang-Latn-2015.yaml +0 -375
  277. data/maps/odni-mkd-Cyrl-Latn-2005.yaml +0 -21
  278. data/maps/odni-mkd-Cyrl-Latn-2015.yaml +0 -122
  279. data/maps/odni-prs-Arab-Latn-2004.yaml +0 -123
  280. data/maps/odni-prs-Arab-Latn-2015.yaml +0 -228
  281. data/maps/odni-rus-Cyrl-Latn-2015.yaml +0 -77
  282. data/maps/odni-srp-Cyrl-Latn-2005.yaml +0 -36
  283. data/maps/odni-srp-Cyrl-Latn-2015.yaml +0 -129
  284. data/maps/odni-tat-Cyrl-Latn-2015.yaml +0 -142
  285. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +0 -148
  286. data/maps/odni-tuk-Cyrl-Latn-2015.yaml +0 -170
  287. data/maps/odni-uig-Cyrl-Latn-2015.yaml +0 -138
  288. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +0 -161
  289. data/maps/odni-urd-Arab-Latn-2015.yaml +0 -221
  290. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +0 -166
  291. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +0 -90
  292. data/maps/royin-tha-Thai-Latn-1968.yaml +0 -183
  293. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +0 -180
  294. data/maps/royin-tha-Thai-Latn-1999.yaml +0 -80
  295. data/maps/sac-zho-Hans-Latn-1979.yaml +0 -24763
  296. data/maps/sasm-mon-Mong-Latn-general-1978.yaml +0 -389
  297. data/maps/sasm-mon-Mong-Latn-phonetic-1978.yaml +0 -354
  298. data/maps/ses-ara-Arab-Latn-1930.yaml +0 -283
  299. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +0 -222
  300. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +0 -197
  301. data/maps/ua-ukr-Cyrl-Latn-2007.yaml +0 -75
  302. data/maps/ua-ukr-Cyrl-Latn-2010.yaml +0 -192
  303. data/maps/un-amh-Ethi-Latn-2016.yaml +0 -602
  304. data/maps/un-ara-Arab-Latn-1971.yaml +0 -139
  305. data/maps/un-ara-Arab-Latn-1972.yaml +0 -159
  306. data/maps/un-ara-Arab-Latn-2017.yaml +0 -420
  307. data/maps/un-asm-Beng-Latn-1972.yaml +0 -223
  308. data/maps/un-bel-Cyrl-Latn-2007.yaml +0 -114
  309. data/maps/un-ben-Beng-Latn-2016.yaml +0 -534
  310. data/maps/un-ell-Grek-Latn-1987-phonetic.yaml +0 -780
  311. data/maps/un-ell-Grek-Latn-1987-tl.yaml +0 -31
  312. data/maps/un-ell-Grek-Latn-1987-ts.yaml +0 -19
  313. data/maps/un-guj-Gujr-Latn-1972.yaml +0 -229
  314. data/maps/un-hin-Deva-Latn-2016.yaml +0 -316
  315. data/maps/un-kan-Kana-Latn-2016.yaml +0 -254
  316. data/maps/un-mal-Mlym-Latn-1972.yaml +0 -251
  317. data/maps/un-mar-Deva-Latn-2016.yaml +0 -102
  318. data/maps/un-mon-Mong-Latn-general-2013.yaml +0 -264
  319. data/maps/un-mon-Mong-Latn-phonetic-2013.yaml +0 -264
  320. data/maps/un-nep-Deva-Latn-1972.yaml +0 -269
  321. data/maps/un-nep-Deva-Latn-2013.yaml +0 -74
  322. data/maps/un-ori-Orya-Latn-1972.yaml +0 -247
  323. data/maps/un-pan-Guru-Latn-1972.yaml +0 -402
  324. data/maps/un-prs-Arab-Latn-1967.yaml +0 -236
  325. data/maps/un-rus-Cyrl-Latn-1987.yaml +0 -166
  326. data/maps/un-tam-Taml-Latn-1972.yaml +0 -194
  327. data/maps/un-tel-Telu-Latn-1972.yaml +0 -270
  328. data/maps/un-ukr-Cyrl-Latn-1998.yaml +0 -53
  329. data/maps/un-ukr-Cyrl-Latn-2012.yaml +0 -162
  330. data/maps/un-urd-Arab-Latn-1972.yaml +0 -405
  331. data/maps/var-amh-Ethi-Latn-eae-2003.yaml +0 -466
  332. data/maps/var-gez-Ethi-Latn-eae-2003.yaml +0 -76
  333. data/maps/var-hin-Deva-Latn-hunterian-1872.yaml +0 -221
  334. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +0 -406
  335. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +0 -386
  336. data/maps/var-kor-Hang-Hang-jamo.yaml +0 -11193
  337. data/maps/var-kor-Hang-Latn-mr-1939.yaml +0 -1054
  338. data/maps/var-kor-Kore-Hang-2013.yaml +0 -59754
  339. data/maps/var-kor-Kore-Latn-mr-1939.yaml +0 -36
  340. data/maps/var-mar-Deva-Latn-hunterian-1872.yaml +0 -43
  341. data/maps/var-mon-Mong-Latn-1930.yaml +0 -102
  342. data/maps/var-mon-Mong-Latn-lessing.yaml +0 -272
  343. data/maps/var-mon-Mong-Latn-vpmc.yaml +0 -274
  344. data/maps/var-pra-Deva-Latn-iast-1912.yaml +0 -30
  345. data/maps/var-san-Deva-Latn-iast-1912.yaml +0 -149
  346. data/maps/var-tha-Thai-Thai-phonemic.yaml +0 -59
  347. data/maps/var-tha-Thai-Zsym-ipa.yaml +0 -301
  348. data/maps/var-zho-Hani-Latn-wd-1979.yaml +0 -38912
  349. data/spec/interscript/filenames_spec.rb +0 -21
  350. data/spec/interscript/mapping_spec.rb +0 -42
  351. data/spec/interscript_spec.rb +0 -37
  352. data/spec/spec_helper.rb +0 -3
@@ -1,109 +0,0 @@
1
- ---
2
- authority_id: iso
3
- id: 11940-1998
4
- language: iso-639-2:tha
5
- source_script: Thai
6
- destination_script: Latn
7
- name: ISO 11940:1998 Information and documentation -- Transliteration of Thai
8
- url: https://www.iso.org/standard/20574.html
9
- creation_date: 1998
10
- adoption_date:
11
- description:
12
-
13
- notes:
14
-
15
- tests:
16
- - source: 'ภาษาไทย'
17
- expected: 'p̣hās̛̄āịthy'
18
- - source: 'เชียงใหม่'
19
- expected: 'echīyngıh̄m̀'
20
-
21
- map:
22
-
23
- characters:
24
- '\u0e01': 'k' # ก THAI CHARACTER KO KAI
25
- '\u0e02': 'k̄h' # ข THAI CHARACTER KHO KHAI
26
- '\u0e03': 'ḳ̄h' # ฃ THAI CHARACTER KHO KHUAT
27
- '\u0e04': 'kh' # ค THAI CHARACTER KHO KHWAI
28
- '\u0e05': 'k̛h' # ฅ THAI CHARACTER KHO KHON
29
- '\u0e06': 'ḳh' # ฆ THAI CHARACTER KHO RAKHANG
30
- '\u0e07': 'ng' # ง THAI CHARACTER NGO NGU
31
- '\u0e08': 'c' # จ THAI CHARACTER CHO CHAN
32
- '\u0e09': 'c̄h' # ฉ THAI CHARACTER CHO CHING
33
- '\u0e0a': 'ch' # ช THAI CHARACTER CHO CHANG
34
- '\u0e0b': 's' # ซ THAI CHARACTER SO SO
35
- '\u0e0c': 'c̣h' # ฌ THAI CHARACTER CHO CHOE
36
- '\u0e0d': 'ỵ' # ญ THAI CHARACTER YO YING
37
- '\u0e0e': 'ḍ' # ฎ THAI CHARACTER DO CHADA
38
- '\u0e0f': 'ṭ' # ฏ THAI CHARACTER TO PATAK
39
- '\u0e10': 'ṭ̄h' # ฐ THAI CHARACTER THO THAN
40
- '\u0e11': 'ṯh' # ฑ THAI CHARACTER THO NANGMONTHO
41
- '\u0e12': 't̛h' # ฒ THAI CHARACTER THO PHUTHAO
42
- '\u0e13': 'ṇ' # ณ THAI CHARACTER NO NEN
43
- '\u0e14': 'd' # ด THAI CHARACTER DO DEK
44
- '\u0e15': 't' # ต THAI CHARACTER TO TAO
45
- '\u0e16': 't̄h' # ถ THAI CHARACTER THO THUNG
46
- '\u0e17': 'th' # ท THAI CHARACTER THO THAHAN
47
- '\u0e18': 'ṭh' # ธ THAI CHARACTER THO THONG
48
- '\u0e19': 'n' # น THAI CHARACTER NO NU
49
- '\u0e1a': 'b' # บ THAI CHARACTER BO BAIMAI
50
- '\u0e1b': 'p' # ป THAI CHARACTER PO PLA
51
- '\u0e1c': 'p̄h' # ผ THAI CHARACTER PHO PHUNG
52
- '\u0e1d': 'f̄' # ฝ THAI CHARACTER FO FA
53
- '\u0e1e': 'ph' # พ THAI CHARACTER PHO PHAN
54
- '\u0e1f': 'f' # ฟ THAI CHARACTER FO FAN
55
- '\u0e20': 'p̣h' # ภ THAI CHARACTER PHO SAMPHAO
56
- '\u0e21': 'm' # ม THAI CHARACTER MO MA
57
- '\u0e22': 'y' # ย THAI CHARACTER YO YAK
58
- '\u0e23': 'r' # ร THAI CHARACTER RO RUA
59
- '\u0e24': 'v' # ฤ THAI CHARACTER RU
60
- '\u0e25': 'l' # ล THAI CHARACTER LO LING
61
- '\u0e26': 'ł' # ฦ THAI CHARACTER LU
62
- '\u0e27': 'w' # ว THAI CHARACTER WO WAEN
63
- '\u0e28': 'ṣ̄' # ศ THAI CHARACTER SO SALA
64
- '\u0e29': 's̛̄' # ษ THAI CHARACTER SO RUSI
65
- '\u0e2a': 's̄' # ส THAI CHARACTER SO SUA
66
- '\u0e2b': 'h̄' # ห THAI CHARACTER HO HIP
67
- '\u0e2c': 'ḷ' # ฬ THAI CHARACTER LO CHULA
68
- '\u0e2d': 'x' # อ THAI CHARACTER O ANG
69
- '\u0e2e': 'ḥ' # ฮ THAI CHARACTER HO NOKHUK
70
- '\u0e2f': 'ǂ' # ฯ THAI CHARACTER PAIYANNOI
71
- '\u0e30': 'a' # ะ THAI CHARACTER SARA A
72
- '\u0e31': 'ạ' # ั THAI CHARACTER MAI HAN-AKAT
73
- '\u0e32': 'ā' # า THAI CHARACTER SARA AA
74
- '\u0e33': 'å' # ำ THAI CHARACTER SARA AM
75
- '\u0e34': 'i' # ิ THAI CHARACTER SARA I
76
- '\u0e35': 'ī' # ี THAI CHARACTER SARA II
77
- '\u0e36': 'ụ' # ึ THAI CHARACTER SARA UE
78
- '\u0e37': 'ụ̄' # ื THAI CHARACTER SARA UEE
79
- '\u0e38': 'u' # ุ THAI CHARACTER SARA U
80
- '\u0e39': 'ū' # ู THAI CHARACTER SARA UU
81
- '\u0e3a': '–̥' # ฺ THAI CHARACTER PHINTHU
82
- '\u0e40': 'e' # เ THAI CHARACTER SARA E
83
- '\u0e41': 'æ' # แ THAI CHARACTER SARA AE
84
- '\u0e42': 'o' # โ THAI CHARACTER SARA O
85
- '\u0e43': 'ı' # ใ THAI CHARACTER SARA AI MAIMUAN
86
- '\u0e44': 'ị' # ไ THAI CHARACTER SARA AI MAIMALAI
87
- '\u0e45': 'ɨ' # ๅ THAI CHARACTER LAKKHANGYAO
88
- '\u0e46': '«' # ๆ THAI CHARACTER MAIYAMOK
89
- '\u0e47': '̆' # ็ THAI CHARACTER MAITAIKHU
90
- '\u0e48': '̀' # ่ THAI CHARACTER MAI EK
91
- '\u0e49': '̂' # ้ THAI CHARACTER MAI THO
92
- '\u0e4a': '́' # ๊ THAI CHARACTER MAI TRI
93
- '\u0e4b': '̌' # ๋ THAI CHARACTER MAI CHATTAWA
94
- '\u0e4c': '̒' # ์ THAI CHARACTER THANTHAKHAT
95
- '\u0e4d': '̊' # ํ THAI CHARACTER NIKHAHIT
96
- '\u0e4e': '~' # ๎ THAI CHARACTER YAMAKKAN
97
- '\u0e4f': '§' # ๏ THAI CHARACTER FONGMAN
98
- '\u0e50': '0' # ๐ THAI DIGIT ZERO
99
- '\u0e51': '1' # ๑ THAI DIGIT ONE
100
- '\u0e52': '2' # ๒ THAI DIGIT TWO
101
- '\u0e53': '3' # ๓ THAI DIGIT THREE
102
- '\u0e54': '4' # ๔ THAI DIGIT FOUR
103
- '\u0e55': '5' # ๕ THAI DIGIT FIVE
104
- '\u0e56': '6' # ๖ THAI DIGIT SIX
105
- '\u0e57': '7' # ๗ THAI DIGIT SEVEN
106
- '\u0e58': '8' # ๘ THAI DIGIT EIGHT
107
- '\u0e59': '9' # ๙ THAI DIGIT NINE
108
- '\u0e5a': 'ǁ' # ๚ THAI CHARACTER ANGKHANKHU
109
- '\u0e5b': '»' # ๛ THAI CHARACTER KHOMUT
@@ -1,909 +0,0 @@
1
- ---
2
- authority_id: kp
3
- id: 2002
4
- language: iso-639-2:kor
5
- source_script: Hang
6
- destination_script: Latn
7
- name: Korean Democratic People's Republic of Korea Korean System (2002)
8
- alias:
9
- ogc11122:
10
- code: kor_Hang2Latn_GKN_2002
11
- description: Korean Democratic People's Republic of Korea Korean 2002 System
12
- url: https://unstats.un.org/unsd/geoinfo/UNGEGN/docs/8th-uncsgn-docs/inf/8th_UNCSGN_econf.94_INF.72.pdf
13
- creation_date:
14
- adoption_date:
15
- description:
16
-
17
- notes:
18
-
19
- - Here is a list of features that are listed in the guideline but
20
- not unimplemented in this map.
21
-
22
- - Note 3.2
23
- The combination n+r is romanized as -ll- only when it is "considered
24
- to be longstanding". In this implementation, all n+r will be romanized as
25
- -ll- for the sake of simplicity.
26
-
27
- - Note 3.3
28
- Sai-siot (Connective ㅅ) is not written out in DPRK Korean, but it is
29
- supposed to be romanized. Sai-siot is not predictable.
30
- This has not been implemented.
31
-
32
- - Note 4.1
33
- Hyphen "may be inserted in case of a possible confusion in pronunciation".
34
- Except for the n-g combination, this has not been implemented.
35
-
36
- - Note 4.4
37
- Geographical names "may be transliterated or translated". In this map,
38
- all names will be transliterated, not translated. Numerals will not be
39
- transliterated.
40
-
41
- - Note 4.5
42
- Spacing rule for personal names has not been implemented.
43
-
44
- - Note 4.7
45
- Optional omission of diacritics and optional simplification of
46
- KK, TT, PP, SS, JJ to single letter have not been implemented.
47
-
48
- tests:
49
- # Note1.5
50
- - source: "우리산"
51
- expected: "Urisan"
52
-
53
- # Note2.1
54
- - source: "교구동"
55
- expected: "Kyogu-dong"
56
- - source: "초도"
57
- expected: "Chodo"
58
- - source: "고비리"
59
- expected: "Kobi-ri"
60
- - source: "강동"
61
- expected: "Kangdong"
62
- - source: "금교"
63
- expected: "Kümgyo"
64
- - source: "칠보산"
65
- expected: "Chilbosan"
66
-
67
- # Note2.2
68
- - source: "곡산"
69
- expected: "Koksan"
70
- - source: "갑산"
71
- expected: "Kapsan"
72
- - source: "앞산"
73
- expected: "Apsan"
74
- - source: "삿갓봉"
75
- expected: "Satkatbong"
76
-
77
- # Note2.3
78
- - source: "울산"
79
- expected: "Ulsan"
80
- # - source: "은률"
81
- # expected: "Ünryul" # This is an exceptino to note 3.1
82
-
83
- # Note2.4
84
- - source: "닭섬"
85
- expected: "Taksŏm"
86
- - source: "물곬"
87
- expected: "Mulkol"
88
- - source: "붉은바위"
89
- expected: "Pulgünbawi"
90
- - source: "앉은바위"
91
- expected: "Anjünbawi"
92
-
93
- # Note3.1
94
- - source: "백마산"
95
- expected: "Paengmasan"
96
- - source: "꽃마을"
97
- expected: "Kkonmaül"
98
- - source: "압록강"
99
- expected: "Amrokgang"
100
-
101
- # Note3.2
102
- - source: "천리마"
103
- expected: "Chŏllima"
104
- # - source: "한나산" # Typo in the original document
105
- - source: "한라산"
106
- expected: "Hallasan"
107
- - source: "전라도"
108
- expected: "Jŏlla-do"
109
-
110
- # Note3.3
111
-
112
- # - source: "기대산" # ROK: 깃대산
113
- # expected: "Kittaesan"
114
- # - source: "새별읍" # ROK: 샛별
115
- # expected: "Saeppyŏl-üp" # hyphen
116
- # - source: "뒤문" # ROK: 뒷문
117
- # expected: "Twinmun"
118
-
119
- # Note4.1 - Separator (OPTIONAL)
120
-
121
- - source: "앞-언덕"
122
- expected: "Ap-ŏndŏk"
123
- - source: "부억-안골"
124
- expected: "Puŏk-angol"
125
- - source: "판교"
126
- expected: "Phan-gyo"
127
- # - source: "방어동"
128
- # expected: "Pang-ŏ-dong"
129
-
130
- # Note4.2
131
- - source: "평안남도 평성시"
132
- expected: "Phyŏngannam-do Phyŏngsŏng-si"
133
-
134
- # Note4.3
135
- - source: "3.1동"
136
- expected: "3.1-dong"
137
-
138
- # Note4.6
139
- - source: "평양"
140
- expected: "Pyongyang"
141
-
142
- # Fix a problem with a trailing comma
143
- - source: "구현, 글꼴, 문자 배열, 다국어 컴퓨팅."
144
- expected: "Kuhyŏn, Külkkol, Munja Paeyŏl, Tagugŏ Khŏmphyuthing."
145
-
146
- map:
147
- character_separator: ""
148
- word_separator: " "
149
- title_case: True
150
- inherit: "var-kor-Hang-Hang-jamo"
151
-
152
- rules:
153
-
154
- # This system does not require transliteration of numerals
155
- # convert numbers to space + Hangul
156
- # - pattern: "([^0-9 ])(?=[0-9])"
157
- # result: "\\1 "
158
- # - pattern: "1"
159
- # result: "일"
160
- # - pattern: "2"
161
- # result: "이"
162
- # - pattern: "3"
163
- # result: "삼"
164
- # - pattern: "4"
165
- # result: "사"
166
- # - pattern: "5"
167
- # result: "오"
168
- # - pattern: "6"
169
- # result: "육"
170
- # - pattern: "7"
171
- # result: "칠"
172
- # - pattern: "8"
173
- # result: "팔"
174
- # - pattern: "9"
175
- # result: "구"
176
-
177
- # Use voiced onset for geographical features
178
- # Note 4.3.1
179
- - pattern: "(?<=..)산( |$)"
180
- result: "san\\1"
181
- - pattern: "(?<=..)거리( |$)"
182
- result: "gŏri\\1"
183
- - pattern: "(?<=..)고개( |$)"
184
- result: "gogae\\1"
185
- - pattern: "(?<=..)대( |$)"
186
- result: "dae\\1"
187
- - pattern: "(?<=..)봉( |$)"
188
- result: "bong\\1"
189
- - pattern: "(?<=..)교( |$)"
190
- result: "gyo\\1"
191
- - pattern: "(?<=..)골( |$)"
192
- result: "gol\\1"
193
- - pattern: "(?<=..)각( |$)"
194
- result: "gak\\1"
195
- - pattern: "(?<=..)벌( |$)"
196
- result: "bŏl\\1"
197
- - pattern: "(?<=..)관( |$)"
198
- result: "gwan\\1"
199
- - pattern: "(?<=..)곶( |$)"
200
- result: "got\\1"
201
- - pattern: "(?<=..)강( |$)"
202
- result: "gang\\1"
203
-
204
- # add hyphen in front of generics
205
- # Only add hyphen if the name is three syllables or longer
206
- - pattern: "(?<=..)도( |$)"
207
- result: "-do\\1"
208
- - pattern: "(?<=..)시( |$)"
209
- result: "-si\\1"
210
- - pattern: "(?<=..)군( |$)"
211
- result: "-gun\\1"
212
- - pattern: "(?<=..)면( |$)"
213
- result: "-myŏn\\1"
214
- - pattern: "(?<=..)리( |$)"
215
- result: "-ri\\1"
216
- - pattern: "(?<=..)동( |$)"
217
- result: "-dong\\1"
218
- - pattern: "(?<=..)구( |$)"
219
- result: "-gu\\1"
220
- - pattern: "(?<=..)구역( |$)"
221
- result: "-guyŏk\\1"
222
-
223
- # The name Pyongyang will be an exception
224
- # Not Phyŏngyang
225
-
226
- - pattern: "평양"
227
- result: "Pyongyang"
228
-
229
- postrules:
230
-
231
- # Add space to the two ends of the string for easier word boundary handling
232
- - pattern: "^"
233
- result: " "
234
- - pattern: "$"
235
- result: " "
236
-
237
- # HANGUL JONGSEONG SSANGKIYEOK
238
- - pattern: "ᆩᄋ"
239
- result: "ᆨᄁ"
240
- - pattern: "ᆩ"
241
- result: "ᆨ"
242
-
243
- # HANGUL JONGSEONG SSANGKIYEOK
244
- - pattern: "ᆪᄋ"
245
- result: "ᆨᄉ"
246
- - pattern: "ᆪ"
247
- result: "ᆨ"
248
-
249
- # HANGUL JONGSEONG NIEUN-CIEUC
250
- - pattern: "ᆬᄋ"
251
- result: "ᆫᄌ"
252
- - pattern: "ᆬ"
253
- result: "ᆫ"
254
-
255
- # HANGUL JONGSEONG NIEUN-CIEUC
256
- - pattern: "ᆭᄀ"
257
- result: "ᆫᄏ"
258
- - pattern: "ᆭᄃ"
259
- result: "ᆫᄐ"
260
- - pattern: "ᆭᄇ"
261
- result: "ᆫᄑ"
262
- - pattern: "ᆭᄌ"
263
- result: "ᆫᄎ"
264
- - pattern: "ᆭ"
265
- result: "ᆫ"
266
-
267
- # HANGUL JONGSEONG TIEUT
268
- - pattern: "ᆮ(?=[ᄀᄁᄂᄃᄄᄅᄆᄇᄈᄉᄊᄌᄍᄎᄏᄐᄑᄒ])"
269
- result: "ᆺ"
270
-
271
- # HANGUL JONGSEONG RIEUL-SIOS
272
- - pattern: "ᆳᄋ"
273
- result: "ᆯᄉ"
274
- - pattern: "ᆳ"
275
- result: "ᆯ"
276
-
277
- # HANGUL JONGSEONG RIEUL-THIEUTH
278
- - pattern: "ᆴᄋ"
279
- result: "ᆯᄐ"
280
- - pattern: "ᆴ"
281
- result: "ᆯ"
282
-
283
- # HANGUL JONGSEONG RIEUL-PHIEUPH
284
- - pattern: "ᆵᄋ"
285
- result: "ᆯᄑ"
286
- - pattern: "ᆵ(?=[ᄃᄄᄐ])"
287
- result: "ᆯ"
288
- - pattern: "ᆵ"
289
- result: "ᄇ"
290
-
291
- # HANGUL JONGSEONG RIEUL-HIEUH
292
- - pattern: "ᆶᄀ"
293
- result: "ᆯᄏ"
294
- - pattern: "ᆶᄃ"
295
- result: "ᆯᄐ"
296
- - pattern: "ᆶᄇ"
297
- result: "ᆯᄑ"
298
- - pattern: "ᆶᄌ"
299
- result: "ᆯᄎ"
300
- - pattern: "ᆶ"
301
- result: "ᆯ"
302
-
303
- # HANGUL JONGSEONG PIEUP-SIOS
304
- - pattern: "ᆹᄋ"
305
- result: "ᄇᄉ"
306
- - pattern: "ᆹ"
307
- result: "ᄇ"
308
-
309
- # HANGUL JONGSEONG SSANG-SIOS
310
- - pattern: "ᆻᄋ"
311
- result: "ᆺᄊ"
312
- - pattern: "ᆻ"
313
- result: "ᆺ"
314
-
315
- # HANGUL JONGSEONG CIEUC
316
- - pattern: "ᆽᄋ"
317
- result: "ᆺᄌ"
318
- - pattern: "ᆽ"
319
- result: "ᆺ"
320
-
321
- # HANGUL JONGSEONG CHIEUCH
322
- - pattern: "ᆾᄋ"
323
- result: "ᆺᄎ"
324
- - pattern: "ᆾ"
325
- result: "ᆺ"
326
-
327
- # HANGUL JONGSEONG KHIEUKH
328
- - pattern: "ᆿᄋ"
329
- result: "ᆨᄏ"
330
- - pattern: "ᆿ"
331
- result: "ᆨ"
332
-
333
- # HANGUL JONGSEONG THIEUTH
334
- - pattern: "ᇀᄋ"
335
- result: "ᆺᄐ"
336
- - pattern: "ᇀ"
337
- result: "ᆺ"
338
-
339
- # HANGUL JONGSEONG PHIEUPH
340
- - pattern: "ᇁᄋ"
341
- result: "ᆸᄑ"
342
- - pattern: "ᇁ"
343
- result: "ᆸ"
344
-
345
- # HANGUL JONGSEONG HIEUH
346
- - pattern: "ᇂᄀ"
347
- result: "ᄏ"
348
- - pattern: "ᇂᄃ"
349
- result: "ᄐ"
350
- - pattern: "ᇂᄇ"
351
- result: "ᄑ"
352
- - pattern: "ᇂᄌ"
353
- result: "ᄎ"
354
- - pattern: "ᇂ"
355
- result: ""
356
-
357
- # From Unicode Chart
358
- # https://github.com/unicode-org/cldr/blob/master/common/transforms/Korean-Latin-BGN.xml
359
- - pattern: "ᆨᄀ"
360
- result: "kk" # HANGUL JONGSEONG KIYEOK + CHOSEONG KIYEOK
361
- - pattern: "ᆨᄂ"
362
- result: "ngn" # HANGUL JONGSEONG KIYEOK + CHOSEONG NIEUN
363
- - pattern: "ᆨᄃ"
364
- result: "kt" # HANGUL JONGSEONG KIYEOK + CHOSEONG TIEUT
365
- - pattern: "ᆨᄅ"
366
- result: "ngn" # HANGUL JONGSEONG KIYEOK + CHOSEONG RIEUL
367
- - pattern: "ᆨᄆ"
368
- result: "ngm" # HANGUL JONGSEONG KIYEOK + CHOSEONG MIEUM
369
- - pattern: "ᆨᄇ"
370
- result: "kp" # HANGUL JONGSEONG KIYEOK + CHOSEONG PIEUP
371
- - pattern: "ᆨᄉ"
372
- result: "ks" # HANGUL JONGSEONG KIYEOK + CHOSEONG SIOS
373
- - pattern: "ᆨᄋ"
374
- result: "g" # HANGUL JONGSEONG KIYEOK + CHOSEONG IEUNG
375
- - pattern: "ᆨᄌ"
376
- result: "kj" # HANGUL JONGSEONG KIYEOK + CHOSEONG CIEUC
377
- - pattern: "ᆨᄎ"
378
- result: "kch" # HANGUL JONGSEONG KIYEOK + CHOSEONG CHIEUCH
379
- - pattern: "ᆨᄏ"
380
- result: "kkh" # HANGUL JONGSEONG KIYEOK + CHOSEONG KHIEUKH # NOTE: the dash is always skipped
381
- - pattern: "ᆨᄐ"
382
- result: "kth" # HANGUL JONGSEONG KIYEOK + CHOSEONG THIEUTH
383
- - pattern: "ᆨᄑ"
384
- result: "kp" # HANGUL JONGSEONG KIYEOK + CHOSEONG PHIEUPH
385
- - pattern: "ᆨᄒ"
386
- result: "kh" # HANGUL JONGSEONG KIYEOK + CHOSEONG HIEUH
387
- - pattern: "ᆨᄁ"
388
- result: "kkk" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGKIYEOK
389
- - pattern: "ᆨᄄ"
390
- result: "ktt" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGTIEUT
391
- - pattern: "ᆨᄈ"
392
- result: "kpp" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGPIEUP
393
- - pattern: "ᆨᄊ"
394
- result: "kss" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGSIOS
395
- - pattern: "ᆨᄍ"
396
- result: "kjj" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGCIEUC
397
- - pattern: "ᆫᄀ"
398
- result: "n-g" # HANGUL JONGSEONG NIEUN + CHOSEONG KIEUK
399
- - pattern: "ᆫᄂ"
400
- result: "nn" # HANGUL JONGSEONG NIEUN + CHOSEONG NIEUN
401
- - pattern: "ᆫᄃ"
402
- result: "nd" # HANGUL JONGSEONG NIEUN + CHOSEONG TIEUT
403
- - pattern: "ᆫᄅ"
404
- result: "ll" # HANGUL JONGSEONG NIEUN + CHOSEONG RIEUL
405
- - pattern: "ᆫᄆ"
406
- result: "nm" # HANGUL JONGSEONG NIEUN + CHOSEONG MIEUM
407
- - pattern: "ᆫᄇ"
408
- result: "nb" # HANGUL JONGSEONG NIEUN + CHOSEONG PIEUP
409
- - pattern: "ᆫᄉ"
410
- result: "ns" # HANGUL JONGSEONG NIEUN + CHOSEONG SIOS
411
- - pattern: "ᆫᄋ"
412
- result: "n" # HANGUL JONGSEONG NIEUN + CHOSEONG IEUNG
413
- - pattern: "ᆫᄌ"
414
- result: "nj" # HANGUL JONGSEONG NIEUN + CHOSEONG CIEUC
415
- - pattern: "ᆫᄎ"
416
- result: "nch" # HANGUL JONGSEONG NIEUN + CHOSEONG CHIEUCH
417
- - pattern: "ᆫᄏ"
418
- result: "nkh" # HANGUL JONGSEONG NIEUN + CHOSEONG KHIEUKH
419
- - pattern: "ᆫᄐ"
420
- result: "nth" # HANGUL JONGSEONG NIEUN + CHOSEONG THIEUTH
421
- - pattern: "ᆫᄑ"
422
- result: "nph" # HANGUL JONGSEONG NIEUN + CHOSEONG PHIEUPH
423
- - pattern: "ᆫᄒ"
424
- result: "nh" # HANGUL JONGSEONG NIEUN + CHOSEONG HIEUH
425
- - pattern: "ᆫᄁ"
426
- result: "nkk" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGKIYEOK
427
- - pattern: "ᆫᄄ"
428
- result: "ntt" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGTIEUT
429
- - pattern: "ᆫᄈ"
430
- result: "npp" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGPIEUP
431
- - pattern: "ᆫᄊ"
432
- result: "nss" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGSIOS
433
- - pattern: "ᆫᄍ"
434
- result: "njj" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGCIEUC
435
- - pattern: "ᆯᄀ"
436
- result: "lk" # HANGUL JONGSEONG RIEUL + CHOSEONG KIYEOK
437
- - pattern: "ᆯᄂ"
438
- result: "ll" # HANGUL JONGSEONG RIEUL + CHOSEONG NIEUN
439
- - pattern: "ᆯᄃ"
440
- result: "lt" # HANGUL JONGSEONG RIEUL + CHOSEONG TIEUT
441
- - pattern: "ᆯᄅ"
442
- result: "ll" # HANGUL JONGSEONG RIEUL + CHOSEONG RIEUL
443
- - pattern: "ᆯᄆ"
444
- result: "lm" # HANGUL JONGSEONG RIEUL + CHOSEONG MIEUM
445
- - pattern: "ᆯᄇ"
446
- result: "lb" # HANGUL JONGSEONG RIEUL + CHOSEONG PIEUP
447
- - pattern: "ᆯᄉ"
448
- result: "ls" # HANGUL JONGSEONG RIEUL + CHOSEONG SIOS
449
- - pattern: "ᆯᄋ"
450
- result: "r" # HANGUL JONGSEONG RIEUL + CHOSEONG IEUNG
451
- - pattern: "ᆯᄌ"
452
- result: "lj" # HANGUL JONGSEONG RIEUL + CHOSEONG CIEUC
453
- - pattern: "ᆯᄎ"
454
- result: "lch" # HANGUL JONGSEONG RIEUL + CHOSEONG CHIEUCH
455
- - pattern: "ᆯᄏ"
456
- result: "lkh" # HANGUL JONGSEONG RIEUL + CHOSEONG KHIEUKH
457
- - pattern: "ᆯᄐ"
458
- result: "lth" # HANGUL JONGSEONG RIEUL + CHOSEONG THIEUTH
459
- - pattern: "ᆯᄑ"
460
- result: "lph" # HANGUL JONGSEONG RIEUL + CHOSEONG PHIEUPH
461
- - pattern: "ᆯᄒ"
462
- result: "lh" # HANGUL JONGSEONG RIEUL + CHOSEONG HIEUH
463
- - pattern: "ᆯᄁ"
464
- result: "lkk" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGKIYEOK
465
- - pattern: "ᆯᄄ"
466
- result: "ltt" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGTIEUT
467
- - pattern: "ᆯᄈ"
468
- result: "lpp" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGPIEUP
469
- - pattern: "ᆯᄊ"
470
- result: "lss" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGSIOS
471
- - pattern: "ᆯᄍ"
472
- result: "ljj" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGCIEUC
473
- - pattern: "ᆷᄀ"
474
- result: "mg" # HANGUL JONGSEONG MIEUM + CHOSEONG KIYEOK
475
- - pattern: "ᆷᄂ"
476
- result: "mn" # HANGUL JONGSEONG MIEUM + CHOSEONG NIEUN
477
- - pattern: "ᆷᄃ"
478
- result: "md" # HANGUL JONGSEONG MIEUM + CHOSEONG TIEUT
479
- - pattern: "ᆷᄅ"
480
- result: "mr" # HANGUL JONGSEONG MIEUM + CHOSEONG RIEUL # Note 3.1
481
- - pattern: "ᆷᄆ"
482
- result: "mm" # HANGUL JONGSEONG MIEUM + CHOSEONG MIEUM
483
- - pattern: "ᆷᄇ"
484
- result: "mb" # HANGUL JONGSEONG MIEUM + CHOSEONG PIEUP
485
- - pattern: "ᆷᄉ"
486
- result: "ms" # HANGUL JONGSEONG MIEUM + CHOSEONG SIOS
487
- - pattern: "ᆷᄋ"
488
- result: "m" # HANGUL JONGSEONG MIEUM + CHOSEONG IEUNG
489
- - pattern: "ᆷᄌ"
490
- result: "mj" # HANGUL JONGSEONG MIEUM + CHOSEONG CIEUC
491
- - pattern: "ᆷᄎ"
492
- result: "mch" # HANGUL JONGSEONG MIEUM + CHOSEONG CHIEUCH
493
- - pattern: "ᆷᄏ"
494
- result: "mkh" # HANGUL JONGSEONG MIEUM + CHOSEONG KHIEUKH
495
- - pattern: "ᆷᄐ"
496
- result: "mth" # HANGUL JONGSEONG MIEUM + CHOSEONG THIEUTH
497
- - pattern: "ᆷᄑ"
498
- result: "mph" # HANGUL JONGSEONG MIEUM + CHOSEONG PHIEUPH
499
- - pattern: "ᆷᄒ"
500
- result: "mh" # HANGUL JONGSEONG MIEUM + CHOSEONG HIEUH
501
- - pattern: "ᆷᄁ"
502
- result: "mkk" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGKIYEOK
503
- - pattern: "ᆷᄄ"
504
- result: "mtt" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGTIEUT
505
- - pattern: "ᆷᄈ"
506
- result: "mpp" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGPIEUP
507
- - pattern: "ᆷᄊ"
508
- result: "mss" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGSIOS
509
- - pattern: "ᆷᄍ"
510
- result: "mjj" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGCIEUC
511
- - pattern: "ᆸᄀ"
512
- result: "pk" # HANGUL JONGSEONG PIEUP + CHOSEONG KIYEOK
513
- - pattern: "ᆸᄂ"
514
- result: "mn" # HANGUL JONGSEONG PIEUP + CHOSEONG NIEUN
515
- - pattern: "ᆸᄃ"
516
- result: "pt" # HANGUL JONGSEONG PIEUP + CHOSEONG TIEUT
517
- - pattern: "ᆸᄅ"
518
- result: "mr" # HANGUL JONGSEONG PIEUP + CHOSEONG RIEUL
519
- - pattern: "ᆸᄆ"
520
- result: "mm" # HANGUL JONGSEONG PIEUP + CHOSEONG MIEUM
521
- - pattern: "ᆸᄇ"
522
- result: "pp" # HANGUL JONGSEONG PIEUP + CHOSEONG PIEUP
523
- - pattern: "ᆸᄉ"
524
- result: "ps" # HANGUL JONGSEONG PIEUP + CHOSEONG SIOS
525
- - pattern: "ᆸᄋ"
526
- result: "b" # HANGUL JONGSEONG PIEUP + CHOSEONG IEUNG
527
- - pattern: "ᆸᄌ"
528
- result: "pj" # HANGUL JONGSEONG PIEUP + CHOSEONG CIEUC
529
- - pattern: "ᆸᄎ"
530
- result: "pch" # HANGUL JONGSEONG PIEUP + CHOSEONG CHIEUCH
531
- - pattern: "ᆸᄏ"
532
- result: "pkh" # HANGUL JONGSEONG PIEUP + CHOSEONG KHIEUKH
533
- - pattern: "ᆸᄐ"
534
- result: "pth" # HANGUL JONGSEONG PIEUP + CHOSEONG THIEUTH
535
- - pattern: "ᆸᄑ"
536
- result: "pph" # HANGUL JONGSEONG PIEUP + CHOSEONG PHIEUPH
537
- - pattern: "ᆸᄒ"
538
- result: "ph" # HANGUL JONGSEONG PIEUP + CHOSEONG HIEUH
539
- - pattern: "ᆸᄁ"
540
- result: "pkk" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGKIYEOK
541
- - pattern: "ᆸᄄ"
542
- result: "ptt" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGTIEUT
543
- - pattern: "ᆸᄈ"
544
- result: "ppp" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGPIEUP
545
- - pattern: "ᆸᄊ"
546
- result: "pss" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGSIOS
547
- - pattern: "ᆸᄍ"
548
- result: "pjj" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGCIEUC
549
- - pattern: "ᆺᄀ"
550
- result: "tk" # HANGUL JONGSEONG SIOS + CHOSEONG KIYEOK
551
- - pattern: "ᆺᄂ"
552
- result: "nn" # HANGUL JONGSEONG SIOS + CHOSEONG NIEUN
553
- - pattern: "ᆺᄃ"
554
- result: "tt" # HANGUL JONGSEONG SIOS + CHOSEONG TIEUT
555
- - pattern: "ᆺᄅ"
556
- result: "nr" # HANGUL JONGSEONG SIOS + CHOSEONG RIEUL # Note 3.1
557
- - pattern: "ᆺᄆ"
558
- result: "nm" # HANGUL JONGSEONG SIOS + CHOSEONG MIEUM
559
- - pattern: "ᆺᄇ"
560
- result: "tp" # HANGUL JONGSEONG SIOS + CHOSEONG PIEUP
561
- - pattern: "ᆺᄉ"
562
- result: "ts" # HANGUL JONGSEONG SIOS + CHOSEONG SIOS
563
- - pattern: "ᆺᄋ"
564
- result: "d" # HANGUL JONGSEONG SIOS + CHOSEONG IEUNG
565
- - pattern: "ᆺᄌ"
566
- result: "tj" # HANGUL JONGSEONG SIOS + CHOSEONG CIEUC
567
- - pattern: "ᆺᄎ"
568
- result: "tch" # HANGUL JONGSEONG SIOS + CHOSEONG CHIEUCH
569
- - pattern: "ᆺᄏ"
570
- result: "tkh" # HANGUL JONGSEONG SIOS + CHOSEONG KHIEUKH
571
- - pattern: "ᆺᄐ"
572
- result: "tth" # HANGUL JONGSEONG SIOS + CHOSEONG THIEUTH
573
- - pattern: "ᆺᄑ"
574
- result: "tph" # HANGUL JONGSEONG SIOS + CHOSEONG PHIEUPH
575
- - pattern: "ᆺᄒ"
576
- result: "th" # HANGUL JONGSEONG SIOS + CHOSEONG HIEUH
577
- - pattern: "ᆺᄁ"
578
- result: "tkk" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGKIYEOK
579
- - pattern: "ᆺᄄ"
580
- result: "ttt" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGTIEUT
581
- - pattern: "ᆺᄈ"
582
- result: "tpp" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGPIEUP
583
- - pattern: "ᆺᄊ"
584
- result: "tss" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGSIOS
585
- - pattern: "ᆺᄍ"
586
- result: "tjj" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGCIEUC
587
- - pattern: "ᆼᄀ"
588
- result: "ngg" # HANGUL JONGSEONG IEUNG + CHOSEONG KIYEOK
589
- - pattern: "ᆼᄂ"
590
- result: "ngn" # HANGUL JONGSEONG IEUNG + CHOSEONG NIEUN
591
- - pattern: "ᆼᄃ"
592
- result: "ngd" # HANGUL JONGSEONG IEUNG + CHOSEONG TIEUT
593
- - pattern: "ᆼᄅ"
594
- result: "ngn" # HANGUL JONGSEONG IEUNG + CHOSEONG RIEUL
595
- - pattern: "ᆼᄆ"
596
- result: "ngm" # HANGUL JONGSEONG IEUNG + CHOSEONG MIEUM
597
- - pattern: "ᆼᄇ"
598
- result: "ngb" # HANGUL JONGSEONG IEUNG + CHOSEONG PIEUP
599
- - pattern: "ᆼᄉ"
600
- result: "ngs" # HANGUL JONGSEONG IEUNG + CHOSEONG SIOS
601
- - pattern: "ᆼᄋ"
602
- result: "ng" # HANGUL JONGSEONG IEUNG + CHOSEONG IEUNG
603
- - pattern: "ᆼᄌ"
604
- result: "ngj" # HANGUL JONGSEONG IEUNG + CHOSEONG CIEUC
605
- - pattern: "ᆼᄎ"
606
- result: "ngch" # HANGUL JONGSEONG IEUNG + CHOSEONG CHIEUCH
607
- - pattern: "ᆼᄏ"
608
- result: "ngkh" # HANGUL JONGSEONG IEUNG + CHOSEONG KHIEUKH
609
- - pattern: "ᆼᄐ"
610
- result: "ngth" # HANGUL JONGSEONG IEUNG + CHOSEONG THIEUTH
611
- - pattern: "ᆼᄑ"
612
- result: "ngph" # HANGUL JONGSEONG IEUNG + CHOSEONG PHIEUPH
613
- - pattern: "ᆼᄒ"
614
- result: "ngh" # HANGUL JONGSEONG IEUNG + CHOSEONG HIEUH
615
- - pattern: "ᆼᄁ"
616
- result: "ngkk" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGKIYEOK
617
- - pattern: "ᆼᄄ"
618
- result: "ngtt" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGTIEUT
619
- - pattern: "ᆼᄈ"
620
- result: "ngpp" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGPIEUP
621
- - pattern: "ᆼᄊ"
622
- result: "ngss" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGSIOS
623
- - pattern: "ᆼᄍ"
624
- result: "ngjj" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGCIEUC
625
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄀ"
626
- result: "g" # VOWEL + CHOSEONG KIYEOK # c.f. Note 3.3
627
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄂ"
628
- result: "n" # VOWEL + CHOSEONG NIEUN # c.f. Note 3.3
629
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄃ"
630
- result: "d" # VOWEL + CHOSEONG TIEUT # c.f. Note 3.3
631
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄅ"
632
- result: "r" # VOWEL + CHOSEONG RIEUL
633
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄆ"
634
- result: "m" # VOWEL + CHOSEONG MIEUM # c.f. Note 3.3
635
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄇ"
636
- result: "b" # VOWEL + CHOSEONG PIEUP # c.f. Note 3.3
637
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄉ"
638
- result: "s" # VOWEL + CHOSEONG SIOS
639
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄋ"
640
- result: "" # VOWEL + CHOSEONG IEUNG
641
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄌ"
642
- result: "j" # VOWEL + CHOSEONG CIEUC
643
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄎ"
644
- result: "ch" # VOWEL + CHOSEONG CHIEUCH
645
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄏ"
646
- result: "kh" # VOWEL + CHOSEONG KHIEUKH
647
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄐ"
648
- result: "th" # VOWEL + CHOSEONG THIEUTH
649
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄑ"
650
- result: "ph" # VOWEL + CHOSEONG PHIEUPH
651
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄒ"
652
- result: "h" # VOWEL + CHOSEONG HIEUH
653
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄁ"
654
- result: "kk" # VOWEL + CHOSEONG SSANGKIYEOK
655
- - pattern: "(?<=[A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄄ"
656
- result: "tt" # VOWEL + CHOSEONG SSANGTIEUT
657
- - pattern: "(?<=[A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄈ"
658
- result: "pp" # VOWEL + CHOSEONG SSANGPIEUP
659
- - pattern: "(?<=[A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄊ"
660
- result: "ss" # VOWEL + CHOSEONG SSANGSIOS
661
- - pattern: "(?<=[A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄍ"
662
- result: "jj" # VOWEL + CHOSEONG SSANGCIEUC
663
- - pattern: "ᆰᄀ"
664
- result: "lg" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG KIYEOK
665
- - pattern: "ᆰᄂ"
666
- result: "ngn" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG NIEUN
667
- - pattern: "ᆰᄃ"
668
- result: "kt" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG TIEUT
669
- - pattern: "ᆰᄅ"
670
- result: "ngn" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG RIEUL
671
- - pattern: "ᆰᄆ"
672
- result: "ngm" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG MIEUM
673
- - pattern: "ᆰᄇ"
674
- result: "kp" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG PIEUP
675
- - pattern: "ᆰᄉ"
676
- result: "ks" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SIOS
677
- - pattern: "ᆰᄋ"
678
- result: "lg" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG IEUNG
679
- - pattern: "ᆰᄌ"
680
- result: "kj" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG CIEUC
681
- - pattern: "ᆰᄎ"
682
- result: "kch" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG CHIEUCH
683
- - pattern: "ᆰᄏ"
684
- result: "lkh" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG KHIEUKH
685
- - pattern: "ᆰᄐ"
686
- result: "kth" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG THIEUTH
687
- - pattern: "ᆰᄑ"
688
- result: "kph" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG PHIEUPH
689
- - pattern: "ᆰᄒ"
690
- result: "lkh" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG HIEUH
691
- - pattern: "ᆰᄁ"
692
- result: "lkk" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGKIYEOK
693
- - pattern: "ᆰᄄ"
694
- result: "ktt" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGTIEUT
695
- - pattern: "ᆰᄈ"
696
- result: "kpp" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGPIEUP
697
- - pattern: "ᆰᄊ"
698
- result: "kss" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGSIOS
699
- - pattern: "ᆰᄍ"
700
- result: "kjj" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGCIEUC
701
- - pattern: "ᆱᄀ"
702
- result: "mg" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG KIYEOK
703
- - pattern: "ᆱᄂ"
704
- result: "mn" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG NIEUN
705
- - pattern: "ᆱᄃ"
706
- result: "md" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG TIEUT
707
- - pattern: "ᆱᄅ"
708
- result: "mr" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG RIEUL
709
- - pattern: "ᆱᄆ"
710
- result: "lm" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG MIEUM
711
- - pattern: "ᆱᄇ"
712
- result: "mb" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG PIEUP
713
- - pattern: "ᆱᄉ"
714
- result: "ms" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SIOS
715
- - pattern: "ᆱᄋ"
716
- result: "lm" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG IEUNG
717
- - pattern: "ᆱᄌ"
718
- result: "mj" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG CIEUC
719
- - pattern: "ᆱᄎ"
720
- result: "mch" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG CHIEUCH
721
- - pattern: "ᆱᄏ"
722
- result: "mkh" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG KHIEUKH
723
- - pattern: "ᆱᄐ"
724
- result: "mth" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG THIEUTH
725
- - pattern: "ᆱᄑ"
726
- result: "mph" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG PHIEUPH
727
- - pattern: "ᆱᄒ"
728
- result: "mh" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG HIEUH
729
- - pattern: "ᆱᄁ"
730
- result: "mkk" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGKIYEOK
731
- - pattern: "ᆱᄄ"
732
- result: "mtt" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGTIEUT
733
- - pattern: "ᆱᄈ"
734
- result: "mpp" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGPIEUP
735
- - pattern: "ᆱᄊ"
736
- result: "mss" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGSIOS
737
- - pattern: "ᆱᄍ"
738
- result: "mjj" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGCIEUC
739
- - pattern: "ᆲᄀ"
740
- result: "pk" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG KIYEOK
741
- - pattern: "ᆲᄂ"
742
- result: "mn" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG NIEUN
743
- - pattern: "ᆲᄃ"
744
- result: "pt" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG TIEUT
745
- - pattern: "ᆲᄅ"
746
- result: "mr" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG RIEUL
747
- - pattern: "ᆲᄆ"
748
- result: "mm" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG MIEUM
749
- - pattern: "ᆲᄇ"
750
- result: "lb" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG PIEUP
751
- - pattern: "ᆲᄉ"
752
- result: "ps" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SIOS
753
- - pattern: "ᆲᄋ"
754
- result: "lb" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG IEUNG
755
- - pattern: "ᆲᄌ"
756
- result: "pj" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG CIEUC
757
- - pattern: "ᆲᄎ"
758
- result: "pch" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG CHIEUCH
759
- - pattern: "ᆲᄏ"
760
- result: "pkh" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG KHIEUKH
761
- - pattern: "ᆲᄐ"
762
- result: "pth" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG THIEUTH
763
- - pattern: "ᆲᄑ"
764
- result: "lph" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG PHIEUPH
765
- - pattern: "ᆲᄒ"
766
- result: "lph" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG HIEUH
767
- - pattern: "ᆲᄁ"
768
- result: "pkk" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGKIYEOK
769
- - pattern: "ᆲᄄ"
770
- result: "ptt" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGTIEUT
771
- - pattern: "ᆲᄈ"
772
- result: "lpp" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGPIEUP
773
- - pattern: "ᆲᄊ"
774
- result: "pss" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGSIOS
775
- - pattern: "ᆲᄍ"
776
- result: "pjj" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGCIEUC
777
- - pattern: "(?<= )ᄀ"
778
- result: "k" # HANGUL CHOSEONG KIYEOK
779
- - pattern: "(?<= )ᄂ"
780
- result: "n" # HANGUL CHOSEONG NIEUN
781
- - pattern: "(?<= )ᄃ"
782
- result: "t" # HANGUL CHOSEONG TIEUT
783
-
784
- # DPRK does not follow the R-onset rule
785
- # - pattern: "(?<= )ᄅ(?=[ᅣᅤᅧᅨᅭᅲ])"
786
- # result: "" # HANGUL CHOSEONG RIEUL # R-onset rule
787
- - pattern: "(?<= )ᄅ"
788
- # result: "n" # HANGUL CHOSEONG RIEUL
789
- result: "r"
790
-
791
- - pattern: "(?<= )ᄆ"
792
- result: "m" # HANGUL CHOSEONG MIEUM
793
- - pattern: "(?<= )ᄇ"
794
- result: "p" # HANGUL CHOSEONG PIEUP
795
- - pattern: "(?<= )ᄉ"
796
- result: "s" # HANGUL CHOSEONG SIOS
797
- - pattern: "(?<= )ᄋ"
798
- result: "" # HANGUL CHOSEONG IEUNG
799
- - pattern: "(?<= )ᄌ"
800
- result: "j" # HANGUL CHOSEONG CIEUC
801
- - pattern: "(?<= )ᄎ"
802
- result: "ch" # HANGUL CHOSEONG CHIEUCH
803
- - pattern: "(?<= )ᄏ"
804
- result: "kh" # HANGUL CHOSEONG KHIEUKH
805
- - pattern: "(?<= )ᄐ"
806
- result: "th" # HANGUL CHOSEONG THIEUTH
807
- - pattern: "(?<= )ᄑ"
808
- result: "ph" # HANGUL CHOSEONG PHIEUPH
809
- - pattern: "(?<= )ᄒ"
810
- result: "h" # HANGUL CHOSEONG HIEUH
811
- - pattern: "(?<= )ᄁ"
812
- result: "kk" # HANGUL CHOSEONG SSANGKIYEOK
813
- - pattern: "(?<= )ᄭ"
814
- result: "kk" # HANGUL CHOSEONG SIOS-KIYEOK
815
- - pattern: "(?<= )ᄄ"
816
- result: "tt" # HANGUL CHOSEONG SSANGTIEUT
817
- - pattern: "(?<= )ᄯ"
818
- result: "tt" # HANGUL CHOSEONG SIOS-TIEUT
819
- - pattern: "(?<= )ᄈ"
820
- result: "pp" # HANGUL CHOSEONG SSANGPIEUP
821
- - pattern: "(?<= )ᄲ"
822
- result: "pp" # HANGUL CHOSEONG SIOS-PIEUP
823
- - pattern: "(?<= )ᄊ"
824
- result: "ss" # HANGUL CHOSEONG SSANGSIOS
825
- - pattern: "(?<= )ᄍ"
826
- result: "jj" # HANGUL CHOSEONG SSANGCIEUC
827
- - pattern: "(?<= )ᄶ"
828
- result: "jj" # HANGUL CHOSEONG SIOS-CIEUC
829
- - pattern: "ᅡ"
830
- result: "a" # HANGUL JUNGSEONG A
831
- - pattern: "ᅣ"
832
- result: "ya" # HANGUL JUNGSEONG YA
833
- - pattern: "ᅥ"
834
- result: "ŏ" # HANGUL JUNGSEONG EO
835
- - pattern: "ᅧ"
836
- result: "yŏ" # HANGUL JUNGSEONG YEO
837
- - pattern: "ᅩ"
838
- result: "o" # HANGUL JUNGSEONG O
839
- - pattern: "ᅭ"
840
- result: "yo" # HANGUL JUNGSEONG YO
841
- - pattern: "ᅮ"
842
- result: "u" # HANGUL JUNGSEONG U
843
- - pattern: "ᅲ"
844
- result: "yu" # HANGUL JUNGSEONG YU
845
- - pattern: "ᅳ"
846
- result: "ü" # HANGUL JUNGSEONG EU
847
- - pattern: "ᅵ"
848
- result: "i" # HANGUL JUNGSEONG I
849
- - pattern: "ᅢ"
850
- result: "ae" # HANGUL JUNGSEONG AE
851
- - pattern: "ᅤ"
852
- result: "yae" # HANGUL JUNGSEONG YAE
853
- - pattern: "ᅦ"
854
- result: "e" # HANGUL JUNGSEONG E
855
- - pattern: "ᅨ"
856
- result: "ye" # HANGUL JUNGSEONG YE
857
- - pattern: "ᅬ"
858
- result: "oe" # HANGUL JUNGSEONG OE
859
- - pattern: "ᅱ"
860
- result: "wi" # HANGUL JUNGSEONG WI
861
- - pattern: "ᅴ"
862
- result: "üi" # HANGUL JUNGSEONG YI
863
- - pattern: "ᅪ"
864
- result: "wa" # HANGUL JUNGSEONG WA
865
- - pattern: "ᅯ"
866
- result: "wo" # HANGUL JUNGSEONG WEO
867
- - pattern: "ᅫ"
868
- result: "wae" # HANGUL JUNGSEONG WAE
869
- - pattern: "ᅰ"
870
- result: "we" # HANGUL JUNGSEONG WE
871
- - pattern: "ᆨ(?!\\p{Hangul})"
872
- result: "k" # HANGUL JONGSEONG KIYEOK
873
- - pattern: "ᆫ(?!\\p{Hangul})"
874
- result: "n" # HANGUL JONGSEONG NIEUN
875
- - pattern: "ᆮ(?!\\p{Hangul})"
876
- result: "t" # HANGUL JONGSEONG TIEUT
877
- - pattern: "ᆯ(?!\\p{Hangul})"
878
- result: "l" # HANGUL JONGSEONG RIEUL
879
- - pattern: "ᆷ(?!\\p{Hangul})"
880
- result: "m" # HANGUL JONGSEONG MIEUM
881
- - pattern: "ᆸ(?!\\p{Hangul})"
882
- result: "p" # HANGUL JONGSEONG PIEUP
883
- - pattern: "ᆺ(?!\\p{Hangul})"
884
- result: "t" # HANGUL JONGSEONG SIOS
885
- - pattern: "ᆼ(?!\\p{Hangul})"
886
- result: "ng" # HANGUL JONGSEONG IEUNG
887
- - pattern: "ᆽ(?!\\p{Hangul})"
888
- result: "t" # HANGUL JONGSEONG CIEUC
889
- - pattern: "ᆾ(?!\\p{Hangul})"
890
- result: "t" # HANGUL JONGSEONG CHIEUCH
891
- - pattern: "ᆿ(?!\\p{Hangul})"
892
- result: "k" # HANGUL JONGSEONG KHIEUKH
893
- - pattern: "ᇀ(?!\\p{Hangul})"
894
- result: "t" # HANGUL JONGSEONG THIEUTH
895
- - pattern: "ᇁ(?!\\p{Hangul})"
896
- result: "p" # HANGUL JONGSEONG PHIEUPH
897
- - pattern: "ᆰ(?!\\p{Hangul})"
898
- result: "k" # HANGUL JONGSEONG RIEUL-KIYEOK
899
- - pattern: "ᆲ(?!\\p{Hangul})"
900
- result: "p" # HANGUL JONGSEONG RIEUL-PIEUP
901
-
902
- # Remove space added
903
- - pattern: "^ "
904
- result: ""
905
- - pattern: " $"
906
- result: ""
907
-
908
- characters:
909
- # This is based on Jamo