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,169 +0,0 @@
1
- ---
2
- authority_id: bas
3
- id: 2017-oss
4
- language: iso-639-2:rus
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: Streamlined Romanization of Russian Cyrillic -- Optimized Streamlined System
8
- url: https://www.researchgate.net/publication/318402098
9
- creation_date: 2017-07
10
- description: |
11
- The streamlined approach to transliteration was initiated by the
12
- author with the development of the Streamlined System for the
13
- Romanization of Bulgarian, which was eventually codified by the
14
- Transliteration Act of 2009 (ДВ 2009) of the Bulgarian Parliament.
15
-
16
- The four purposes of the system below are in order of priority:
17
- 1. ensure a plausible phonetic approximation of Russian words by English speaking users, including those having no knowledge of the Russian language and no available additional explanations;
18
- 2. the system should allow for the retrieval of the original Cyrillic spellings as much as feasible;
19
- 3. transliterated Russian words should fit an English language environment i.e. not be perceived as too ‘un-English’; and
20
- 4. transliterated word forms should be streamlined and simple. (Ivanov 2003, Ivanov et al. 2010)
21
-
22
- notes:
23
- - Typical for the streamlined approach is its non-use of diacritics,
24
- its use of Latin y for rendering only Cyrillic й rather than both й and
25
- ы, its non-use of Latin j, as well as its use of Latin h rather than kh
26
- for Cyrillic х.
27
-
28
- tests:
29
- - source: "Эх, тройка! птица тройка, кто тебя выдумал? знать, у бойкого народа
30
- ты могла только родиться, в той земле, что не любит шутить, а
31
- ровнем-гладнем разметнулась на полсвета, да и ступай считать версты, пока
32
- не зарябит тебе в очи. И не хитрый, кажись, дорожный снаряд, не
33
- железным схвачен винтом, а наскоро живьём с одним топором да долотом
34
- снарядил и собрал тебя ярославский расторопный мужик. Не в немецких
35
- ботфортах ямщик: борода да рукавицы, и сидит чёрт знает на чём; а
36
- привстал, да замахнулся, да затянул песню — кони вихрем, спицы в
37
- колесах смешались в один гладкий круг, только дрогнула дорога, да вскрикнул
38
- в испуге остановившийся пешеход — и вон она понеслась, понеслась,
39
- понеслась!\nН.В. Гоголь"
40
-
41
- expected: "`Eh, troyka! ptitsa troyka, kto tebya v`idumal? znat', u boykogo
42
- naroda t`i mogla tol'ko rodit'sya, v toy zemle, chto ne lyubit shutit',
43
- a rovnem-gladnem razmetnulas' na polsveta, da i stupay schitat' verst`i,
44
- poka ne zaryabit tebe v ochi. I ne hitr`iy, kazhis', dorozhn`iy
45
- snaryad, ne zhelezn`im shvachen vintom, a naskoro zhivy``em s odnim
46
- toporom da dolotom snaryadil i sobral tebya yaroslavskiy rastoropn`iy muzhik. Ne v
47
- nemetskih botfortah yamshchik: boroda da rukavits`i, i sidit ch``ert
48
- znaet na ch``em; a privstal, da zamahnulsya, da zatyanul pesnyu — koni
49
- vihrem, spits`i v kolesah smeshalis' v odin gladkiy krug, tol'ko
50
- drognula doroga, da vskriknul v ispuge ostanovivshiysya peshehod — i
51
- von ona poneslas', poneslas', poneslas'!\nN.V. Gogol'"
52
-
53
- - source: ЁЖ Ёж ёж
54
- expected: "``EZH ``Ezh ``ezh"
55
- - source: Цветущий сад
56
- expected: Tsvetushchiy sad
57
- - source: Чувство юмора
58
- expected: Chuvstvo yumora
59
- - source: Широкий выбор
60
- expected: Shirokiy v`ibor
61
- - source: Все подъезды заблокированны
62
- expected: Vse pod"ezd`i zablokirovann`i
63
- - source: Ожерелье
64
- expected: Ozherelye
65
- - source: Ручьи
66
- expected: Ruchyi
67
- - source: Каньон
68
- expected: Kanyon
69
- - source: Бельэтаж
70
- expected: Bely`etazh
71
-
72
- map:
73
- rules:
74
- - pattern: \u042c(?=[ЕеЁёИиОоЭэ]) # Ь (before Е, Ё, И, O, Э)
75
- result: Y
76
- - pattern: \u044c(?=[ЕеЁёИиОоЭэ]) # ь (before Е, Ё, И, O, Э)
77
- result: y
78
-
79
- characters:
80
- # "\u0027": "" # '
81
- "\u0410": "A" # А
82
- "\u0411": "B" # Б
83
- "\u0412": "V" # В
84
- "\u0413": "G" # Г
85
- "\u0414": "D" # Д
86
- "\u0401": "``E" # Ё
87
- "\u0415": "E" # Е
88
- "\u0416": "Zh" # Ж
89
- "\u0417": "Z" # З
90
- "\u042D": "`E" # Э
91
- "\u0418": "I" # И
92
- "\u0419": "Y" # Й
93
- "\u041A": "K" # К
94
- "\u041B": "L" # Л
95
- "\u041C": "M" # М
96
- "\u041D": "N" # Н
97
- "\u041E": "O" # О
98
- "\u041F": "P" # П
99
- "\u0420": "R" # Р
100
- "\u0421": "S" # С
101
- "\u0422": "T" # Т
102
- "\u0423": "U" # У
103
- "\u0424": "F" # Ф
104
- "\u0425": "H" # Х
105
- "\u0426": "Ts" # Ц
106
- "\u0427": "Ch" # Ч
107
- "\u0428": "Sh" # Ш
108
- "\u0429": "Shch" # Щ
109
- "\u042B": "`I" # Ы
110
- "\u042F": "Ya" # Я
111
- "\u042E": "Yu" # Ю
112
-
113
- # Ь (before Е, Ё, И, O, Э)
114
- # "\u042c\u0401": "Y``e" # Ё
115
- # "\u042c\u0415": "Ye" # Е
116
- # "\u042c\u0418": "Yi" # И
117
- # "\u042c\u041E": "Yo" # O
118
- # "\u042c\u0417": "Y`e" # Э
119
-
120
- # Ь (otherwise) -> ' (or none)
121
- "\u042c": "'"
122
-
123
- # Ъ -> " (or none)
124
- "\u042a": '"'
125
-
126
- "\u0430": "a" # а
127
- "\u0431": "b" # б
128
- "\u0432": "v" # в
129
- "\u0433": "g" # г
130
- "\u0434": "d" # д
131
- "\u0451": "``e" # ё
132
- "\u0435": "e" # e
133
- "\u0436": "zh" # ж
134
- "\u0437": "z" # з
135
- "\u044D": "`e" # э
136
- "\u0438": "i" # и
137
- "\u0439": "y" # й
138
- "\u043A": "k" # к
139
- "\u043B": "l" # л
140
- "\u043C": "m" # м
141
- "\u043D": "n" # н
142
- "\u043E": "o" # о
143
- "\u043F": "p" # п
144
- "\u0440": "r" # р
145
- "\u0441": "s" # с
146
- "\u0442": "t" # т
147
- "\u0443": "u" # у
148
- "\u0444": "f" # ф
149
- "\u0445": "h" # х
150
- "\u0446": "ts" # ц
151
- "\u0447": "ch" # ч
152
- "\u0448": "sh" # ш
153
- "\u0449": "shch" # щ
154
- "\u044B": "`i" # ы
155
- "\u044F": "ya" # я
156
- "\u044E": "yu" # ю
157
-
158
- # ь (before е, ё, и, o, э)
159
- # "\u044c\u0435": "ye" # ё
160
- # "\u044c\u0451": "y``e" # e
161
- # "\u044c\u0438": "yi" # и
162
- # "\u044c\u006f": "yo" # o
163
- # "\u044c\u044d": "y`e" # э
164
-
165
- # ь (otherwise) -> ' (or none)
166
- "\u044c": "'"
167
-
168
- # ъ -> " (or none)
169
- "\u044a": '"'
@@ -1,292 +0,0 @@
1
- ---
2
- authority_id: bgn
3
- id: 1962
4
- language: iso-639-2:jpn
5
- source_script: Hrkt
6
- destination_script: Latn
7
- name: BGN (Modified Hepburn) System
8
- url:
9
- creation_date: 1930
10
- adoption_date: 1962
11
- description: |
12
- The BGN (Modified Hepburn) System for the transliteration of Japanese
13
- has been in use by the Board on Geographic Names since about 1930 and
14
- has been extensively employed in the systematic standardsization of
15
- thousands of geographic names of Japan in romanized form.
16
-
17
- notes: |
18
-
19
- 1. The "tsu" forms (ツ/つ) are also used to indicate a double consonant and
20
- are generally (but not alwyas) written in smaller script or type
21
- slightly to the right of or below the regular line. These characters
22
- are trasnliterated as k before k; s before s or sh; t before t, ts, or
23
- ch; and p before p. Occasionally, when a "ku" (ク/く) or "ki" (キ/き) form
24
- precedes k, the u in ku or the i in ki is dropped.
25
-
26
- 2. The transliterations in parentheses are used in specific cases when
27
- the kana symbol is known to be so pronounced.
28
-
29
- 3. The transliteration m is used before b, p, and m.
30
-
31
- 4. This letter has been added for the use in transliterating foreign
32
- words.
33
-
34
- 5. The asterisk (*) indicates standard combined forms. Those combined
35
- forms not so marked are rarely used.
36
-
37
- ----
38
-
39
- Implementation Notes:
40
-
41
- a. Despite the mentioning of the term "Modified Hepburn" in the
42
- specification, the handling of ん/ン in this standard is different from
43
- Modified Hepburn. It follows the Traditional Hepburn in that the
44
- letter m is used before b, m, p.
45
-
46
- b. This document includes obsolete (pre-reform) combinations.
47
- Pre-reform combinations will clash with modern Japanese transliteration.
48
-
49
- c. There is no discussion on how cross-morpheme vowel sounds should be
50
- handled.
51
-
52
- d. There is no mentioning of separation mark between n and another vowel.
53
-
54
- e. Everything not explicitly stated in the specification will be
55
- assumed to be inherited from var-jpn-Hrkt-Latn-hepburn-1954.
56
-
57
- f. Obsolete combinations can be handled by post rules, and are
58
- included for the sake of completeness only. They have been commented
59
- out, since they are rarely used and follow different rules than modern
60
- Japanese.
61
-
62
- tests:
63
- # Note: these test cases follow the pre-reform standard.
64
- # They are commented out for now.
65
- #
66
- # - source: "けふ"
67
- # expected: "kyō"
68
- # - source: "ぎうにう"
69
- # expected: "gyūnyū"
70
- # - source: "きふ" # きふ should always be kifu in Modern Japanese
71
- # expected: "kyū"
72
- # - source: "ちう"
73
- # expected: "chū"
74
- # - source: "けう"
75
- # expected: "kyō"
76
-
77
- # Modern Japanese test cases
78
- - source: "しんばし"
79
- expected: "shimbashi"
80
- - source: "とうきょう"
81
- expected: "tōkyō"
82
- - source: "しんじゅく"
83
- expected: "shinjuku"
84
- - source: かんおう
85
- expected: kan’ō
86
- - source: かのう
87
- expected: kanō
88
- - source: きんゆう
89
- expected: kin’yū
90
- - source: とうきょう
91
- expected: tōkyō
92
- - source: かごっま
93
- expected: kagomma
94
- - source: ぽっぽっや
95
- expected: poppoyya
96
- - source: てっら
97
- expected: terra
98
- - source: にゃっほー
99
- expected: nyahhō
100
-
101
-
102
- map:
103
-
104
- inherit: var-jpn-Hrkt-Latn-hepburn-1954
105
-
106
- rules:
107
- # Convert ん into m before b, m, p
108
- - pattern: "[んン](?=[ばびぶべぼまみむめもぱぴぷぺぽバビブベボマミムメモパピプペポ])"
109
- result: "m"
110
- postrules:
111
- # Handle obsolete forms
112
- # Note that these forms are present in the rules, but will break
113
- # if used with Modern Japanese. They are commented out for now.
114
- #
115
- # - pattern: "ef?[uo]|iyau"
116
- # result: "yō"
117
- # - pattern: "if?u"
118
- # result: "yū"
119
- # - pattern: "[ao]f?[uo]"
120
- # result: "ō"
121
- # - pattern: "iy"
122
- # result: "y"
123
- # - pattern: "ty"
124
- # result: "ch"
125
- # - pattern: "dy"
126
- # result: "j"
127
- # - pattern: "[jz]y"
128
- # result: "j"
129
- # - pattern: "(?<=[sc])hy"
130
- # result: "h"
131
- # - pattern: "sy"
132
- # result: "sh"
133
-
134
- characters:
135
- # ke
136
- # These are listed as alternative pronunciation, but in fact this usage of ヶ
137
- # as the archaic possessive marker is not found in Kana only texts.
138
- # Also it is always typed using the smaller form. (ヶ U+30F6)
139
- "け": ["ke", "ga", "ka", "ko"]
140
- "ケ": ["ke", ga", "ka", "ko"]
141
- "ヶ": ["ga", "ka", "ko"]
142
-
143
-
144
- # The Ha-column
145
- # は is still pronounced as wa when used as a particle,
146
- # the alternative pronunciations for the other four kana's are obsolete.
147
- "は": ["ha", "wa"]
148
- "ひ": ["hi", "i"]
149
- "ふ": ["fu", "u", "o"]
150
- "へ": ["he", "e"]
151
- "ほ": ["ho", "o"]
152
- "ハ": ["ha", "wa"]
153
- "ヒ": ["hi", "i"]
154
- "フ": ["fu", "u", "o"]
155
- "ヘ": ["he", "e"]
156
- "ホ": ["ho", "o"]
157
-
158
-
159
- # The Wa-column
160
- # These two kanas below are only used in pre-reform texts.
161
- "ゐ" : "i"
162
- "ゑ" : "e"
163
- "ヰ" : "i"
164
- "ヱ" : "e"
165
-
166
- # Combined forms
167
- # These are obsolete forms. See Note 5.
168
- # They can be handled by post-rules if ever needed.
169
- # "あう": "ō"
170
- # "あふ": "ō"
171
- # "いふ": "yū"
172
- # "えう": "yō"
173
- # "えふ": "yō"
174
- # "おふ": "ō"
175
- # "かう": "kō"
176
- # "かふ": "kō"
177
- # "がう": "gō"
178
- # "がふ": "gō"
179
- # "きう": "kyū"
180
- # "きふ": "kyū"
181
- # "きやう": "kyō"
182
- # "ぎう": "gyū"
183
- # "ぎふ": "gyū"
184
- # "ぎやう": "gyō"
185
- "くわ": "ka"
186
- "くわう": "kō"
187
- "ぐわ": "ga"
188
- "ぐわう": "gō"
189
- "クワ": "ka"
190
- "クワウ": "kō"
191
- "グワ": "ga"
192
- "グワウ": "gō"
193
- # "けう": "kyō"
194
- # "けふ": "kyō"
195
- # "げう": "gyō"
196
- # "げふ": "gyō"
197
- # "こふ": "kō"
198
- # "ごふ": "gō"
199
- # "さう": "sō"
200
- # "さふ": "sō"
201
- # "ざう": "zō"
202
- # "ざふ": "zō"
203
- # "しう": "shū"
204
- # "しふ": "shū"
205
- # "しやう": "shō"
206
- # "じう": "jū"
207
- # "じふ": "jū"
208
- # "じやう": "jō"
209
- # "せう": "shō"
210
- # "せふ": "shō"
211
- # "ぜう": "jō"
212
- # "ぜふ": "jō"
213
- # "そふ": "sō"
214
- # "ぞふ": "zō"
215
- # "たう": "tō"
216
- # "たふ": "tō"
217
- # "だう": "dō"
218
- # "だふ": "dō"
219
- # "ちう": "chū"
220
- # "ちふ": "chū"
221
- # "ちやう": "chō"
222
- # "ぢう": "jū"
223
- # "ぢふ": "jū"
224
- # "ぢや": "ja"
225
- # "ぢやう": "jō"
226
- # "ぢゆ": "ju"
227
- # "ぢよ": "jo"
228
- # "ぢよう": "jō"
229
- # "てう": "chō"
230
- # "てふ": "chō"
231
- # "でう": "jō"
232
- # "でふ": "jō"
233
- # "とふ": "tō"
234
- # "どふ": "dō"
235
- # "なう": "nō"
236
- # "なふ": "nō"
237
- # "にう": "nyū"
238
- # "にふ": "nyū"
239
- # "にやう": "nyō"
240
- # "ねう": "nyō"
241
- # "ねふ": "nyō"
242
- # "のふ": "nō"
243
- # "はう": ["hō","ō"]
244
- # "はふ": "hō"
245
- # "ばふ": "bō"
246
- # "ばう": "bō"
247
- # "ぱう": "pō"
248
- # "ぱふ": "pō"
249
- # "ひう": "hyū"
250
- # "ひふ": "hyū"
251
- # "ひやう": "hyō"
252
- # "びう": "byū"
253
- # "びふ": "byū"
254
- # "びやう": "byō"
255
- # "ぴう": "pyū"
256
- # "ぴふ": "pyū"
257
- # "ぴやう": "pyō"
258
- # "へう": "hyō"
259
- # "へふ": "hyō"
260
- # "べう": "byō"
261
- # "べふ": "byō"
262
- # "ぺう": "pyō"
263
- # "ぺふ": "pyō"
264
- # "ほふ": "hō"
265
- # "ぼふ": "bō"
266
- # "ぽふ": "pō"
267
- # "まう": "mō"
268
- # "まふ": "mō"
269
- # "まを": "mō"
270
- # "みやう": "myō"
271
- # "みう": "myū"
272
- # "みふ": "myū"
273
- # "めう": "myō"
274
- # "めふ": "myō"
275
- # "めを": "myō"
276
- # "もふ": "mō"
277
- # "やう": "yō"
278
- # "やふ": "yō"
279
- # "よふ": "yō"
280
- # "らう": "rō"
281
- # "らふ": "rō"
282
- # "りう": "ryū"
283
- # "りふ": "ryū"
284
- # "りやう": "ryō"
285
- # "れう": "ryō"
286
- # "れふ": "ryō"
287
- # "ろふ": "rō"
288
- # "わう": "wō"
289
- # "わふ": "wō"
290
- # "ゑふ": "yō"
291
- # "をう": "ō"
292
- # "をふ": "ō"