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,221 +0,0 @@
1
- ---
2
- authority_id: var
3
- id: 1872
4
- language: iso-639-2:hin
5
- source_script: Deva
6
- destination_script: Latn
7
- name: Hindi Hunterian system
8
- url: https://transliteration.eki.ee/pdf/Hindi-Marathi-Nepali.pdf
9
- creation_date: 1872
10
- description:
11
- The Hunterian system is the national system of romanization in India.
12
-
13
- notes:
14
-
15
- - a, i and u are used in word-final position. The a in gaon and the u in pur are not accented.
16
- - ज्ञ is transliterated gy.
17
- - v is used before i.
18
-
19
- tests:
20
- - source: "परिपक्क"
21
- expected: "paraipakka"
22
- - source: "जगत्"
23
- expected: "jagat"
24
- - source: "संख्या"
25
- expected: "sankhyaā"
26
- - source: "गंभीर मरीजों के मामले में भारत दूसरे नंबर पर"
27
- expected: "ganbhaīra maraījaon kae maāmalae maen bhaārata daūsarae nanbara para"
28
- - source: "कोरोना अपडेट्स"
29
- expected: "kaoraonaā apadaetsa"
30
- - source: "सीडीसी चीफ का बयान अहम"
31
- expected: "saīdaīsaī chaīpha kaā bayaāna ahama"
32
- - source: "गूगल प्ले स्टोर पर पेटीएम की वापसी"
33
- expected: "gaūgala plae staora para paetaīema kaī waāpasaī"
34
- - source: "भारत में गैंबलिंग की इजाजत नहीं"
35
- expected: "bhaārata maen gaainbalainga kaī ijaājata nahaīn"
36
- - source: "कोरोना वैक्सीन मुद्दे पर घिरे राष्ट्रपति; जो बाइडेन बोले- मुझे और देश को वैज्ञानिकों पर भरोसा है, डोनाल्ड ट्रम्प पर नहीं"
37
- expected: "kaoraonaā waaiksaīna mauddae para ghairae raāshtrapatai; jao baāidaena baolae- maujhae aura daesa kao waaigyānaikaon para bharaosaā haai, daonaālda trampa para nahaīn"
38
- - source: "गूगल की कार्रवाई पर पेटीएम ने कहा था कि ऐप को अस्थायी तौर पर प्ले-स्टोर से हटाया गया है, आपके पैसे सुरक्षित हैं"
39
- expected: "gaūgala kaī kaārrawaāi para paetaīema nae kahaā thaā kai aipa kao asthaāyaī taaura para plae-staora sae hataāyaā gayaā haai, āpakae paaisae saurakshaita haain"
40
-
41
- map:
42
-
43
- rules:
44
- # note[1]
45
- - pattern: (?<=)\u0906(?=\b)
46
- result: "a"
47
- - pattern: (?<=)\u0908(?=\b)
48
- result: "i"
49
- - pattern: (?<=)\u090A(?=\b)
50
- result: "u"
51
-
52
- # note[3]
53
- - pattern: \u0935(?=[इई])
54
- result: "v"
55
-
56
-
57
-
58
- characters:
59
-
60
- # I. Vowels and Diphthongs (see Note 1)
61
-
62
- 'अ': 'a'
63
- 'आ': 'ā'
64
- 'इ': 'i'
65
- 'ई': 'ī'
66
- 'उ': 'u'
67
- 'ऊ': 'ū'
68
- 'ऋ': 'ri'
69
- 'ए': 'e'
70
- 'ऐ': 'ai'
71
- 'ओ': 'o'
72
- 'औ': 'au'
73
-
74
- # II. Consonants (see Note 2)
75
- # Gutturals
76
- 'क': 'ka'
77
- 'ख': 'kha'
78
- 'ग': 'ga'
79
- 'घ': 'gha'
80
- 'ङ': 'nga'
81
-
82
- # Palatals
83
- 'च': 'cha'
84
- 'छ': 'chha'
85
- 'ज': 'ja'
86
- 'झ': 'jha'
87
- 'ञ': 'nya'
88
-
89
- # Cerebrals
90
- 'ट': 'ta'
91
- 'ठ': 'tha'
92
- 'ड': 'da'
93
- 'ढ': 'dha'
94
- 'ण': 'na'
95
-
96
- # Dentals
97
- 'त': 'ta'
98
- 'थ': 'tha'
99
- 'द': 'da'
100
- 'ध': 'dha'
101
- 'न': 'na'
102
-
103
- # Labials
104
- 'प': 'pa'
105
- 'फ': 'pha'
106
- 'ब': 'ba'
107
- 'भ': 'bha'
108
- 'म': 'ma'
109
-
110
- # Semivowels
111
- 'य': 'ya'
112
- 'र': 'ra'
113
- 'ल': 'la'
114
- 'व': 'wa'
115
-
116
- # Sibilants
117
- 'श': 'sa'
118
- 'ष': 'sha'
119
- 'स': 'sa'
120
-
121
- # Aspirate
122
- 'ह': 'ha'
123
-
124
-
125
- # Additional consonants
126
- 'क़': 'qa'
127
- 'ख़': 'kha'
128
- 'ग़': 'ġa'
129
- 'ज़': 'za'
130
- 'ड़': 'ṙa'
131
- 'ढ़': 'ṙha'
132
- 'फ़': 'fa'
133
- 'ळ': 'la'
134
-
135
- # Anusvāra
136
- 'ं': 'n'
137
-
138
- # Bisarga
139
- 'ः': 'h'
140
-
141
- # Anunāsika
142
- 'ँ': 'm'
143
-
144
- # Note 2
145
- 'ज्ञ': 'gy'
146
-
147
-
148
- # Medials # Needed for connecting constants
149
- 'ा': "ā"
150
- 'ि': "i"
151
- 'ी': "ī"
152
- 'ु': "u"
153
- 'ू': "ū"
154
- 'ृ': "ri"
155
- 'े': "e"
156
- 'ै': "ai"
157
- 'ो': "o"
158
- 'ौ': "au"
159
- '‍': ''# Used for joining
160
-
161
-
162
- #V. Vowelless with halanta (्)
163
-
164
- # Gutturals
165
- 'क्': 'k'
166
- 'ख्': 'kh'
167
- 'ग्': 'g'
168
- 'घ्': 'gh'
169
- 'ङ्': 'ng'
170
-
171
- # Palatals
172
- 'च्': 'ch'
173
- 'छ्': 'chh'
174
- 'ज्': 'j'
175
- 'झ्': 'jh'
176
- 'ञ्': 'ny'
177
-
178
- # Cerebrals
179
- 'ट्': 't'
180
- 'ठ्': 'th'
181
- 'ड्': 'd'
182
- 'ढ्': 'dh'
183
- 'ण्': 'n'
184
-
185
- # Dentals
186
- 'त्': 't'
187
- 'थ्': 'th'
188
- 'द्': 'd'
189
- 'ध्': 'dh'
190
- 'न्': 'n'
191
-
192
- # Labials
193
- 'प्': 'p'
194
- 'फ्': 'ph'
195
- 'ब्': 'b'
196
- 'भ्': 'bh'
197
- 'म्': 'm'
198
-
199
- # Semivowels
200
- 'य्': 'y'
201
- 'र्': 'r'
202
- 'ल्': 'l'
203
- 'व्': 'w'
204
-
205
- # Sibilants
206
- 'श्': 's'
207
- 'ष्': 'sh'
208
- 'स्': 's'
209
-
210
- # Aspirate
211
- 'ह्': 'h'
212
-
213
- # Additional consonants
214
- 'क़्': 'q'
215
- 'ख़्': 'kh'
216
- 'ग़्': 'ġ'
217
- 'ज़्': 'z'
218
- 'ड़्': 'ṙ'
219
- 'ढ़्': 'ṙh'
220
- 'फ़्': 'f'
221
- 'ळ्': 'l'
@@ -1,406 +0,0 @@
1
- ---
2
- authority_id: var
3
- id: hepburn-1886
4
- language: iso-639-2:jpn
5
- source_script: Hrkt
6
- destination_script: Latn
7
- name: Traditional Hepburn
8
- url: http://www.ab.cyberhome.ne.jp/~kaizu/roomazi/doc/hep3.html
9
- creation_date: 1886
10
- adoption_date:
11
- description:
12
- This is a traditional version of Hepburn romanization.
13
-
14
- notes:
15
- "
16
- The book was published before the Japanese orthographic reform,
17
- and this map takes the reformed orthography in Kana as the source
18
- form.
19
- https://en.wikipedia.org/wiki/Historical_kana_orthography
20
-
21
- The distinction for long-vowel vs. repeating vowels has not been
22
- implemented.
23
- For example, the consecutive o's in these words are considered
24
- a case of long vowel, and is transliterated as ō:
25
-
26
- 氷 (こおり) - kōri, 大阪(おおさか)- Ōsaka
27
-
28
- If there are two consecutive o's in a string, but they belong to
29
- different morpheme, then they should be transliterated separately.
30
-
31
- 小躍り(こおどり)- koodori
32
-
33
- The same goes for the combinations o+u, u+u as well.
34
-
35
- However, this cannot be easily determined from the Kana.
36
- Lexical knowledge is needed, and sometimes the Kanji representation
37
- will give more hints about morpheme boundary.
38
-
39
- For now, this map will assume that all o+o, o+u, u+u combinations to
40
- be instances of long vowels.
41
- "
42
-
43
- tests:
44
- - source: "ぐんま"
45
- expected: "gumma"
46
- - source: "しんよう"
47
- expected: "shin-yō"
48
- - source: "きんようび"
49
- expected: "kin-yōbi"
50
- - source: "とうきょう"
51
- expected: "tōkyō"
52
- - source: "しんばし"
53
- expected: "shimbashi"
54
-
55
- map:
56
-
57
- rules:
58
- # Add a dash (-) between ん and a vowel sound or ya, yu, yo
59
- - pattern: "([んン])(?=[あいうえおやゆよアイウエオヤユヨ])"
60
- result: "\\1-"
61
-
62
- # Convert ん into m before b, m, p
63
- - pattern: "[んン](?=[ばびぶべぼまみむめもぱぴぷぺぽバビブベボマミムメモパピプペポ])"
64
- result: "m"
65
-
66
- postrules:
67
- # Handling of っ/ッ
68
- #
69
- # The kana っ/ッ is a geminate marker.
70
- # When followed by a consonant, repeat the first letter of
71
- # the following syllable. Exception: the combination -cch-
72
- # should be transliterated as -tch-
73
- #
74
- # If っ/ッ is not followed by a consonant, then it is usually
75
- # phonetically realised as an abrupt stop or shorterning of
76
- # the previous syllable. There is no documented or commonly
77
- # accepted way to transliterate this sound.
78
-
79
- - pattern: "[っッ]([BbDdFfGgHhJjKkLlMmNnPpQqRrSsTtVvWwXxYyZz])"
80
- result: "\\1\\1"
81
- - pattern: "[っッ]([Cc])" # ッ followed by ch-
82
- result: "t\\1"
83
- - pattern: "[っッ]" # drop all other っッ.
84
- result: ""
85
-
86
- # In Traditional Hepburn, long o (which can be o+o or o+u), and long u
87
- # are transliterated as ō and ū.
88
- #
89
- # Macron should not be used if two repeating letters split across
90
- # a morpheme boundary.
91
- #
92
- # Long vowels in loanwords are indicated with a macron instead
93
- # of letter doubling.
94
-
95
- - pattern: "a[ー]"
96
- result: "ā"
97
- - pattern: "i[ー]"
98
- result: "ī"
99
- - pattern: "u[ーu]"
100
- result: "ū"
101
- - pattern: "e[ー]"
102
- result: "ē"
103
- - pattern: "o[ーo]"
104
- result: "ō"
105
-
106
- characters:
107
-
108
- # Hiragana
109
-
110
- "あ": "a"
111
- "い": "i"
112
- "う": "u"
113
- "え": "e"
114
- "お": "o"
115
- "おう": "ō"
116
-
117
- "か": "ka"
118
- "き": "ki"
119
- "く": "ku"
120
- "け": "ke"
121
- "こ": "ko"
122
- "きゃ": "kya"
123
- "きゅ": "kyu"
124
- "きょ": "kyo"
125
- "きょう": "kyō"
126
- "こう": "kō"
127
-
128
- "さ": "sa"
129
- "し": "shi"
130
- "す": "su"
131
- "せ": "se"
132
- "そ": "so"
133
- "しゃ": "sha"
134
- "しゅ": "shu"
135
- "しょ": "sho"
136
- "しょう": "shō"
137
- "そう": "sō"
138
-
139
- "た": "ta"
140
- "ち": "chi"
141
- "つ": "tsu"
142
- "て": "te"
143
- "と": "to"
144
- "ちゃ": "cha"
145
- "ちゅ": "chu"
146
- "ちょ": "cho"
147
- "とう": "tō"
148
- "ちょう": "chō"
149
-
150
- "な": "na"
151
- "に": "ni"
152
- "ぬ": "nu"
153
- "ね": "ne"
154
- "の": "no"
155
- "にゃ": "nya"
156
- "にゅ": "nyu"
157
- "にょ": "nyo"
158
- "にょう": "nyō"
159
- "のう": "nō"
160
-
161
- "は": "ha"
162
- "ひ": "hi"
163
- "ふ": "fu"
164
- "へ": "he"
165
- "ほ": "ho"
166
- "ひゃ": "hya"
167
- "ひゅ": "hyu"
168
- "ひょ": "hyo"
169
- "ひょう": "hyō"
170
- "ほう": "hō"
171
-
172
- "ま": "ma"
173
- "み": "mi"
174
- "む": "mu"
175
- "め": "me"
176
- "も": "mo"
177
- "みゃ": "mya"
178
- "みゅ": "myu"
179
- "みょ": "myo"
180
- "みょう": "myō"
181
- "もう": "mō"
182
-
183
- "や": "ya"
184
- "ゆ": "yu"
185
- "よ": "yo"
186
- "よう": "yō"
187
-
188
- "ら": "ra"
189
- "り": "ri"
190
- "る": "ru"
191
- "れ": "re"
192
- "ろ": "ro"
193
- "りゃ": "rya"
194
- "りゅ": "ryu"
195
- "りょ": "ryo"
196
- "りょう": "ryō"
197
- "ろう": "rō"
198
-
199
- "わ": "wa"
200
- "を": "wo"
201
-
202
- "が": "ga"
203
- "ぎ": "gi"
204
- "ぐ": "gu"
205
- "げ": "ge"
206
- "ご": "go"
207
- "ぎゃ": "gya"
208
- "ぎゅ": "gyu"
209
- "ぎょ": "gyo"
210
- "ぎょう": "gyō"
211
- "ごう": "gō"
212
-
213
- "ざ": "za"
214
- "じ": "ji"
215
- "ず": "zu"
216
- "ぜ": "ze"
217
- "ぞ": "zo"
218
- "じゃ": "ja"
219
- "じゅ": "ju"
220
- "じょ": "jo"
221
- "じょう": "jō"
222
- "ぞう": "zō"
223
-
224
- "だ": "da"
225
- "ぢ": "ji"
226
- "づ": "zu"
227
- "で": "de"
228
- "ど": "do"
229
- "ぢゃ": "ja"
230
- "ぢゅ": "ju"
231
- "ぢょ": "jo"
232
- "どう": "dō"
233
-
234
- "ば": "ba"
235
- "び": "bi"
236
- "ぶ": "bu"
237
- "べ": "be"
238
- "ぼ": "bo"
239
- "びゃ": "bya"
240
- "びゅ": "byu"
241
- "びょ": "byo"
242
- "びょう": "byō"
243
- "ぼう": "bō"
244
-
245
- "ぱ": "pa"
246
- "ぴ": "pi"
247
- "ぷ": "pu"
248
- "ぺ": "pe"
249
- "ぽ": "po"
250
- "ぴゃ": "pya"
251
- "ぴゅ": "pyu"
252
- "ぴょ": "pyo"
253
- "ぴょう": "pyō"
254
- "ぽう": "pō"
255
-
256
- "ん": "n"
257
-
258
- # Katakana
259
-
260
- "ア": "a"
261
- "イ": "i"
262
- "ウ": "u"
263
- "エ": "e"
264
- "オ": "o"
265
- "オウ": "ō"
266
-
267
- "カ": "ka"
268
- "キ": "ki"
269
- "ク": "ku"
270
- "ケ": "ke"
271
- "コ": "ko"
272
- "キャ": "kya"
273
- "キュ": "kyu"
274
- "キョ": "kyo"
275
- "キョウ": "kyō"
276
- "コウ": "kō"
277
-
278
- "サ": "sa"
279
- "シ": "shi"
280
- "ス": "su"
281
- "セ": "se"
282
- "ソ": "so"
283
- "シャ": "sha"
284
- "シュ": "shu"
285
- "ショ": "sho"
286
- "ショウ": "shō"
287
- "ソウ": "sō"
288
-
289
- "タ": "ta"
290
- "チ": "chi"
291
- "ツ": "tsu"
292
- "テ": "te"
293
- "ト": "to"
294
- "チャ": "cha"
295
- "チュ": "chu"
296
- "チョ": "cho"
297
- "チョウ": "chō"
298
- "トウ": "tō"
299
-
300
- "ナ": "na"
301
- "ニ": "ni"
302
- "ヌ": "nu"
303
- "ネ": "ne"
304
- "ノ": "no"
305
- "ニャ": "nya"
306
- "ニュ": "nyu"
307
- "ニョ": "nyo"
308
- "ニョウ": "nyō"
309
- "ノウ": "nō"
310
-
311
- "ハ": "ha"
312
- "ヒ": "hi"
313
- "フ": "fu"
314
- "ヘ": "he"
315
- "ホ": "ho"
316
- "ヒャ": "hya"
317
- "ヒュ": "hyu"
318
- "ヒョ": "hyo"
319
- "ヒョウ": "hyō"
320
- "ホウ": "hō"
321
-
322
- "マ": "ma"
323
- "ミ": "mi"
324
- "ム": "mu"
325
- "メ": "me"
326
- "モ": "mo"
327
- "ミャ": "mya"
328
- "ミュ": "myu"
329
- "ミョ": "myo"
330
- "ミョウ": "myō"
331
- "モウ": "mō"
332
-
333
- "ヤ": "ya"
334
- "ユ": "yu"
335
- "ヨ": "yo"
336
- "ヨウ": "yō"
337
-
338
- "ラ": "ra"
339
- "リ": "ri"
340
- "ル": "ru"
341
- "レ": "re"
342
- "ロ": "ro"
343
- "リャ": "rya"
344
- "リュ": "ryu"
345
- "リョ": "ryo"
346
- "リョウ": "ryō"
347
- "ロウ": "rō"
348
-
349
- "ワ": "wa"
350
- "ヲ": "wo"
351
-
352
- "ガ": "ga"
353
- "ギ": "gi"
354
- "グ": "gu"
355
- "ゲ": "ge"
356
- "ゴ": "go"
357
- "ギャ": "gya"
358
- "ギュ": "gyu"
359
- "ギョ": "gyo"
360
- "ギョウ": "gyō"
361
- "ゴウ": "gō"
362
-
363
- "ザ": "za"
364
- "ジ": "ji"
365
- "ズ": "zu"
366
- "ゼ": "ze"
367
- "ゾ": "zo"
368
- "ジャ": "ja"
369
- "ジュ": "ju"
370
- "ジョ": "jo"
371
- "ジョウ": "jō"
372
- "ゾウ": "zō"
373
-
374
- "ダ": "da"
375
- "ヂ": "ji"
376
- "ヅ": "zu"
377
- "デ": "de"
378
- "ド": "do"
379
- "ヂャ": "ja"
380
- "ヂュ": "ju"
381
- "ヂョ": "jo"
382
- "ドウ": "dō"
383
-
384
- "バ": "ba"
385
- "ビ": "bi"
386
- "ブ": "bu"
387
- "ベ": "be"
388
- "ボ": "bo"
389
- "ビャ": "bya"
390
- "ビュ": "byu"
391
- "ビョ": "byo"
392
- "ビョウ": "byō"
393
- "ボウ": "bō"
394
-
395
- "パ": "pa"
396
- "ピ": "pi"
397
- "プ": "pu"
398
- "ペ": "pe"
399
- "ポ": "po"
400
- "ピャ": "pya"
401
- "ピュ": "pyu"
402
- "ピョ": "pyo"
403
- "ピョウ": "pyō"
404
- "ポウ": "pō"
405
-
406
- "ン": "n"