interscript 0.1.7 → 2.1.0b1

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 (314) 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 +116 -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 +83 -133
  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 +68 -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 +68 -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 +76 -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 +68 -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/lib/interscript/visualize.rb +61 -0
  63. data/lib/interscript/visualize/group.html.erb +59 -0
  64. data/lib/interscript/visualize/json.rb +57 -0
  65. data/lib/interscript/visualize/map.html.erb +46 -0
  66. data/lib/interscript/visualize/nodes.rb +89 -0
  67. data/requirements.txt +1 -0
  68. metadata +78 -416
  69. data/README.adoc +0 -298
  70. data/lib/g2pwrapper.py +0 -34
  71. data/lib/interscript/fs.rb +0 -69
  72. data/lib/interscript/mapping.rb +0 -142
  73. data/lib/interscript/opal.rb +0 -57
  74. data/lib/interscript/opal/entrypoint.rb +0 -12
  75. data/lib/interscript/opal/map_translate.rb +0 -7
  76. data/lib/interscript/opal/maps.js.erb +0 -10
  77. data/lib/model-7 +0 -0
  78. data/lib/tha-pt-b-7 +0 -0
  79. data/maps/acadsin-zho-Hani-Latn-2002.yaml +0 -38916
  80. data/maps/alalc-amh-Ethi-Latn-1997.yaml +0 -513
  81. data/maps/alalc-amh-Ethi-Latn-2011.yaml +0 -138
  82. data/maps/alalc-ara-Arab-Latn-1997.yaml +0 -1287
  83. data/maps/alalc-asm-Deva-Latn-1997.yaml +0 -165
  84. data/maps/alalc-asm-Deva-Latn-2012.yaml +0 -40
  85. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +0 -145
  86. data/maps/alalc-bel-Cyrl-Latn-1997.yaml +0 -129
  87. data/maps/alalc-ben-Beng-Latn-2017.yaml +0 -130
  88. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +0 -98
  89. data/maps/alalc-ell-Grek-Latn-1997.yaml +0 -628
  90. data/maps/alalc-ell-Grek-Latn-2010.yaml +0 -626
  91. data/maps/alalc-guj-Gujr-Latn-1997.yaml +0 -266
  92. data/maps/alalc-guj-Gujr-Latn-2011.yaml +0 -64
  93. data/maps/alalc-hin-Deva-Latn-1997.yaml +0 -211
  94. data/maps/alalc-hin-Deva-Latn-2011.yaml +0 -47
  95. data/maps/alalc-kat-Geok-Latn-1997.yaml +0 -111
  96. data/maps/alalc-kat-Geor-Latn-1997.yaml +0 -150
  97. data/maps/alalc-kor-Hang-Latn-1997.yaml +0 -98
  98. data/maps/alalc-mal-Mlym-Latn-1997.yaml +0 -303
  99. data/maps/alalc-mal-Mlym-Latn-2012.yaml +0 -73
  100. data/maps/alalc-mar-Deva-Latn-1997.yaml +0 -189
  101. data/maps/alalc-mar-Deva-Latn-2011.yaml +0 -45
  102. data/maps/alalc-mkd-Cyrl-Latn-1997.yaml +0 -114
  103. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +0 -103
  104. data/maps/alalc-mon-Cyrl-Latn-1997.yaml +0 -220
  105. data/maps/alalc-pan-Guru-Latn-1997.yaml +0 -256
  106. data/maps/alalc-pan-Guru-Latn-2011.yaml +0 -78
  107. data/maps/alalc-per-Arab-Latn-1997.yaml +0 -375
  108. data/maps/alalc-pli-Deva-Latn-2012.yaml +0 -144
  109. data/maps/alalc-pra-Deva-Latn-2012.yaml +0 -47
  110. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +0 -225
  111. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +0 -162
  112. data/maps/alalc-san-Deva-Latn-2012.yaml +0 -172
  113. data/maps/alalc-sin-Sinh-Latn-1997.yaml +0 -292
  114. data/maps/alalc-sin-Sinh-Latn-2011.yaml +0 -71
  115. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +0 -118
  116. data/maps/alalc-srp-Cyrl-Latn-2013.yaml +0 -135
  117. data/maps/alalc-tam-Taml-Latn-1997.yaml +0 -62
  118. data/maps/alalc-tam-Taml-Latn-2011.yaml +0 -58
  119. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +0 -145
  120. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +0 -16
  121. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +0 -283
  122. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +0 -174
  123. data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +0 -169
  124. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +0 -292
  125. data/maps/bgn-kor-Hang-Latn-1943.yaml +0 -35
  126. data/maps/bgn-kor-Kore-Latn-1943.yaml +0 -31
  127. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +0 -208
  128. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +0 -208
  129. data/maps/bgnpcgn-amh-Ethi-Latn-1967.yaml +0 -532
  130. data/maps/bgnpcgn-ara-Arab-Latn-1956.yaml +0 -596
  131. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +0 -108
  132. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +0 -104
  133. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +0 -188
  134. data/maps/bgnpcgn-bel-Cyrl-Latn-1979.yaml +0 -289
  135. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +0 -119
  136. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +0 -42
  137. data/maps/bgnpcgn-che-Cyrl-Latn-2008.yaml +0 -184
  138. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +0 -705
  139. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +0 -23
  140. data/maps/bgnpcgn-fas-Arab-Latn-1956.yaml +0 -96
  141. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +0 -257
  142. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +0 -131
  143. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +0 -42
  144. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +0 -253
  145. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +0 -48
  146. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +0 -48
  147. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +0 -163
  148. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +0 -190
  149. data/maps/bgnpcgn-mon-Cyrl-Latn-1964.yaml +0 -223
  150. data/maps/bgnpcgn-nep-Deva-Latn-2011.yaml +0 -230
  151. data/maps/bgnpcgn-per-Arab-Latn-1958.yaml +0 -336
  152. data/maps/bgnpcgn-prs-Arab-Latn-2007.yaml +0 -639
  153. data/maps/bgnpcgn-prs-Arab-Latn-yaghoubi.yaml +0 -459
  154. data/maps/bgnpcgn-rue-Cyrl-Latn-2016.yaml +0 -168
  155. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +0 -318
  156. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +0 -170
  157. data/maps/bgnpcgn-tat-Cyrl-Latn-2007.yaml +0 -220
  158. data/maps/bgnpcgn-tgk-Cyrl-Latn-1994.yaml +0 -240
  159. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +0 -166
  160. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +0 -119
  161. data/maps/bgnpcgn-uzb-Cyrl-Latn-1979.yaml +0 -127
  162. data/maps/bgnpcgn-uzb-Cyrl-Latn-2000.yaml +0 -82
  163. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +0 -7456
  164. data/maps/bis-asm-Beng-Latn-13194-1991.yaml +0 -159
  165. data/maps/bis-ben-Beng-Latn-13194-1991.yaml +0 -156
  166. data/maps/bis-dev-Deva-Latn-13194-1991.yaml +0 -184
  167. data/maps/bis-guj-Gujr-Latn-13194-1991.yaml +0 -181
  168. data/maps/bis-knd-Knda-Latn-13194-1991.yaml +0 -173
  169. data/maps/bis-mlm-Mlym-Latn-13194-1991.yaml +0 -176
  170. data/maps/bis-ori-Orya-Latn-13194-1991.yaml +0 -160
  171. data/maps/bis-pnj-Guru-Latn-13194-1991.yaml +0 -175
  172. data/maps/bis-tel-Telu-Latn-13194-1991.yaml +0 -170
  173. data/maps/bis-tml-Taml-Latn-13194-1991.yaml +0 -155
  174. data/maps/by-bel-Cyrl-Latn-1998.yaml +0 -172
  175. data/maps/by-bel-Cyrl-Latn-2007.yaml +0 -115
  176. data/maps/din-grc-Grek-Latn-31634-2011-t1.yaml +0 -899
  177. data/maps/din-hin-Deva-Latn-33904-2018.yaml +0 -100
  178. data/maps/din-kat-Geor-Latn-32707-2010.yaml +0 -145
  179. data/maps/din-mar-Deva-Latn-33904-2018.yaml +0 -84
  180. data/maps/din-nep-Deva-Latn-33904-2018.yaml +0 -119
  181. data/maps/din-pli-Deva-Latn-33904-2018.yaml +0 -75
  182. data/maps/din-pra-Deva-Latn-33904-2018.yaml +0 -63
  183. data/maps/din-san-Deva-Latn-33904-2018.yaml +0 -338
  184. data/maps/din-tam-Taml-Latn-33903-2016.yaml +0 -213
  185. data/maps/dos-nep-Deva-Latn-1997.yaml +0 -47
  186. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +0 -684
  187. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +0 -680
  188. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +0 -19
  189. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +0 -31
  190. data/maps/ggg-kat-Geor-Latn-2002.yaml +0 -92
  191. data/maps/gki-bel-Cyrl-Latn-1992.yaml +0 -33
  192. data/maps/gki-bel-Cyrl-Latn-2000.yaml +0 -201
  193. data/maps/gost-rus-Cyrl-Latn-16876-71-1983.yaml +0 -190
  194. data/maps/gost-rus-Cyrl-Latn-7.79-2000-2002.yaml +0 -157
  195. data/maps/hk-yue-Hani-Latn-1888.yaml +0 -38497
  196. data/maps/icao-bel-Cyrl-Latn-9303.yaml +0 -136
  197. data/maps/icao-bul-Cyrl-Latn-9303.yaml +0 -118
  198. data/maps/icao-fas-Arab-Latn-9303.yaml +0 -103
  199. data/maps/icao-heb-Hebr-Latn-9303.yaml +0 -151
  200. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +0 -117
  201. data/maps/icao-rus-Cyrl-Latn-9303.yaml +0 -117
  202. data/maps/icao-srp-Cyrl-Latn-9303.yaml +0 -117
  203. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +0 -119
  204. data/maps/iso-ara-Arab-Latn-233-1984.yaml +0 -323
  205. data/maps/iso-asm-Beng-Latn-15919-2001.yaml +0 -75
  206. data/maps/iso-ben-Beng-Latn-15919-2001.yaml +0 -175
  207. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +0 -613
  208. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +0 -44
  209. data/maps/iso-guj-Gujr-Latn-15919-2001.yaml +0 -220
  210. data/maps/iso-hin-Deva-Latn-15919-2001.yaml +0 -87
  211. data/maps/iso-inc-Deva-Latn-15919-2001.yaml +0 -61
  212. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +0 -66
  213. data/maps/iso-kan-Knda-Latn-15919-2001.yaml +0 -220
  214. data/maps/iso-kat-Geor-Latn-9984-1996.yaml +0 -145
  215. data/maps/iso-kor-Hang-Latn-1996-method1.yaml +0 -240
  216. data/maps/iso-kor-Hang-Latn-1996-method2.yaml +0 -226
  217. data/maps/iso-mal-Mlym-Latn-15919-2001.yaml +0 -281
  218. data/maps/iso-mar-Deva-Latn-15919-2001.yaml +0 -75
  219. data/maps/iso-nep-Deva-Latn-15919-2001.yaml +0 -87
  220. data/maps/iso-ori-Orya-Latn-15919-2001.yaml +0 -193
  221. data/maps/iso-pan-Guru-Latn-15919-2001.yaml +0 -222
  222. data/maps/iso-pli-Beng-Latn-15919-2001.yaml +0 -73
  223. data/maps/iso-pli-Deva-Latn-15919-2001.yaml +0 -74
  224. data/maps/iso-pli-Sinh-Latn-15919-2001.yaml +0 -219
  225. data/maps/iso-pli-Thai-Latn-15919-2001.yaml +0 -55
  226. data/maps/iso-pra-Deva-Latn-15919-2001.yaml +0 -59
  227. data/maps/iso-prs-Arab-Latn-233-3-1999.yaml +0 -366
  228. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +0 -271
  229. data/maps/iso-san-Deva-Latn-15919-2001.yaml +0 -220
  230. data/maps/iso-tam-Taml-Latn-15919-2001.yaml +0 -159
  231. data/maps/iso-tel-Telu-Latn-15919-2001.yaml +0 -220
  232. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +0 -109
  233. data/maps/kp-kor-Hang-Latn-2002.yaml +0 -909
  234. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +0 -44820
  235. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +0 -411
  236. data/maps/mns-mon-Cyrl-Latn-5217-2012.yaml +0 -163
  237. data/maps/mns-mon-Latn-Cyrl-5217-2012.yaml +0 -200
  238. data/maps/moct-kor-Hang-Latn-2000.yaml +0 -807
  239. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +0 -541
  240. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +0 -225
  241. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +0 -63
  242. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +0 -109
  243. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +0 -37
  244. data/maps/odni-ara-Arab-Latn-2015.yaml +0 -425
  245. data/maps/odni-aze-Cyrl-Latn-2015.yaml +0 -144
  246. data/maps/odni-bel-Cyrl-Latn-2015.yaml +0 -148
  247. data/maps/odni-bul-Cyrl-Latn-2015.yaml +0 -96
  248. data/maps/odni-che-Cyrl-Latn-2015.yaml +0 -169
  249. data/maps/odni-fas-Arab-Latn-2015.yaml +0 -406
  250. data/maps/odni-hin-Deva-Latn-2015.yaml +0 -258
  251. data/maps/odni-kat-Geor-Latn-2015.yaml +0 -87
  252. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +0 -148
  253. data/maps/odni-kir-Cyrl-Latn-2015.yaml +0 -136
  254. data/maps/odni-kor-Hang-Latn-2015.yaml +0 -375
  255. data/maps/odni-mkd-Cyrl-Latn-2015.yaml +0 -122
  256. data/maps/odni-per-Arab-Latn-2015.yaml +0 -228
  257. data/maps/odni-rus-Cyrl-Latn-2015.yaml +0 -77
  258. data/maps/odni-srp-Cyrl-Latn-2015.yaml +0 -129
  259. data/maps/odni-tat-Cyrl-Latn-2015.yaml +0 -142
  260. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +0 -148
  261. data/maps/odni-uig-Cyrl-Latn-2015.yaml +0 -138
  262. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +0 -157
  263. data/maps/odni-urd-Arab-Latn-2015.yaml +0 -221
  264. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +0 -166
  265. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +0 -90
  266. data/maps/royin-tha-Thai-Latn-1968.yaml +0 -183
  267. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +0 -180
  268. data/maps/royin-tha-Thai-Latn-1999.yaml +0 -80
  269. data/maps/sac-zho-Hans-Latn-1979.yaml +0 -24763
  270. data/maps/sasm-mon-Mong-Latn-general-1978.yaml +0 -389
  271. data/maps/sasm-mon-Mong-Latn-phonetic-1978.yaml +0 -354
  272. data/maps/ses-ara-Arab-Latn-1930.yaml +0 -283
  273. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +0 -222
  274. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +0 -197
  275. data/maps/ua-ukr-Cyrl-Latn-2007.yaml +0 -75
  276. data/maps/ua-ukr-Cyrl-Latn-2010.yaml +0 -192
  277. data/maps/un-amh-Ethi-Latn-2016.yaml +0 -602
  278. data/maps/un-ara-Arab-Latn-1971.yaml +0 -139
  279. data/maps/un-ara-Arab-Latn-1972.yaml +0 -159
  280. data/maps/un-ara-Arab-Latn-2017.yaml +0 -420
  281. data/maps/un-bel-Cyrl-Latn-2007.yaml +0 -114
  282. data/maps/un-ben-Beng-Latn-2016.yaml +0 -534
  283. data/maps/un-ell-Grek-Latn-1987-phonetic.yaml +0 -780
  284. data/maps/un-ell-Grek-Latn-1987-tl.yaml +0 -31
  285. data/maps/un-ell-Grek-Latn-1987-ts.yaml +0 -19
  286. data/maps/un-hin-Deva-Latn-2016.yaml +0 -222
  287. data/maps/un-mar-Deva-Latn-2016.yaml +0 -91
  288. data/maps/un-mon-Mong-Latn-general-2013.yaml +0 -264
  289. data/maps/un-mon-Mong-Latn-phonetic-2013.yaml +0 -264
  290. data/maps/un-nep-Deva-Latn-1972.yaml +0 -350
  291. data/maps/un-nep-Deva-Latn-2013.yaml +0 -74
  292. data/maps/un-rus-Cyrl-Latn-1987.yaml +0 -166
  293. data/maps/un-ukr-Cyrl-Latn-1998.yaml +0 -53
  294. data/maps/un-ukr-Cyrl-Latn-2012.yaml +0 -162
  295. data/maps/var-hin-Deva-Latn-hunterian-1872.yaml +0 -221
  296. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +0 -406
  297. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +0 -386
  298. data/maps/var-kor-Hang-Hang-jamo.yaml +0 -11193
  299. data/maps/var-kor-Hang-Latn-mr-1939.yaml +0 -1054
  300. data/maps/var-kor-Kore-Hang-2013.yaml +0 -59754
  301. data/maps/var-kor-Kore-Latn-mr-1939.yaml +0 -36
  302. data/maps/var-mar-Deva-Latn-hunterian-1872.yaml +0 -43
  303. data/maps/var-mon-Mong-Latn-1930.yaml +0 -102
  304. data/maps/var-mon-Mong-Latn-lessing.yaml +0 -272
  305. data/maps/var-mon-Mong-Latn-vpmc.yaml +0 -274
  306. data/maps/var-pra-Deva-Latn-iast-1912.yaml +0 -30
  307. data/maps/var-san-Deva-Latn-iast-1912.yaml +0 -149
  308. data/maps/var-tha-Thai-Thai-phonemic.yaml +0 -59
  309. data/maps/var-tha-Thai-Zsym-ipa.yaml +0 -301
  310. data/maps/var-zho-Hani-Latn-wd-1979.yaml +0 -38912
  311. data/spec/interscript/filenames_spec.rb +0 -384
  312. data/spec/interscript/mapping_spec.rb +0 -42
  313. data/spec/interscript_spec.rb +0 -29
  314. data/spec/spec_helper.rb +0 -3
@@ -1,200 +0,0 @@
1
- ---
2
- authority_id: mns
3
- id: 2012
4
- language: iso-639-2:mon
5
- source_script: Latn
6
- destination_script: Cyrl
7
- name: Transliteration of Latin characters into Mongolian Cyrillic
8
- url: https://fr.wikipedia.org/wiki/MNS_5217:2012
9
- creation_date:
10
- confirmation_date:
11
- description: |
12
- Latin characters into Mongolian Cyrillic is the opposite transliteration of based on MNS 5217:2012.
13
- The standard MNS 5217:2012 is a standard of the Mongolian Agency for Standardization and Metrology
14
- for transliteration from Cyrillic Mongolian in Latin alphabet.
15
-
16
- The grammer of Khalkha Mongolian is required in order to make accurate translation of Latin characters
17
- into Mongolian Cyrillic because of no distinguish between /и, й, ъ, ь/ for "i" and /ш, щ/ for "sh" in
18
- the standard.
19
-
20
- In Mongolia, the Khalkha dialect, currently written in both Cyrillic and traditional Mongolian script
21
- (and at times in Latin for social networking), is predominant, while in Inner Mongolia, the language
22
- is dialectally more diverse and is written in the traditional Mongolian script.
23
-
24
- notes: |
25
- - Khalkha also has four diphthongs: /ui, ʊi, ɔi, ai/. Vowels can also combine to form a further
26
- three diphthongs, and so seven in total: ia (иа), ʊa (уа) ei (эй). For example: ай in далай (eyes),
27
- иа in амиараа (individually), ой in нохой (dog), уа in хуаран (barracks), уй in уйлах (to cry),
28
- үй in үйлдвэр (factory), эй in хэрэгтэй (necessary).
29
- - Custom mapping sort orders made as following by: /й, ъ, ь, и/ for "i" and /щ, ш/ for "sh".
30
-
31
- tests:
32
- - source: Avarga, khalbaga, aav
33
- expected: Аварга, халбага, аав
34
- - source: Baga, sambar
35
- expected: Бага, самбар
36
- - source: Avarga, vagon, sav
37
- expected: Аварга, вагон, сав
38
- - source: Gazar, geree, khereg
39
- expected: Газар, гэрээ, хэрэг
40
- - source: Dadlaga, akhmad
41
- expected: Дадлага, ахмад
42
- - source: Yeeven, yerööl
43
- expected: Еэвэн, ерөөл
44
- - source: Yorool, oyodol
45
- expected: Ёроол, оёдол
46
- - source: Juulchin, ajil, Jon
47
- expected: Жуулчин, ажил, Жон
48
- - source: Zam, azarga, baaz
49
- expected: Зам, азарга, бааз
50
- - source: Kino, kilomyetr, akadyemi
51
- expected: Кино, километр, академи
52
- - source: Ishig, bichig, khani
53
- expected: Ишиг, бичиг, хани # Correct expectation: Ишиг, бичиг, хань - Hard transliteration required for ь
54
- - source: Iim, eejiin
55
- expected: Ийм, ээжийн
56
- - source: Lam, alag, mal
57
- expected: Лам, алаг, мал
58
- - source: Mal, khamar, nam
59
- expected: Мал, хамар, нам
60
- - source: Nar, khana, ünen
61
- expected: Нар, хана, үнэн
62
- - source: Oron, bolovsrol, toono
63
- expected: Орон, боловсрол, тооно
64
- - source: Ödör, önöödör, ööröösöö
65
- expected: Өдөр, өнөөдөр, өөрөөсөө
66
- - source: Puujin, aparat
67
- expected: Пуужин, апарат
68
- - source: Rashaan, radio, sar
69
- expected: Рашаан, радио, сар
70
- - source: Sar, asar, etses
71
- expected: Сар, асар, эцэс
72
- - source: Tamga, tatlaga
73
- expected: Тамга, татлага
74
- - source: Uran, nuruu
75
- expected: Уран, нуруу
76
- - source: Ünen, türgen, tergüün
77
- expected: Үнэн, түргэн, тэргүүн
78
- - source: Foto, fond
79
- expected: Фото, фонд
80
- - source: Khavar, nökhör, ekh
81
- expected: Хавар, нөхөр, эх
82
- - source: Tsatsag, tsetseg
83
- expected: Цацаг, цэцэг
84
- - source: Chimeg, chadal, ach
85
- expected: Чимэг, чадал, ач
86
- - source: Shashin, aash
87
- expected: Шашин, ааш
88
- - source: Shyedrin, shors
89
- expected: Шедрин, шорс # Correct expectation: Щедрин, щорс - Hard transliteration required for щ usage
90
- - source: Oriyo, suriya, gariya
91
- expected: Ориё, сурия, гария # Correct expectation: Оръё, суръя, гаръя - Hard transliteration required for ъ
92
- - source: Khaany, akhyn
93
- expected: Хааны, ахын
94
- - source: Khari, bari
95
- expected: Хари, бари # Correct expectation: Харь, барь - Hard transliteration required for ь
96
- - source: Ezen, ene, emeel
97
- expected: Эзэн, энэ, эмээл
98
- - source: Yum, yuüden
99
- expected: Юм, юүдэн
100
- - source: Yamar, yaduu, aya
101
- expected: Ямар, ядуу, ая
102
- - source: ii, ia, ua, ai, ei, oi, üi, Ii, Ai, Ei, Oi, Üi
103
- expected: ий, иа, уа, ай, эй, ой, үй, Ий, Ай, Эй, Ой, Үй
104
- - source: uu, üü, yuu, yuü
105
- expected: уу, үү, юу, юү
106
-
107
- map:
108
- rules:
109
- - pattern: "ii"
110
- result: "\u0438\u0439"
111
- - pattern: "Ii"
112
- result: "\u0418\u0439"
113
- - pattern: "ai"
114
- result: "\u0430\u0439"
115
- - pattern: "Ai"
116
- result: "\u0410\u0439"
117
- - pattern: "ei"
118
- result: "\u044d\u0439"
119
- - pattern: "Ei"
120
- result: "\u042d\u0439"
121
- - pattern: "oi"
122
- result: "\u043e\u0439"
123
- - pattern: "Oi"
124
- result: "\u041e\u0439"
125
- - pattern: "üi"
126
- result: "\u04af\u0439"
127
- - pattern: "Üi"
128
- result: "\u04ae\u0439"
129
-
130
- characters:
131
- "A": "А" # \u0410
132
- "B": "Б" # \u0411
133
- "V": "В" # \u0412
134
- "G": "Г" # \u0413
135
- "D": "Д" # \u0414
136
- "Ye": "Е" # \u0415
137
- "Yo": "Ё" # \u0401
138
- "J": "Ж" # \u0416
139
- "Z": "З" # \u0417
140
- "I": "Й" # \u0419
141
- "K": "К" # \u041a
142
- "L": "Л" # \u041b
143
- "M": "М" # \u041c
144
- "N": "Н" # \u041d
145
- "O": "О" # \u041e
146
- "Ö": "Ө" # \u04e8
147
- "P": "П" # \u041f
148
- "R": "Р" # \u0420
149
- "S": "С" # \u0421
150
- "T": "Т" # \u0422
151
- "U": "У" # \u0423
152
- "Ü": "Ү" # \u04ae
153
- "F": "Ф" # \u0424
154
- "Kh": "Х" # \u0425
155
- "Ts": "Ц" # \u0426
156
- "Ch": "Ч" # \u0427
157
- "Sh": "Щ" # \u0429
158
- "Sh": "Ш" # \u0428
159
- "I": "Ъ" # \u042a
160
- "Y": "Ы" # \u042b
161
- "I": "Ь" # \u042c
162
- "I": "И" # \u0418
163
- "E": "Э" # \u042d
164
- "Yu": "Ю" # \u042e
165
- "Ya": "Я" # \u042f
166
- "a": "а" # \u0430
167
- "b": "б" # \u0431
168
- "v": "в" # \u0432
169
- "g": "г" # \u0433
170
- "d": "д" # \u0434
171
- "ye": "е" # \u0435
172
- "yo": "ё" # \u0451
173
- "j": "ж" # \u0436
174
- "z": "з" # \u0437
175
- "i": "й" # \u0439
176
- "k": "к" # \u043a
177
- "l": "л" # \u043b
178
- "m": "м" # \u043c
179
- "n": "н" # \u043d
180
- "o": "о" # \u043e
181
- "ö": "ө" # \u04e9
182
- "p": "п" # \u043f
183
- "r": "р" # \u0440
184
- "s": "с" # \u0441
185
- "t": "т" # \u0442
186
- "u": "у" # \u0443
187
- "ü": "ү" # \u04af
188
- "f": "ф" # \u0444
189
- "kh": "х" # \u0445
190
- "ts": "ц" # \u0446
191
- "ch": "ч" # \u0447
192
- "sh": "щ" # \u0449
193
- "sh": "ш" # \u0448
194
- "i": "ъ" # \u044a
195
- "y": "ы" # \u044b
196
- "i": "ь" # \u044c
197
- "i": "и" # \u0438
198
- "e": "э" # \u044d
199
- "yu": "ю" # \u044e
200
- "ya": "я" # \u044f
@@ -1,807 +0,0 @@
1
- ---
2
- authority_id: moct
3
- id: 2000-viajamo
4
- language: iso-639-2:kor
5
- source_script: Hang
6
- destination_script: Latn
7
- name: Korean Ministry of Culture and Tourism 2000 System
8
- alias:
9
- ogc11122:
10
- code: kor_Hang2Latn_MOCT_2000
11
- description: Korean Ministry of Culture and Tourism 2000 System
12
- url: https://www.korean.go.kr/front_eng/roman/roman_01.do
13
- creation_date: 2000
14
- adoption_date: 2002
15
- description: |
16
- Generation of Jamo from Hangul
17
-
18
- This is how the Hangul-to-Jamo maps are generated. Please refer to this page
19
- for details about Korean text handling in Unicode.
20
- http://gernot-katzers-spice-pages.com/var/korean_hangul_unicode.html
21
-
22
- This formula copied from the page above is used:
23
- [stem]
24
- ====
25
- tail = mod (Hangul codepoint − 44032, 28)
26
- vowel = 1 + mod (Hangul codepoint − 44032 − tail, 588) / 28
27
- lead = 1 + int [ (Hangul codepoint − 44032)/588 ]
28
- ====
29
-
30
- [source,python]
31
- ----
32
- import pandas as pd
33
- import re
34
- import math
35
-
36
- leadjamo = [chr(0x1100+i) for i in range(0,19)]
37
- # ᄀᄁᄂᄃᄄᄅᄆᄇᄈᄉᄊᄋᄌᄍᄎᄏᄐᄑᄒ
38
- voweljamo = [chr(0x1161+i) for i in range(0,21)]
39
- # ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ
40
- tailjamo = ['']+[chr(0x11A8+i) for i in range(0,27)]
41
- # ᆨᆩᆪᆫᆬᆭᆮᆯᆰᆱᆲᆳᆴᆵᆶᆷᆸᆹᆺᆻᆼᆽᆾᆿᇀᇁᇂ
42
-
43
- hanguls = [chr(i) for i in range(44032,55204)]
44
- tails = [tailjamo[(i-44032) % 28] for i in range(44032,55204)]
45
- vowels = [voweljamo[((i-44032-((i-44032) % 28)) % 588) // 28] for i in range(44032,55204)]
46
- leads = [leadjamo[math.floor((i-44032)// 588)] for i in range(44032,55204)]
47
-
48
- kr_df = pd.DataFrame({'Hangul':hanguls, 'Lead':leads,'Vowel':vowels, 'Tail':tails})
49
- ----
50
-
51
- Hangul Lead Vowel Tail
52
- 0 가 ᄀ ᅡ
53
- 1 각 ᄀ ᅡ ᆨ
54
- 2 갂 ᄀ ᅡ ᆩ
55
- 3 갃 ᄀ ᅡ ᆪ
56
- 4 간 ᄀ ᅡ ᆫ
57
- 5 갅 ᄀ ᅡ ᆬ
58
- 6 갆 ᄀ ᅡ ᆭ
59
- 7 갇 ᄀ ᅡ ᆮ
60
- 8 갈 ᄀ ᅡ ᆯ
61
- 9 갉 ᄀ ᅡ ᆰ
62
-
63
-
64
- notes:
65
-
66
- tests:
67
- - source: 불국사
68
- expected: "Bulguksa"
69
- - source: 묵호
70
- expected: "Mukho"
71
- - source: 울산
72
- expected: "Ulsan"
73
- - source: 독립문
74
- expected: "Dongnimmun"
75
- - source: 강남역
76
- expected: "Gangnamyeok"
77
- - source: 남산리
78
- expected: "Namsan-ri" #Note: no assimilation for -ri even after nasals
79
- - source: 내월리
80
- expected: "Naewol-ri"
81
- - source: 울릉군
82
- expected: "Ulleung-gun"
83
- - source: 설악산
84
- expected: "Seoraksan"
85
- - source: 삼죽면
86
- expected: "Samjuk-myeon"
87
- - source: 평리1동
88
- expected: "Pyeongni Il-dong"
89
- - source: 평리2동
90
- expected: "Pyeongni I-dong"
91
- - source: 탑안이
92
- expected: "Tabani"
93
-
94
- map:
95
- character_separator: ""
96
- word_separator: " "
97
- title_case: True
98
- inherit: "var-kor-Hang-Hang-jamo"
99
-
100
- rules:
101
- # convert numbers to space + Hangul
102
- - pattern: "([^0-9 ])(?=[0-9])"
103
- result: "\\1 "
104
- - pattern: "1"
105
- result: "일"
106
- - pattern: "2"
107
- result: "이"
108
- - pattern: "3"
109
- result: "삼"
110
- - pattern: "4"
111
- result: "사"
112
- - pattern: "5"
113
- result: "오"
114
- - pattern: "6"
115
- result: "육"
116
- - pattern: "7"
117
- result: "칠"
118
- - pattern: "8"
119
- result: "팔"
120
- - pattern: "9"
121
- result: "구"
122
-
123
- # add hyphen in front of generics
124
- - pattern: "(?<=.)(도|시|군|구|읍|면|리|동|가)$"
125
- result: "-\\1"
126
-
127
- postrules:
128
-
129
- # Add space to the two ends of the string for easier word boundary handling
130
- - pattern: "^"
131
- result: " "
132
- - pattern: "$"
133
- result: " "
134
-
135
- # HANGUL JONGSEONG SSANGKIYEOK
136
- - pattern: "ᆩᄋ"
137
- result: "ᆨᄁ"
138
- - pattern: "ᆩ"
139
- result: "ᆨ"
140
-
141
- # HANGUL JONGSEONG SSANGKIYEOK
142
- - pattern: "ᆪᄋ"
143
- result: "ᆨᄉ"
144
- - pattern: "ᆪ"
145
- result: "ᆨ"
146
-
147
- # HANGUL JONGSEONG NIEUN-CIEUC
148
- - pattern: "ᆬᄋ"
149
- result: "ᆫᄌ"
150
- - pattern: "ᆬ"
151
- result: "ᆫ"
152
-
153
- # HANGUL JONGSEONG NIEUN-CIEUC
154
- - pattern: "ᆭᄀ"
155
- result: "ᆫᄏ"
156
- - pattern: "ᆭᄃ"
157
- result: "ᆫᄐ"
158
- - pattern: "ᆭᄇ"
159
- result: "ᆫᄑ"
160
- - pattern: "ᆭᄌ"
161
- result: "ᆫᄎ"
162
- - pattern: "ᆭ"
163
- result: "ᆫ"
164
-
165
- # HANGUL JONGSEONG TIEUT
166
- - pattern: "ᆮ(?=[ᄀᄁᄂᄃᄄᄅᄆᄇᄈᄉᄊᄌᄍᄎᄏᄐᄑᄒ])"
167
- result: "ᆺ"
168
-
169
- # HANGUL JONGSEONG RIEUL-SIOS
170
- - pattern: "ᆳᄋ"
171
- result: "ᆯᄉ"
172
- - pattern: "ᆳ"
173
- result: "ᆯ"
174
-
175
- # HANGUL JONGSEONG RIEUL-THIEUTH
176
- - pattern: "ᆴᄋ"
177
- result: "ᆯᄐ"
178
- - pattern: "ᆴ"
179
- result: "ᆯ"
180
-
181
- # HANGUL JONGSEONG RIEUL-PHIEUPH
182
- - pattern: "ᆵᄋ"
183
- result: "ᆯᄑ"
184
- - pattern: "ᆵ(?=[ᄃᄄᄐ])"
185
- result: "ᆯ"
186
- - pattern: "ᆵ"
187
- result: "ᄇ"
188
-
189
- # HANGUL JONGSEONG RIEUL-HIEUH
190
- - pattern: "ᆶᄀ"
191
- result: "ᆯᄏ"
192
- - pattern: "ᆶᄃ"
193
- result: "ᆯᄐ"
194
- - pattern: "ᆶᄇ"
195
- result: "ᆯᄑ"
196
- - pattern: "ᆶᄌ"
197
- result: "ᆯᄎ"
198
- - pattern: "ᆶ"
199
- result: "ᆯ"
200
-
201
- # HANGUL JONGSEONG PIEUP-SIOS
202
- - pattern: "ᆹᄋ"
203
- result: "ᄇᄉ"
204
- - pattern: "ᆹ"
205
- result: "ᄇ"
206
-
207
- # HANGUL JONGSEONG SSANG-SIOS
208
- - pattern: "ᆻᄋ"
209
- result: "ᆺᄊ"
210
- - pattern: "ᆻ"
211
- result: "ᆺ"
212
-
213
- # HANGUL JONGSEONG CIEUC
214
- - pattern: "ᆽᄋ"
215
- result: "ᆺᄌ"
216
- - pattern: "ᆽ"
217
- result: "ᆺ"
218
-
219
- # HANGUL JONGSEONG CHIEUCH
220
- - pattern: "ᆾᄋ"
221
- result: "ᆺᄎ"
222
- - pattern: "ᆾ"
223
- result: "ᆺ"
224
-
225
- # HANGUL JONGSEONG KHIEUKH
226
- - pattern: "ᆿᄋ"
227
- result: "ᆨᄏ"
228
- - pattern: "ᆿ"
229
- result: "ᆨ"
230
-
231
- # HANGUL JONGSEONG THIEUTH
232
- - pattern: "ᇀᄋ"
233
- result: "ᆺᄐ"
234
- - pattern: "ᇀ"
235
- result: "ᆺ"
236
-
237
- # HANGUL JONGSEONG PHIEUPH
238
- - pattern: "ᇁᄋ"
239
- result: "ᆸᄑ"
240
- - pattern: "ᇁ"
241
- result: "ᆸ"
242
-
243
- # HANGUL JONGSEONG HIEUH
244
- - pattern: "ᇂᄀ"
245
- result: "ᄏ"
246
- - pattern: "ᇂᄃ"
247
- result: "ᄐ"
248
- - pattern: "ᇂᄇ"
249
- result: "ᄑ"
250
- - pattern: "ᇂᄌ"
251
- result: "ᄎ"
252
- - pattern: "ᇂ"
253
- result: ""
254
-
255
- # From Unicode Chart
256
- # https://github.com/unicode-org/cldr/blob/master/common/transforms/Korean-Latin-BGN.xml
257
-
258
- - pattern: "ᆮᄋ" # HANGUL JONGSEONG TIEUT + CHOSEONG IEUNG
259
- result: "d"
260
-
261
- - pattern: "ᆨᄀ"
262
- result: "kg" # HANGUL JONGSEONG KIYEOK + CHOSEONG KIYEOK
263
- - pattern: "ᆨᄂ"
264
- result: "ngn" # HANGUL JONGSEONG KIYEOK + CHOSEONG NIEUN
265
- - pattern: "ᆨᄃ"
266
- result: "kd" # HANGUL JONGSEONG KIYEOK + CHOSEONG TIEUT
267
- - pattern: "ᆨᄅ"
268
- result: "ngn" # HANGUL JONGSEONG KIYEOK + CHOSEONG RIEUL
269
- - pattern: "ᆨᄆ"
270
- result: "ngm" # HANGUL JONGSEONG KIYEOK + CHOSEONG MIEUM
271
- - pattern: "ᆨᄇ"
272
- result: "kb" # HANGUL JONGSEONG KIYEOK + CHOSEONG PIEUP
273
- - pattern: "ᆨᄉ"
274
- result: "ks" # HANGUL JONGSEONG KIYEOK + CHOSEONG SIOS
275
- - pattern: "ᆨᄋ"
276
- result: "g" # HANGUL JONGSEONG KIYEOK + CHOSEONG IEUNG
277
- - pattern: "ᆨᄌ"
278
- result: "kj" # HANGUL JONGSEONG KIYEOK + CHOSEONG CIEUC
279
- - pattern: "ᆨᄎ"
280
- result: "kch" # HANGUL JONGSEONG KIYEOK + CHOSEONG CHIEUCH
281
- - pattern: "ᆨᄏ"
282
- result: "kk" # HANGUL JONGSEONG KIYEOK + CHOSEONG KHIEUKH # NOTE: the dash is always skipped
283
- - pattern: "ᆨᄐ"
284
- result: "kt" # HANGUL JONGSEONG KIYEOK + CHOSEONG THIEUTH
285
- - pattern: "ᆨᄑ"
286
- result: "kp" # HANGUL JONGSEONG KIYEOK + CHOSEONG PHIEUPH
287
- - pattern: "ᆨᄒ"
288
- result: "kh" # HANGUL JONGSEONG KIYEOK + CHOSEONG HIEUH
289
- - pattern: "ᆨᄁ"
290
- result: "kkk" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGKIYEOK
291
- - pattern: "ᆨᄄ"
292
- result: "ktt" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGTIEUT
293
- - pattern: "ᆨᄈ"
294
- result: "kpp" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGPIEUP
295
- - pattern: "ᆨᄊ"
296
- result: "kss" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGSIOS
297
- - pattern: "ᆨᄍ"
298
- result: "kjj" # HANGUL JONGSEONG KIYEOK + CHOSEONG SSANGCIEUC
299
- - pattern: "ᆫᄀ"
300
- result: "ng" # HANGUL JONGSEONG NIEUN + CHOSEONG KIEUK
301
- - pattern: "ᆫᄂ"
302
- result: "nn" # HANGUL JONGSEONG NIEUN + CHOSEONG NIEUN
303
- - pattern: "ᆫᄃ"
304
- result: "nd" # HANGUL JONGSEONG NIEUN + CHOSEONG TIEUT
305
- - pattern: "ᆫᄅ"
306
- result: "ll" # HANGUL JONGSEONG NIEUN + CHOSEONG RIEUL
307
- - pattern: "ᆫᄆ"
308
- result: "nm" # HANGUL JONGSEONG NIEUN + CHOSEONG MIEUM
309
- - pattern: "ᆫᄇ"
310
- result: "nb" # HANGUL JONGSEONG NIEUN + CHOSEONG PIEUP
311
- - pattern: "ᆫᄉ"
312
- result: "ns" # HANGUL JONGSEONG NIEUN + CHOSEONG SIOS
313
- - pattern: "ᆫᄋ"
314
- result: "n" # HANGUL JONGSEONG NIEUN + CHOSEONG IEUNG
315
- - pattern: "ᆫᄌ"
316
- result: "nj" # HANGUL JONGSEONG NIEUN + CHOSEONG CIEUC
317
- - pattern: "ᆫᄎ"
318
- result: "nch" # HANGUL JONGSEONG NIEUN + CHOSEONG CHIEUCH
319
- - pattern: "ᆫᄏ"
320
- result: "nk" # HANGUL JONGSEONG NIEUN + CHOSEONG KHIEUKH
321
- - pattern: "ᆫᄐ"
322
- result: "nt" # HANGUL JONGSEONG NIEUN + CHOSEONG THIEUTH
323
- - pattern: "ᆫᄑ"
324
- result: "np" # HANGUL JONGSEONG NIEUN + CHOSEONG PHIEUPH
325
- - pattern: "ᆫᄒ"
326
- result: "nh" # HANGUL JONGSEONG NIEUN + CHOSEONG HIEUH
327
- - pattern: "ᆫᄁ"
328
- result: "nkk" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGKIYEOK
329
- - pattern: "ᆫᄄ"
330
- result: "ntt" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGTIEUT
331
- - pattern: "ᆫᄈ"
332
- result: "npp" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGPIEUP
333
- - pattern: "ᆫᄊ"
334
- result: "nss" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGSIOS
335
- - pattern: "ᆫᄍ"
336
- result: "njj" # HANGUL JONGSEONG NIEUN + CHOSEONG SSANGCIEUC
337
- - pattern: "ᆯᄀ"
338
- result: "lg" # HANGUL JONGSEONG RIEUL + CHOSEONG KIYEOK
339
- - pattern: "ᆯᄂ"
340
- result: "ll" # HANGUL JONGSEONG RIEUL + CHOSEONG NIEUN
341
- - pattern: "ᆯᄃ"
342
- result: "ld" # HANGUL JONGSEONG RIEUL + CHOSEONG TIEUT
343
- - pattern: "ᆯᄅ"
344
- result: "ll" # HANGUL JONGSEONG RIEUL + CHOSEONG RIEUL
345
- - pattern: "ᆯᄆ"
346
- result: "lm" # HANGUL JONGSEONG RIEUL + CHOSEONG MIEUM
347
- - pattern: "ᆯᄇ"
348
- result: "lb" # HANGUL JONGSEONG RIEUL + CHOSEONG PIEUP
349
- - pattern: "ᆯᄉ"
350
- result: "ls" # HANGUL JONGSEONG RIEUL + CHOSEONG SIOS
351
- - pattern: "ᆯᄋ"
352
- result: "r" # HANGUL JONGSEONG RIEUL + CHOSEONG IEUNG
353
- - pattern: "ᆯᄌ"
354
- result: "lj" # HANGUL JONGSEONG RIEUL + CHOSEONG CIEUC
355
- - pattern: "ᆯᄎ"
356
- result: "lch" # HANGUL JONGSEONG RIEUL + CHOSEONG CHIEUCH
357
- - pattern: "ᆯᄏ"
358
- result: "lk" # HANGUL JONGSEONG RIEUL + CHOSEONG KHIEUKH
359
- - pattern: "ᆯᄐ"
360
- result: "lt" # HANGUL JONGSEONG RIEUL + CHOSEONG THIEUTH
361
- - pattern: "ᆯᄑ"
362
- result: "lp" # HANGUL JONGSEONG RIEUL + CHOSEONG PHIEUPH
363
- - pattern: "ᆯᄒ"
364
- result: "rh" # HANGUL JONGSEONG RIEUL + CHOSEONG HIEUH
365
- - pattern: "ᆯᄁ"
366
- result: "lkk" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGKIYEOK
367
- - pattern: "ᆯᄄ"
368
- result: "ltt" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGTIEUT
369
- - pattern: "ᆯᄈ"
370
- result: "lpp" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGPIEUP
371
- - pattern: "ᆯᄊ"
372
- result: "lss" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGSIOS
373
- - pattern: "ᆯᄍ"
374
- result: "ljj" # HANGUL JONGSEONG RIEUL + CHOSEONG SSANGCIEUC
375
- - pattern: "ᆷᄀ"
376
- result: "mg" # HANGUL JONGSEONG MIEUM + CHOSEONG KIYEOK
377
- - pattern: "ᆷᄂ"
378
- result: "mn" # HANGUL JONGSEONG MIEUM + CHOSEONG NIEUN
379
- - pattern: "ᆷᄃ"
380
- result: "md" # HANGUL JONGSEONG MIEUM + CHOSEONG TIEUT
381
- - pattern: "ᆷᄅ"
382
- result: "mn" # HANGUL JONGSEONG MIEUM + CHOSEONG RIEUL
383
- - pattern: "ᆷᄆ"
384
- result: "mm" # HANGUL JONGSEONG MIEUM + CHOSEONG MIEUM
385
- - pattern: "ᆷᄇ"
386
- result: "mb" # HANGUL JONGSEONG MIEUM + CHOSEONG PIEUP
387
- - pattern: "ᆷᄉ"
388
- result: "ms" # HANGUL JONGSEONG MIEUM + CHOSEONG SIOS
389
- - pattern: "ᆷᄋ"
390
- result: "m" # HANGUL JONGSEONG MIEUM + CHOSEONG IEUNG
391
- - pattern: "ᆷᄌ"
392
- result: "mj" # HANGUL JONGSEONG MIEUM + CHOSEONG CIEUC
393
- - pattern: "ᆷᄎ"
394
- result: "mch" # HANGUL JONGSEONG MIEUM + CHOSEONG CHIEUCH
395
- - pattern: "ᆷᄏ"
396
- result: "mk" # HANGUL JONGSEONG MIEUM + CHOSEONG KHIEUKH
397
- - pattern: "ᆷᄐ"
398
- result: "mt" # HANGUL JONGSEONG MIEUM + CHOSEONG THIEUTH
399
- - pattern: "ᆷᄑ"
400
- result: "mp" # HANGUL JONGSEONG MIEUM + CHOSEONG PHIEUPH
401
- - pattern: "ᆷᄒ"
402
- result: "mh" # HANGUL JONGSEONG MIEUM + CHOSEONG HIEUH
403
- - pattern: "ᆷᄁ"
404
- result: "mkk" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGKIYEOK
405
- - pattern: "ᆷᄄ"
406
- result: "mtt" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGTIEUT
407
- - pattern: "ᆷᄈ"
408
- result: "mpp" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGPIEUP
409
- - pattern: "ᆷᄊ"
410
- result: "mss" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGSIOS
411
- - pattern: "ᆷᄍ"
412
- result: "mjj" # HANGUL JONGSEONG MIEUM + CHOSEONG SSANGCIEUC
413
- - pattern: "ᆸᄀ"
414
- result: "pg" # HANGUL JONGSEONG PIEUP + CHOSEONG KIYEOK
415
- - pattern: "ᆸᄂ"
416
- result: "mn" # HANGUL JONGSEONG PIEUP + CHOSEONG NIEUN
417
- - pattern: "ᆸᄃ"
418
- result: "pd" # HANGUL JONGSEONG PIEUP + CHOSEONG TIEUT
419
- - pattern: "ᆸᄅ"
420
- result: "mn" # HANGUL JONGSEONG PIEUP + CHOSEONG RIEUL
421
- - pattern: "ᆸᄆ"
422
- result: "mm" # HANGUL JONGSEONG PIEUP + CHOSEONG MIEUM
423
- - pattern: "ᆸᄇ"
424
- result: "pb" # HANGUL JONGSEONG PIEUP + CHOSEONG PIEUP
425
- - pattern: "ᆸᄉ"
426
- result: "ps" # HANGUL JONGSEONG PIEUP + CHOSEONG SIOS
427
- - pattern: "ᆸᄋ"
428
- result: "b" # HANGUL JONGSEONG PIEUP + CHOSEONG IEUNG
429
- - pattern: "ᆸᄌ"
430
- result: "pj" # HANGUL JONGSEONG PIEUP + CHOSEONG CIEUC
431
- - pattern: "ᆸᄎ"
432
- result: "pch" # HANGUL JONGSEONG PIEUP + CHOSEONG CHIEUCH
433
- - pattern: "ᆸᄏ"
434
- result: "pk" # HANGUL JONGSEONG PIEUP + CHOSEONG KHIEUKH
435
- - pattern: "ᆸᄐ"
436
- result: "pt" # HANGUL JONGSEONG PIEUP + CHOSEONG THIEUTH
437
- - pattern: "ᆸᄑ"
438
- result: "pp" # HANGUL JONGSEONG PIEUP + CHOSEONG PHIEUPH
439
- - pattern: "ᆸᄒ"
440
- result: "ph" # HANGUL JONGSEONG PIEUP + CHOSEONG HIEUH
441
- - pattern: "ᆸᄁ"
442
- result: "pkk" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGKIYEOK
443
- - pattern: "ᆸᄄ"
444
- result: "ptt" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGTIEUT
445
- - pattern: "ᆸᄈ"
446
- result: "ppp" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGPIEUP
447
- - pattern: "ᆸᄊ"
448
- result: "pss" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGSIOS
449
- - pattern: "ᆸᄍ"
450
- result: "pjj" # HANGUL JONGSEONG PIEUP + CHOSEONG SSANGCIEUC
451
- - pattern: "ᆺᄀ"
452
- result: "tg" # HANGUL JONGSEONG SIOS + CHOSEONG KIYEOK
453
- - pattern: "ᆺᄂ"
454
- result: "nn" # HANGUL JONGSEONG SIOS + CHOSEONG NIEUN
455
- - pattern: "ᆺᄃ"
456
- result: "td" # HANGUL JONGSEONG SIOS + CHOSEONG TIEUT
457
- - pattern: "ᆺᄅ"
458
- result: "nn" # HANGUL JONGSEONG SIOS + CHOSEONG RIEUL
459
- - pattern: "ᆺᄆ"
460
- result: "nm" # HANGUL JONGSEONG SIOS + CHOSEONG MIEUM
461
- - pattern: "ᆺᄇ"
462
- result: "tb" # HANGUL JONGSEONG SIOS + CHOSEONG PIEUP
463
- - pattern: "ᆺᄉ"
464
- result: "ts" # HANGUL JONGSEONG SIOS + CHOSEONG SIOS
465
- - pattern: "ᆺᄋ"
466
- result: "s" # HANGUL JONGSEONG SIOS + CHOSEONG IEUNG
467
- - pattern: "ᆺᄌ"
468
- result: "tj" # HANGUL JONGSEONG SIOS + CHOSEONG CIEUC
469
- - pattern: "ᆺᄎ"
470
- result: "tch" # HANGUL JONGSEONG SIOS + CHOSEONG CHIEUCH
471
- - pattern: "ᆺᄏ"
472
- result: "tk" # HANGUL JONGSEONG SIOS + CHOSEONG KHIEUKH
473
- - pattern: "ᆺᄐ"
474
- result: "tt" # HANGUL JONGSEONG SIOS + CHOSEONG THIEUTH
475
- - pattern: "ᆺᄑ"
476
- result: "tp" # HANGUL JONGSEONG SIOS + CHOSEONG PHIEUPH
477
- - pattern: "ᆺᄒ"
478
- result: "th" # HANGUL JONGSEONG SIOS + CHOSEONG HIEUH
479
- - pattern: "ᆺᄁ"
480
- result: "tkk" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGKIYEOK
481
- - pattern: "ᆺᄄ"
482
- result: "ttt" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGTIEUT
483
- - pattern: "ᆺᄈ"
484
- result: "tpp" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGPIEUP
485
- - pattern: "ᆺᄊ"
486
- result: "tss" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGSIOS
487
- - pattern: "ᆺᄍ"
488
- result: "tjj" # HANGUL JONGSEONG SIOS + CHOSEONG SSANGCIEUC
489
- - pattern: "ᆼᄀ"
490
- result: "ngg" # HANGUL JONGSEONG IEUNG + CHOSEONG KIYEOK
491
- - pattern: "ᆼᄂ"
492
- result: "ngn" # HANGUL JONGSEONG IEUNG + CHOSEONG NIEUN
493
- - pattern: "ᆼᄃ"
494
- result: "ngd" # HANGUL JONGSEONG IEUNG + CHOSEONG TIEUT
495
- - pattern: "ᆼᄅ"
496
- result: "ngn" # HANGUL JONGSEONG IEUNG + CHOSEONG RIEUL
497
- - pattern: "ᆼᄆ"
498
- result: "ngm" # HANGUL JONGSEONG IEUNG + CHOSEONG MIEUM
499
- - pattern: "ᆼᄇ"
500
- result: "ngb" # HANGUL JONGSEONG IEUNG + CHOSEONG PIEUP
501
- - pattern: "ᆼᄉ"
502
- result: "ngs" # HANGUL JONGSEONG IEUNG + CHOSEONG SIOS
503
- - pattern: "ᆼᄋ"
504
- result: "ng" # HANGUL JONGSEONG IEUNG + CHOSEONG IEUNG
505
- - pattern: "ᆼᄌ"
506
- result: "ngj" # HANGUL JONGSEONG IEUNG + CHOSEONG CIEUC
507
- - pattern: "ᆼᄎ"
508
- result: "ngch" # HANGUL JONGSEONG IEUNG + CHOSEONG CHIEUCH
509
- - pattern: "ᆼᄏ"
510
- result: "ngk" # HANGUL JONGSEONG IEUNG + CHOSEONG KHIEUKH
511
- - pattern: "ᆼᄐ"
512
- result: "ngt" # HANGUL JONGSEONG IEUNG + CHOSEONG THIEUTH
513
- - pattern: "ᆼᄑ"
514
- result: "ngp" # HANGUL JONGSEONG IEUNG + CHOSEONG PHIEUPH
515
- - pattern: "ᆼᄒ"
516
- result: "ngh" # HANGUL JONGSEONG IEUNG + CHOSEONG HIEUH
517
- - pattern: "ᆼᄁ"
518
- result: "ngkk" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGKIYEOK
519
- - pattern: "ᆼᄄ"
520
- result: "ngtt" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGTIEUT
521
- - pattern: "ᆼᄈ"
522
- result: "ngpp" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGPIEUP
523
- - pattern: "ᆼᄊ"
524
- result: "ngss" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGSIOS
525
- - pattern: "ᆼᄍ"
526
- result: "ngjj" # HANGUL JONGSEONG IEUNG + CHOSEONG SSANGCIEUC
527
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄀ"
528
- result: "g" # VOWEL + CHOSEONG KIYEOK
529
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄂ"
530
- result: "n" # VOWEL + CHOSEONG NIEUN
531
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄃ"
532
- result: "d" # VOWEL + CHOSEONG TIEUT
533
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄅ"
534
- result: "r" # VOWEL + CHOSEONG RIEUL
535
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄆ"
536
- result: "m" # VOWEL + CHOSEONG MIEUM
537
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄇ"
538
- result: "b" # VOWEL + CHOSEONG PIEUP
539
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄉ"
540
- result: "s" # VOWEL + CHOSEONG SIOS
541
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄋ"
542
- result: "" # VOWEL + CHOSEONG IEUNG
543
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄌ"
544
- result: "j" # VOWEL + CHOSEONG CIEUC
545
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄎ"
546
- result: "ch" # VOWEL + CHOSEONG CHIEUCH
547
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄏ"
548
- result: "k" # VOWEL + CHOSEONG KHIEUKH
549
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄐ"
550
- result: "t" # VOWEL + CHOSEONG THIEUTH
551
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄑ"
552
- result: "p" # VOWEL + CHOSEONG PHIEUPH
553
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄒ"
554
- result: "h" # VOWEL + CHOSEONG HIEUH
555
- - pattern: "(?<=[-A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄁ"
556
- result: "kk" # VOWEL + CHOSEONG SSANGKIYEOK
557
- - pattern: "(?<=[A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄄ"
558
- result: "tt" # VOWEL + CHOSEONG SSANGTIEUT
559
- - pattern: "(?<=[A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄈ"
560
- result: "pp" # VOWEL + CHOSEONG SSANGPIEUP
561
- - pattern: "(?<=[A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄊ"
562
- result: "ss" # VOWEL + CHOSEONG SSANGSIOS
563
- - pattern: "(?<=[A-Za-z0-9ᅡᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵ])ᄍ"
564
- result: "jj" # VOWEL + CHOSEONG SSANGCIEUC
565
- - pattern: "ᆰᄀ"
566
- result: "lg" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG KIYEOK
567
- - pattern: "ᆰᄂ"
568
- result: "ngn" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG NIEUN
569
- - pattern: "ᆰᄃ"
570
- result: "kd" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG TIEUT
571
- - pattern: "ᆰᄅ"
572
- result: "ngn" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG RIEUL
573
- - pattern: "ᆰᄆ"
574
- result: "ngm" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG MIEUM
575
- - pattern: "ᆰᄇ"
576
- result: "kb" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG PIEUP
577
- - pattern: "ᆰᄉ"
578
- result: "ks" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SIOS
579
- - pattern: "ᆰᄋ"
580
- result: "lg" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG IEUNG
581
- - pattern: "ᆰᄌ"
582
- result: "kj" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG CIEUC
583
- - pattern: "ᆰᄎ"
584
- result: "kch" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG CHIEUCH
585
- - pattern: "ᆰᄏ"
586
- result: "lk" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG KHIEUKH
587
- - pattern: "ᆰᄐ"
588
- result: "kt" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG THIEUTH
589
- - pattern: "ᆰᄑ"
590
- result: "kp" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG PHIEUPH
591
- - pattern: "ᆰᄒ"
592
- result: "lk" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG HIEUH
593
- - pattern: "ᆰᄁ"
594
- result: "lkk" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGKIYEOK
595
- - pattern: "ᆰᄄ"
596
- result: "ktt" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGTIEUT
597
- - pattern: "ᆰᄈ"
598
- result: "kpp" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGPIEUP
599
- - pattern: "ᆰᄊ"
600
- result: "kss" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGSIOS
601
- - pattern: "ᆰᄍ"
602
- result: "kjj" # HANGUL JONGSEONG RIEUL-KIYEOK + CHOSEONG SSANGCIEUC
603
- - pattern: "ᆱᄀ"
604
- result: "mg" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG KIYEOK
605
- - pattern: "ᆱᄂ"
606
- result: "mn" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG NIEUN
607
- - pattern: "ᆱᄃ"
608
- result: "md" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG TIEUT
609
- - pattern: "ᆱᄅ"
610
- result: "mn" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG RIEUL
611
- - pattern: "ᆱᄆ"
612
- result: "lm" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG MIEUM
613
- - pattern: "ᆱᄇ"
614
- result: "mb" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG PIEUP
615
- - pattern: "ᆱᄉ"
616
- result: "ms" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SIOS
617
- - pattern: "ᆱᄋ"
618
- result: "lm" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG IEUNG
619
- - pattern: "ᆱᄌ"
620
- result: "mj" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG CIEUC
621
- - pattern: "ᆱᄎ"
622
- result: "mch" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG CHIEUCH
623
- - pattern: "ᆱᄏ"
624
- result: "mk" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG KHIEUKH
625
- - pattern: "ᆱᄐ"
626
- result: "mt" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG THIEUTH
627
- - pattern: "ᆱᄑ"
628
- result: "mp" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG PHIEUPH
629
- - pattern: "ᆱᄒ"
630
- result: "mh" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG HIEUH
631
- - pattern: "ᆱᄁ"
632
- result: "mkk" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGKIYEOK
633
- - pattern: "ᆱᄄ"
634
- result: "mtt" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGTIEUT
635
- - pattern: "ᆱᄈ"
636
- result: "mpp" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGPIEUP
637
- - pattern: "ᆱᄊ"
638
- result: "mss" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGSIOS
639
- - pattern: "ᆱᄍ"
640
- result: "mjj" # HANGUL JONGSEONG RIEUL-MIEUM + CHOSEONG SSANGCIEUC
641
- - pattern: "ᆲᄀ"
642
- result: "pg" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG KIYEOK
643
- - pattern: "ᆲᄂ"
644
- result: "mn" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG NIEUN
645
- - pattern: "ᆲᄃ"
646
- result: "pd" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG TIEUT
647
- - pattern: "ᆲᄅ"
648
- result: "mn" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG RIEUL
649
- - pattern: "ᆲᄆ"
650
- result: "mm" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG MIEUM
651
- - pattern: "ᆲᄇ"
652
- result: "lb" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG PIEUP
653
- - pattern: "ᆲᄉ"
654
- result: "ps" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SIOS
655
- - pattern: "ᆲᄋ"
656
- result: "lb" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG IEUNG
657
- - pattern: "ᆲᄌ"
658
- result: "pj" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG CIEUC
659
- - pattern: "ᆲᄎ"
660
- result: "pch" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG CHIEUCH
661
- - pattern: "ᆲᄏ"
662
- result: "pk" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG KHIEUKH
663
- - pattern: "ᆲᄐ"
664
- result: "pt" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG THIEUTH
665
- - pattern: "ᆲᄑ"
666
- result: "lp" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG PHIEUPH
667
- - pattern: "ᆲᄒ"
668
- result: "lp" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG HIEUH
669
- - pattern: "ᆲᄁ"
670
- result: "pkk" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGKIYEOK
671
- - pattern: "ᆲᄄ"
672
- result: "ptt" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGTIEUT
673
- - pattern: "ᆲᄈ"
674
- result: "lpp" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGPIEUP
675
- - pattern: "ᆲᄊ"
676
- result: "pss" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGSIOS
677
- - pattern: "ᆲᄍ"
678
- result: "pjj" # HANGUL JONGSEONG RIEUL-PIEUP + CHOSEONG SSANGCIEUC
679
- - pattern: "(?<= )ᄀ"
680
- result: "g" # HANGUL CHOSEONG KIYEOK
681
- - pattern: "(?<= )ᄂ"
682
- result: "n" # HANGUL CHOSEONG NIEUN
683
- - pattern: "(?<= )ᄃ"
684
- result: "d" # HANGUL CHOSEONG TIEUT
685
- - pattern: "(?<= )ᄅ(?=[ᅣᅤᅧᅨᅭᅲ])"
686
- result: "" # HANGUL CHOSEONG RIEUL # R-onset rule
687
- - pattern: "(?<= )ᄅ"
688
- result: "n" # HANGUL CHOSEONG RIEUL
689
- - pattern: "(?<= )ᄆ"
690
- result: "m" # HANGUL CHOSEONG MIEUM
691
- - pattern: "(?<= )ᄇ"
692
- result: "b" # HANGUL CHOSEONG PIEUP
693
- - pattern: "(?<= )ᄉ"
694
- result: "s" # HANGUL CHOSEONG SIOS
695
- - pattern: "(?<= )ᄋ"
696
- result: "" # HANGUL CHOSEONG IEUNG
697
- - pattern: "(?<= )ᄌ"
698
- result: "j" # HANGUL CHOSEONG CIEUC
699
- - pattern: "(?<= )ᄎ"
700
- result: "ch" # HANGUL CHOSEONG CHIEUCH
701
- - pattern: "(?<= )ᄏ"
702
- result: "k" # HANGUL CHOSEONG KHIEUKH
703
- - pattern: "(?<= )ᄐ"
704
- result: "t" # HANGUL CHOSEONG THIEUTH
705
- - pattern: "(?<= )ᄑ"
706
- result: "p" # HANGUL CHOSEONG PHIEUPH
707
- - pattern: "(?<= )ᄒ"
708
- result: "h" # HANGUL CHOSEONG HIEUH
709
- - pattern: "(?<= )ᄁ"
710
- result: "kk" # HANGUL CHOSEONG SSANGKIYEOK
711
- - pattern: "(?<= )ᄭ"
712
- result: "kk" # HANGUL CHOSEONG SIOS-KIYEOK
713
- - pattern: "(?<= )ᄄ"
714
- result: "tt" # HANGUL CHOSEONG SSANGTIEUT
715
- - pattern: "(?<= )ᄯ"
716
- result: "tt" # HANGUL CHOSEONG SIOS-TIEUT
717
- - pattern: "(?<= )ᄈ"
718
- result: "pp" # HANGUL CHOSEONG SSANGPIEUP
719
- - pattern: "(?<= )ᄲ"
720
- result: "pp" # HANGUL CHOSEONG SIOS-PIEUP
721
- - pattern: "(?<= )ᄊ"
722
- result: "ss" # HANGUL CHOSEONG SSANGSIOS
723
- - pattern: "(?<= )ᄍ"
724
- result: "jj" # HANGUL CHOSEONG SSANGCIEUC
725
- - pattern: "(?<= )ᄶ"
726
- result: "jj" # HANGUL CHOSEONG SIOS-CIEUC
727
- - pattern: "ᅡ"
728
- result: "a" # HANGUL JUNGSEONG A
729
- - pattern: "ᅣ"
730
- result: "ya" # HANGUL JUNGSEONG YA
731
- - pattern: "ᅥ"
732
- result: "eo" # HANGUL JUNGSEONG EO
733
- - pattern: "ᅧ"
734
- result: "yeo" # HANGUL JUNGSEONG YEO
735
- - pattern: "ᅩ"
736
- result: "o" # HANGUL JUNGSEONG O
737
- - pattern: "ᅭ"
738
- result: "yo" # HANGUL JUNGSEONG YO
739
- - pattern: "ᅮ"
740
- result: "u" # HANGUL JUNGSEONG U
741
- - pattern: "ᅲ"
742
- result: "yu" # HANGUL JUNGSEONG YU
743
- - pattern: "ᅳ"
744
- result: "eu" # HANGUL JUNGSEONG EU
745
- - pattern: "ᅵ"
746
- result: "i" # HANGUL JUNGSEONG I
747
- - pattern: "ᅢ"
748
- result: "ae" # HANGUL JUNGSEONG AE
749
- - pattern: "ᅤ"
750
- result: "yae" # HANGUL JUNGSEONG YAE
751
- - pattern: "ᅦ"
752
- result: "e" # HANGUL JUNGSEONG E
753
- - pattern: "ᅨ"
754
- result: "ye" # HANGUL JUNGSEONG YE
755
- - pattern: "ᅬ"
756
- result: "oe" # HANGUL JUNGSEONG OE
757
- - pattern: "ᅱ"
758
- result: "wi" # HANGUL JUNGSEONG WI
759
- - pattern: "ᅴ"
760
- result: "ui" # HANGUL JUNGSEONG YI
761
- - pattern: "ᅪ"
762
- result: "wa" # HANGUL JUNGSEONG WA
763
- - pattern: "ᅯ"
764
- result: "wo" # HANGUL JUNGSEONG WEO
765
- - pattern: "ᅫ"
766
- result: "wae" # HANGUL JUNGSEONG WAE
767
- - pattern: "ᅰ"
768
- result: "we" # HANGUL JUNGSEONG WE
769
- - pattern: "ᆨ(?=[ -])"
770
- result: "k" # HANGUL JONGSEONG KIYEOK
771
- - pattern: "ᆫ(?=[ -])"
772
- result: "n" # HANGUL JONGSEONG NIEUN
773
- - pattern: "ᆮ(?=[ -])"
774
- result: "t" # HANGUL JONGSEONG TIEUT
775
- - pattern: "ᆯ(?=[ -])"
776
- result: "l" # HANGUL JONGSEONG RIEUL
777
- - pattern: "ᆷ(?=[ -])"
778
- result: "m" # HANGUL JONGSEONG MIEUM
779
- - pattern: "ᆸ(?=[ -])"
780
- result: "p" # HANGUL JONGSEONG PIEUP
781
- - pattern: "ᆺ(?=[ -])"
782
- result: "t" # HANGUL JONGSEONG SIOS
783
- - pattern: "ᆼ(?=[ -])"
784
- result: "ng" # HANGUL JONGSEONG IEUNG
785
- - pattern: "ᆽ(?=[ -])"
786
- result: "t" # HANGUL JONGSEONG CIEUC
787
- - pattern: "ᆾ(?=[ -])"
788
- result: "t" # HANGUL JONGSEONG CHIEUCH
789
- - pattern: "ᆿ(?=[ -])"
790
- result: "k" # HANGUL JONGSEONG KHIEUKH
791
- - pattern: "ᇀ(?=[ -])"
792
- result: "t" # HANGUL JONGSEONG THIEUTH
793
- - pattern: "ᇁ(?=[ -])"
794
- result: "p" # HANGUL JONGSEONG PHIEUPH
795
- - pattern: "ᆰ(?=[ -])"
796
- result: "k" # HANGUL JONGSEONG RIEUL-KIYEOK
797
- - pattern: "ᆲ(?=[ -])"
798
- result: "p" # HANGUL JONGSEONG RIEUL-PIEUP
799
-
800
- # Remove space added
801
- - pattern: "^ "
802
- result: ""
803
- - pattern: " $"
804
- result: ""
805
-
806
- characters:
807
- # This is based on Jamo