interscript 0.1.9 → 2.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +11 -0
  3. data/.rspec +3 -0
  4. data/Gemfile +29 -0
  5. data/LICENSE.adoc +31 -0
  6. data/README.md +3 -0
  7. data/Rakefile +53 -0
  8. data/bin/console +14 -0
  9. data/bin/interscript +5 -0
  10. data/bin/maps_analyze_staging +168 -0
  11. data/bin/maps_debug_compilers +58 -0
  12. data/bin/maps_debug_ordering +88 -0
  13. data/bin/maps_debug_ruby_compile +24 -0
  14. data/bin/maps_debug_step_by_step +44 -0
  15. data/bin/maps_optimize_order +112 -0
  16. data/bin/maps_v1_analyze_regexps +45 -0
  17. data/bin/maps_v1_to_v2 +426 -0
  18. data/bin/setup +8 -0
  19. data/exe/interscript +6 -0
  20. data/interscript.gemspec +31 -0
  21. data/lib/interscript.rb +80 -135
  22. data/lib/interscript/command.rb +5 -5
  23. data/lib/interscript/compiler.rb +22 -0
  24. data/lib/interscript/compiler/javascript.rb +292 -0
  25. data/lib/interscript/compiler/ruby.rb +262 -0
  26. data/lib/interscript/dsl.rb +67 -0
  27. data/lib/interscript/dsl/aliases.rb +23 -0
  28. data/lib/interscript/dsl/document.rb +46 -0
  29. data/lib/interscript/dsl/group.rb +45 -0
  30. data/lib/interscript/dsl/group/parallel.rb +6 -0
  31. data/lib/interscript/dsl/items.rb +89 -0
  32. data/lib/interscript/dsl/metadata.rb +26 -0
  33. data/lib/interscript/dsl/stage.rb +6 -0
  34. data/lib/interscript/dsl/symbol_mm.rb +11 -0
  35. data/lib/interscript/dsl/tests.rb +12 -0
  36. data/lib/interscript/interpreter.rb +251 -0
  37. data/lib/interscript/node.rb +25 -0
  38. data/lib/interscript/node/alias_def.rb +15 -0
  39. data/lib/interscript/node/dependency.rb +13 -0
  40. data/lib/interscript/node/document.rb +45 -0
  41. data/lib/interscript/node/group.rb +34 -0
  42. data/lib/interscript/node/group/parallel.rb +9 -0
  43. data/lib/interscript/node/group/sequential.rb +2 -0
  44. data/lib/interscript/node/item.rb +52 -0
  45. data/lib/interscript/node/item/alias.rb +42 -0
  46. data/lib/interscript/node/item/any.rb +61 -0
  47. data/lib/interscript/node/item/capture.rb +50 -0
  48. data/lib/interscript/node/item/group.rb +51 -0
  49. data/lib/interscript/node/item/repeat.rb +40 -0
  50. data/lib/interscript/node/item/stage.rb +23 -0
  51. data/lib/interscript/node/item/string.rb +51 -0
  52. data/lib/interscript/node/metadata.rb +18 -0
  53. data/lib/interscript/node/rule.rb +6 -0
  54. data/lib/interscript/node/rule/funcall.rb +18 -0
  55. data/lib/interscript/node/rule/run.rb +15 -0
  56. data/lib/interscript/node/rule/sub.rb +65 -0
  57. data/lib/interscript/node/stage.rb +19 -0
  58. data/lib/interscript/node/tests.rb +15 -0
  59. data/lib/interscript/stdlib.rb +211 -0
  60. data/lib/interscript/utils/regexp_converter.rb +283 -0
  61. data/lib/interscript/version.rb +1 -1
  62. data/requirements.txt +1 -0
  63. metadata +73 -458
  64. data/README.adoc +0 -296
  65. data/aliases.json +0 -1
  66. data/lib/g2pwrapper.py +0 -34
  67. data/lib/interscript/fs.rb +0 -96
  68. data/lib/interscript/mapping.rb +0 -144
  69. data/lib/interscript/opal.rb +0 -196
  70. data/lib/interscript/opal/entrypoint.rb +0 -20
  71. data/lib/interscript/opal/exports.rb +0 -11
  72. data/lib/interscript/opal/maps.js.erb +0 -8
  73. data/lib/model-7 +0 -0
  74. data/lib/tha-pt-b-7 +0 -0
  75. data/maps/acadsin-zho-Hani-Latn-2002.yaml +0 -38916
  76. data/maps/alalc-amh-Ethi-Latn-1997.yaml +0 -513
  77. data/maps/alalc-amh-Ethi-Latn-2011.yaml +0 -138
  78. data/maps/alalc-ara-Arab-Latn-1997.yaml +0 -1287
  79. data/maps/alalc-asm-Deva-Latn-1997.yaml +0 -259
  80. data/maps/alalc-asm-Deva-Latn-2012.yaml +0 -55
  81. data/maps/alalc-aze-Arab-Latn-1997.yaml +0 -376
  82. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +0 -145
  83. data/maps/alalc-bel-Cyrl-Latn-1997.yaml +0 -129
  84. data/maps/alalc-ben-Beng-Latn-1997.yaml +0 -291
  85. data/maps/alalc-ben-Beng-Latn-2017.yaml +0 -130
  86. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +0 -98
  87. data/maps/alalc-div-Thaa-Latn-1997.yaml +0 -211
  88. data/maps/alalc-ell-Grek-Latn-1997.yaml +0 -628
  89. data/maps/alalc-ell-Grek-Latn-2010.yaml +0 -626
  90. data/maps/alalc-guj-Gujr-Latn-1997.yaml +0 -266
  91. data/maps/alalc-guj-Gujr-Latn-2011.yaml +0 -64
  92. data/maps/alalc-hin-Deva-Latn-1997.yaml +0 -303
  93. data/maps/alalc-hin-Deva-Latn-2011.yaml +0 -65
  94. data/maps/alalc-kan-Kana-Latn-1997.yaml +0 -274
  95. data/maps/alalc-kan-Kana-Latn-2011.yaml +0 -63
  96. data/maps/alalc-kat-Geok-Latn-1997.yaml +0 -111
  97. data/maps/alalc-kat-Geor-Latn-1997.yaml +0 -150
  98. data/maps/alalc-kor-Hang-Latn-1997.yaml +0 -98
  99. data/maps/alalc-mal-Mlym-Latn-1997.yaml +0 -303
  100. data/maps/alalc-mal-Mlym-Latn-2012.yaml +0 -73
  101. data/maps/alalc-mar-Deva-Latn-1997.yaml +0 -189
  102. data/maps/alalc-mar-Deva-Latn-2011.yaml +0 -45
  103. data/maps/alalc-mkd-Cyrl-Latn-1997.yaml +0 -114
  104. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +0 -103
  105. data/maps/alalc-mon-Cyrl-Latn-1997.yaml +0 -220
  106. data/maps/alalc-ori-Orya-Latn-1997.yaml +0 -284
  107. data/maps/alalc-ori-Orya-Latn-2011.yaml +0 -67
  108. data/maps/alalc-pan-Guru-Latn-1997.yaml +0 -256
  109. data/maps/alalc-pan-Guru-Latn-2011.yaml +0 -78
  110. data/maps/alalc-per-Arab-Latn-1997.yaml +0 -375
  111. data/maps/alalc-pli-Deva-Latn-2012.yaml +0 -144
  112. data/maps/alalc-pra-Deva-Latn-2012.yaml +0 -47
  113. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +0 -225
  114. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +0 -162
  115. data/maps/alalc-san-Deva-Latn-2012.yaml +0 -241
  116. data/maps/alalc-sin-Sinh-Latn-1997.yaml +0 -292
  117. data/maps/alalc-sin-Sinh-Latn-2011.yaml +0 -71
  118. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +0 -118
  119. data/maps/alalc-srp-Cyrl-Latn-2013.yaml +0 -135
  120. data/maps/alalc-tam-Taml-Latn-1997.yaml +0 -62
  121. data/maps/alalc-tam-Taml-Latn-2011.yaml +0 -58
  122. data/maps/alalc-tel-Telu-Latn-1997.yaml +0 -284
  123. data/maps/alalc-tel-Telu-Latn-2011.yaml +0 -64
  124. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +0 -145
  125. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +0 -16
  126. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +0 -283
  127. data/maps/az-aze-Cyrl-Latn-1939.yaml +0 -105
  128. data/maps/az-aze-Cyrl-Latn-1958.yaml +0 -45
  129. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +0 -174
  130. data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +0 -169
  131. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +0 -292
  132. data/maps/bgn-kor-Hang-Latn-1943.yaml +0 -35
  133. data/maps/bgn-kor-Kore-Latn-1943.yaml +0 -31
  134. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +0 -208
  135. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +0 -208
  136. data/maps/bgnpcgn-amh-Ethi-Latn-1967.yaml +0 -532
  137. data/maps/bgnpcgn-ara-Arab-Latn-1956.yaml +0 -598
  138. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +0 -108
  139. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +0 -111
  140. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +0 -188
  141. data/maps/bgnpcgn-bal-Arab-Latn-2008.yaml +0 -329
  142. data/maps/bgnpcgn-bel-Cyrl-Latn-1979.yaml +0 -289
  143. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +0 -119
  144. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +0 -42
  145. data/maps/bgnpcgn-che-Cyrl-Latn-2008.yaml +0 -184
  146. data/maps/bgnpcgn-div-Thaa-Latn-1988.yaml +0 -75
  147. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +0 -705
  148. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +0 -23
  149. data/maps/bgnpcgn-far-Latn-Latn-1964.yaml +0 -28
  150. data/maps/bgnpcgn-fas-Arab-Latn-1956.yaml +0 -96
  151. data/maps/bgnpcgn-isl-Latn-Latn-1964.yaml +0 -37
  152. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +0 -257
  153. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +0 -131
  154. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +0 -42
  155. data/maps/bgnpcgn-kaz-Cyrl-Latn-1979.yaml +0 -247
  156. data/maps/bgnpcgn-kir-Cyrl-Latn-1979.yaml +0 -218
  157. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +0 -253
  158. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +0 -48
  159. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +0 -48
  160. data/maps/bgnpcgn-kur-Arab-Latn-2007.yaml +0 -249
  161. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +0 -163
  162. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +0 -190
  163. data/maps/bgnpcgn-mon-Cyrl-Latn-1964.yaml +0 -223
  164. data/maps/bgnpcgn-nep-Deva-Latn-2011.yaml +0 -230
  165. data/maps/bgnpcgn-per-Arab-Latn-1958.yaml +0 -338
  166. data/maps/bgnpcgn-prs-Arab-Latn-2007.yaml +0 -673
  167. data/maps/bgnpcgn-prs-Arab-Latn-yaghoubi.yaml +0 -459
  168. data/maps/bgnpcgn-pus-Arab-Latn-1968.yaml +0 -377
  169. data/maps/bgnpcgn-rue-Cyrl-Latn-2016.yaml +0 -168
  170. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +0 -318
  171. data/maps/bgnpcgn-srp-Cyrl-Latn-1962.yaml +0 -73
  172. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +0 -170
  173. data/maps/bgnpcgn-tat-Cyrl-Latn-2007.yaml +0 -220
  174. data/maps/bgnpcgn-tgk-Cyrl-Latn-1994.yaml +0 -240
  175. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +0 -166
  176. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +0 -119
  177. data/maps/bgnpcgn-urd-Arab-Latn-2007.yaml +0 -459
  178. data/maps/bgnpcgn-uzb-Cyrl-Latn-1979.yaml +0 -127
  179. data/maps/bgnpcgn-uzb-Cyrl-Latn-2000.yaml +0 -82
  180. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +0 -7456
  181. data/maps/bis-asm-Beng-Latn-13194-1991.yaml +0 -159
  182. data/maps/bis-ben-Beng-Latn-13194-1991.yaml +0 -156
  183. data/maps/bis-dev-Deva-Latn-13194-1991.yaml +0 -184
  184. data/maps/bis-guj-Gujr-Latn-13194-1991.yaml +0 -181
  185. data/maps/bis-kan-Kana-Latn-13194-1991.yaml +0 -173
  186. data/maps/bis-mlm-Mlym-Latn-13194-1991.yaml +0 -176
  187. data/maps/bis-ori-Orya-Latn-13194-1991.yaml +0 -175
  188. data/maps/bis-pnj-Guru-Latn-13194-1991.yaml +0 -175
  189. data/maps/bis-tel-Telu-Latn-13194-1991.yaml +0 -170
  190. data/maps/bis-tml-Taml-Latn-13194-1991.yaml +0 -155
  191. data/maps/by-bel-Cyrl-Latn-1998.yaml +0 -172
  192. data/maps/by-bel-Cyrl-Latn-2007.yaml +0 -115
  193. data/maps/din-grc-Grek-Latn-31634-2011-t1.yaml +0 -899
  194. data/maps/din-hin-Deva-Latn-33904-2018.yaml +0 -100
  195. data/maps/din-kat-Geor-Latn-32707-2010.yaml +0 -145
  196. data/maps/din-mar-Deva-Latn-33904-2018.yaml +0 -84
  197. data/maps/din-nep-Deva-Latn-33904-2018.yaml +0 -119
  198. data/maps/din-pli-Deva-Latn-33904-2018.yaml +0 -75
  199. data/maps/din-pra-Deva-Latn-33904-2018.yaml +0 -63
  200. data/maps/din-san-Deva-Latn-33904-2018.yaml +0 -338
  201. data/maps/din-tam-Taml-Latn-33903-2016.yaml +0 -213
  202. data/maps/dos-nep-Deva-Latn-1997.yaml +0 -47
  203. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +0 -684
  204. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +0 -680
  205. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +0 -19
  206. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +0 -31
  207. data/maps/ggg-kat-Geor-Latn-2002.yaml +0 -92
  208. data/maps/gki-bel-Cyrl-Latn-1992.yaml +0 -33
  209. data/maps/gki-bel-Cyrl-Latn-2000.yaml +0 -201
  210. data/maps/gost-rus-Cyrl-Latn-16876-71-1983.yaml +0 -190
  211. data/maps/gost-rus-Cyrl-Latn-7.79-2000-2002.yaml +0 -157
  212. data/maps/hk-yue-Hani-Latn-1888.yaml +0 -38497
  213. data/maps/icao-bel-Cyrl-Latn-9303.yaml +0 -136
  214. data/maps/icao-bul-Cyrl-Latn-9303.yaml +0 -118
  215. data/maps/icao-fas-Arab-Latn-9303.yaml +0 -103
  216. data/maps/icao-heb-Hebr-Latn-9303.yaml +0 -151
  217. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +0 -117
  218. data/maps/icao-rus-Cyrl-Latn-9303.yaml +0 -117
  219. data/maps/icao-srp-Cyrl-Latn-9303.yaml +0 -117
  220. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +0 -119
  221. data/maps/iso-ara-Arab-Latn-233-1984.yaml +0 -323
  222. data/maps/iso-asm-Beng-Latn-15919-2001.yaml +0 -75
  223. data/maps/iso-ben-Beng-Latn-15919-2001.yaml +0 -175
  224. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +0 -613
  225. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +0 -44
  226. data/maps/iso-guj-Gujr-Latn-15919-2001.yaml +0 -220
  227. data/maps/iso-hin-Deva-Latn-15919-2001.yaml +0 -87
  228. data/maps/iso-inc-Deva-Latn-15919-2001.yaml +0 -61
  229. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +0 -66
  230. data/maps/iso-kan-Kana-Latn-15919-2001.yaml +0 -220
  231. data/maps/iso-kat-Geor-Latn-9984-1996.yaml +0 -145
  232. data/maps/iso-kor-Hang-Latn-1996-method1.yaml +0 -240
  233. data/maps/iso-kor-Hang-Latn-1996-method2.yaml +0 -226
  234. data/maps/iso-mal-Mlym-Latn-15919-2001.yaml +0 -281
  235. data/maps/iso-mar-Deva-Latn-15919-2001.yaml +0 -75
  236. data/maps/iso-nep-Deva-Latn-15919-2001.yaml +0 -87
  237. data/maps/iso-ori-Orya-Latn-15919-2001.yaml +0 -193
  238. data/maps/iso-pan-Guru-Latn-15919-2001.yaml +0 -222
  239. data/maps/iso-pli-Beng-Latn-15919-2001.yaml +0 -73
  240. data/maps/iso-pli-Deva-Latn-15919-2001.yaml +0 -74
  241. data/maps/iso-pli-Sinh-Latn-15919-2001.yaml +0 -219
  242. data/maps/iso-pli-Thai-Latn-15919-2001.yaml +0 -55
  243. data/maps/iso-pra-Deva-Latn-15919-2001.yaml +0 -59
  244. data/maps/iso-prs-Arab-Latn-233-3-1999.yaml +0 -366
  245. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +0 -271
  246. data/maps/iso-san-Deva-Latn-15919-2001.yaml +0 -220
  247. data/maps/iso-tam-Taml-Latn-15919-2001.yaml +0 -159
  248. data/maps/iso-tel-Telu-Latn-15919-2001.yaml +0 -220
  249. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +0 -109
  250. data/maps/kp-kor-Hang-Latn-2002.yaml +0 -909
  251. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +0 -44820
  252. data/maps/masm-mon-Cyrl-Latn-5217-2012.yaml +0 -163
  253. data/maps/masm-mon-Latn-Cyrl-5217-2012.yaml +0 -200
  254. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +0 -411
  255. data/maps/moct-kor-Hang-Latn-2000.yaml +0 -807
  256. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +0 -541
  257. data/maps/mv-div-Thaa-Latn-1987.yaml +0 -200
  258. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +0 -225
  259. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +0 -63
  260. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +0 -109
  261. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +0 -37
  262. data/maps/odni-ara-Arab-Latn-2004.yaml +0 -137
  263. data/maps/odni-ara-Arab-Latn-2015.yaml +0 -315
  264. data/maps/odni-aze-Cyrl-Latn-2015.yaml +0 -144
  265. data/maps/odni-bel-Cyrl-Latn-2015.yaml +0 -148
  266. data/maps/odni-bul-Cyrl-Latn-2005.yaml +0 -90
  267. data/maps/odni-bul-Cyrl-Latn-2015.yaml +0 -96
  268. data/maps/odni-che-Cyrl-Latn-2015.yaml +0 -169
  269. data/maps/odni-fas-Arab-Latn-2004.yaml +0 -276
  270. data/maps/odni-fas-Arab-Latn-2015.yaml +0 -406
  271. data/maps/odni-hin-Deva-Latn-2004.yaml +0 -182
  272. data/maps/odni-hin-Deva-Latn-2015.yaml +0 -258
  273. data/maps/odni-kat-Geor-Latn-2015.yaml +0 -87
  274. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +0 -148
  275. data/maps/odni-kir-Cyrl-Latn-2015.yaml +0 -136
  276. data/maps/odni-kor-Hang-Latn-2015.yaml +0 -375
  277. data/maps/odni-mkd-Cyrl-Latn-2005.yaml +0 -21
  278. data/maps/odni-mkd-Cyrl-Latn-2015.yaml +0 -122
  279. data/maps/odni-prs-Arab-Latn-2004.yaml +0 -123
  280. data/maps/odni-prs-Arab-Latn-2015.yaml +0 -228
  281. data/maps/odni-rus-Cyrl-Latn-2015.yaml +0 -77
  282. data/maps/odni-srp-Cyrl-Latn-2005.yaml +0 -36
  283. data/maps/odni-srp-Cyrl-Latn-2015.yaml +0 -129
  284. data/maps/odni-tat-Cyrl-Latn-2015.yaml +0 -142
  285. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +0 -148
  286. data/maps/odni-tuk-Cyrl-Latn-2015.yaml +0 -170
  287. data/maps/odni-uig-Cyrl-Latn-2015.yaml +0 -138
  288. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +0 -161
  289. data/maps/odni-urd-Arab-Latn-2015.yaml +0 -221
  290. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +0 -166
  291. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +0 -90
  292. data/maps/royin-tha-Thai-Latn-1968.yaml +0 -183
  293. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +0 -180
  294. data/maps/royin-tha-Thai-Latn-1999.yaml +0 -80
  295. data/maps/sac-zho-Hans-Latn-1979.yaml +0 -24763
  296. data/maps/sasm-mon-Mong-Latn-general-1978.yaml +0 -389
  297. data/maps/sasm-mon-Mong-Latn-phonetic-1978.yaml +0 -354
  298. data/maps/ses-ara-Arab-Latn-1930.yaml +0 -283
  299. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +0 -222
  300. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +0 -197
  301. data/maps/ua-ukr-Cyrl-Latn-2007.yaml +0 -75
  302. data/maps/ua-ukr-Cyrl-Latn-2010.yaml +0 -192
  303. data/maps/un-amh-Ethi-Latn-2016.yaml +0 -602
  304. data/maps/un-ara-Arab-Latn-1971.yaml +0 -139
  305. data/maps/un-ara-Arab-Latn-1972.yaml +0 -159
  306. data/maps/un-ara-Arab-Latn-2017.yaml +0 -420
  307. data/maps/un-asm-Beng-Latn-1972.yaml +0 -223
  308. data/maps/un-bel-Cyrl-Latn-2007.yaml +0 -114
  309. data/maps/un-ben-Beng-Latn-2016.yaml +0 -534
  310. data/maps/un-ell-Grek-Latn-1987-phonetic.yaml +0 -780
  311. data/maps/un-ell-Grek-Latn-1987-tl.yaml +0 -31
  312. data/maps/un-ell-Grek-Latn-1987-ts.yaml +0 -19
  313. data/maps/un-guj-Gujr-Latn-1972.yaml +0 -229
  314. data/maps/un-hin-Deva-Latn-2016.yaml +0 -316
  315. data/maps/un-kan-Kana-Latn-2016.yaml +0 -254
  316. data/maps/un-mal-Mlym-Latn-1972.yaml +0 -251
  317. data/maps/un-mar-Deva-Latn-2016.yaml +0 -102
  318. data/maps/un-mon-Mong-Latn-general-2013.yaml +0 -264
  319. data/maps/un-mon-Mong-Latn-phonetic-2013.yaml +0 -264
  320. data/maps/un-nep-Deva-Latn-1972.yaml +0 -269
  321. data/maps/un-nep-Deva-Latn-2013.yaml +0 -74
  322. data/maps/un-ori-Orya-Latn-1972.yaml +0 -247
  323. data/maps/un-pan-Guru-Latn-1972.yaml +0 -402
  324. data/maps/un-prs-Arab-Latn-1967.yaml +0 -236
  325. data/maps/un-rus-Cyrl-Latn-1987.yaml +0 -166
  326. data/maps/un-tam-Taml-Latn-1972.yaml +0 -194
  327. data/maps/un-tel-Telu-Latn-1972.yaml +0 -270
  328. data/maps/un-ukr-Cyrl-Latn-1998.yaml +0 -53
  329. data/maps/un-ukr-Cyrl-Latn-2012.yaml +0 -162
  330. data/maps/un-urd-Arab-Latn-1972.yaml +0 -405
  331. data/maps/var-amh-Ethi-Latn-eae-2003.yaml +0 -466
  332. data/maps/var-gez-Ethi-Latn-eae-2003.yaml +0 -76
  333. data/maps/var-hin-Deva-Latn-hunterian-1872.yaml +0 -221
  334. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +0 -406
  335. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +0 -386
  336. data/maps/var-kor-Hang-Hang-jamo.yaml +0 -11193
  337. data/maps/var-kor-Hang-Latn-mr-1939.yaml +0 -1054
  338. data/maps/var-kor-Kore-Hang-2013.yaml +0 -59754
  339. data/maps/var-kor-Kore-Latn-mr-1939.yaml +0 -36
  340. data/maps/var-mar-Deva-Latn-hunterian-1872.yaml +0 -43
  341. data/maps/var-mon-Mong-Latn-1930.yaml +0 -102
  342. data/maps/var-mon-Mong-Latn-lessing.yaml +0 -272
  343. data/maps/var-mon-Mong-Latn-vpmc.yaml +0 -274
  344. data/maps/var-pra-Deva-Latn-iast-1912.yaml +0 -30
  345. data/maps/var-san-Deva-Latn-iast-1912.yaml +0 -149
  346. data/maps/var-tha-Thai-Thai-phonemic.yaml +0 -59
  347. data/maps/var-tha-Thai-Zsym-ipa.yaml +0 -301
  348. data/maps/var-zho-Hani-Latn-wd-1979.yaml +0 -38912
  349. data/spec/interscript/filenames_spec.rb +0 -21
  350. data/spec/interscript/mapping_spec.rb +0 -42
  351. data/spec/interscript_spec.rb +0 -37
  352. data/spec/spec_helper.rb +0 -3
@@ -1,21 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2005
4
- language: iso-639-2:mkd
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: Standards for the transliteration of macedonian personal names in written reports and products
8
- creation_date: 2005
9
- confirmation_date: 2005
10
- description: |
11
- Office of the Director Of National Intelligence Macedonian Personal Names 2004 System
12
-
13
- tests:
14
- - source: Билјана
15
- expected: Biljana
16
- - source: Душко
17
- expected: Dushko
18
-
19
- map:
20
- inherit: odni-mkd-Cyrl-Latn-2015
21
- rules:
@@ -1,122 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2015
4
- language: iso-639-2:mkd
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: Standards for the transliteration of macedonian personal names in written reports and products
8
- source: ICS-630-01 Annex H
9
- creation_date: 2015
10
- confirmation_date: 2015
11
- description: |
12
- This system is the Intelligence Community (IC) standard for the transliteration of Macedonian
13
- names that will be applied to all final written reports and products for IC consumers. It is not
14
- intended to eliminate variations of a name that can contribute forensic information. Rather, it is
15
- to provide an IC standard Romanized (English) transliteration from Macedonian that can then be
16
- linked to forensic information in ways that will help identify the referent of the name.
17
-
18
- In cases where an individual’s name has already been transliterated in a variant spelling, the IC
19
- Standard spelling should appear first, followed by the variant spelling(s) in parentheses at the
20
- first usage. In addition, if the original Cyrillic spelling is known, that spelling should also
21
- appear in parentheses following the name, if possible, following best practices of the issuing
22
- organization and taking into consideration information system capabilities. This convention is
23
- designed to ensure that vital forensic information is not lost.
24
-
25
- For names of persons who are known to not be part of the Macedonian-speaking community, use the
26
- relevant IC transliteration standard for names from that language (e.g., Mikhail, Yitzhak).
27
- A translator’s note may be used to clarify the known origin of the person. Spell names of
28
- individuals from languages that are written in Roman letters as they are spelled in those
29
- languages (e.g., George Clooney, Jorge Garcia, Georges Pompidou).
30
-
31
- In the case of active senior government officials in the on-line CIA World Factbook and the on-
32
- line directory of Chiefs of State and Cabinet Members of Foreign Governments, the spellings given
33
- in these on-line reference works should be used in place of the IC Standard. For any individual
34
- who has at one time been listed in the Factbook or Chiefs of State directory but who no longer
35
- appears in those resources (i.e. is no longer a government official), the IC Standard spelling
36
- should appear first, with the spelling, if known, as it previously appeared in those resources
37
- listed within parentheses at the first usage.
38
-
39
- The primary goal is to produce a consistent Romanized transcription of names that is specifically
40
- readable to the English-speaking non-specialist. The system uses the 26 letters of the standard
41
- (English) Roman alphabet. Some ambiguities in the Romanized form will occur without the use of
42
- diacritics. However, within the context of a report, where additional information about the
43
- individual is provided, the referent will be clearly identified. This system will be used in
44
- conjunction with on-line tools, name dictionaries, and lists containing conventional spellings of
45
- names of well-known individuals.
46
-
47
- tests:
48
- - source: Билјана
49
- expected: Biljana
50
- - source: Душко
51
- expected: Dushko
52
-
53
- map:
54
- rules:
55
- - pattern: \u0053 # S => Dz
56
- result: Dz
57
- - pattern: \u0073 # s => dz
58
- result: dz
59
-
60
- characters:
61
- '\u0410': 'A' # А
62
- '\u0411': 'B' # Б
63
- '\u0412': 'V' # В
64
- '\u0413': 'G' # Г
65
- '\u0414': 'D' # Д
66
- '\u0403': 'Gj' # Ѓ
67
- '\u0415': 'E' # Е
68
- '\u0416': 'Zh' # Ж
69
- '\u0417': 'Z' # З
70
- '\u0418': 'I' # И
71
- '\u0408': 'J' # Ј
72
- '\u041A': 'K' # К
73
- '\u041B': 'L' # Л
74
- '\u0409': 'Lj' # Љ
75
- '\u041C': 'M' # М
76
- '\u041D': 'N' # Н
77
- '\u040A': Nj # Њ
78
- '\u041E': 'O' # О
79
- '\u041F': 'P' # П
80
- '\u0420': 'R' # Р
81
- '\u0421': 'S' # С
82
- '\u0422': 'T' # Т
83
- '\u040C': 'Kj' # Ќ
84
- '\u0423': 'U' # У
85
- '\u0424': 'F' # Ф
86
- '\u0425': 'H' # Х
87
- '\u0426': 'Ts' # Ц
88
- '\u0427': 'Ch' # Ч
89
- '\u040F': 'Dzh' # Џ
90
- '\u0428': 'Sh' # Ш
91
- '\u2019': '' # ’
92
-
93
- '\u0430': 'a' # а
94
- '\u0431': 'b' # б
95
- '\u0432': 'v' # в
96
- '\u0433': 'g' # г
97
- '\u0434': 'd' # д
98
- '\u0453': 'gj' # ѓ
99
- '\u0435': 'e' # e
100
- '\u0436': 'zh' # ж
101
- '\u0437': 'z' # з
102
- '\u0438': 'i' # и
103
- '\u0458': 'j' # ј
104
- '\u043A': 'k' # к
105
- '\u043B': 'l' # л
106
- '\u0459': 'lj' # љ
107
- '\u043C': 'm' # м
108
- '\u043D': 'n' # н
109
- '\u045A': 'nj' # њ
110
- '\u043E': 'o' # о
111
- '\u043F': 'p' # п
112
- '\u0440': 'r' # р
113
- '\u0441': 's' # с
114
- '\u0442': 't' # т
115
- '\u045C': 'kj' # ќ
116
- '\u0443': 'u' # у
117
- '\u0444': 'f' # ф
118
- '\u0445': 'h' # х
119
- '\u0446': 'ts' # ц
120
- '\u0447': 'ch' # ч
121
- '\u045F': 'dzh' # џ
122
- '\u0448': 'sh' # ш
@@ -1,123 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2004
4
- language: iso-639-3:prs
5
- source_script: Arab
6
- destination_script: Latn
7
- name: Intelligence Community (IC) Standard for the Transliteration of Dari Personal Names (2004)
8
- url: https://github.com/interscript/interscript-private-references/blob/master/odni/Farsi_(Persian)_%26_Dari_IC_Standards.doc
9
- creation_date: 2004
10
- confirmation_date: 2004-11
11
- description: |
12
-
13
- notes:
14
- - This standard is intended only for those Afghan names
15
- that have a common bond or similarity with Iranian or
16
- Arabic names. They should not, for example, be used for
17
- Pashto names, for which a separate standard should be used.
18
- - Long/short vowels:- There is no distinction made in Roman
19
- between long and short a:- E.g., Farhad (first a is short,
20
- second is long).
21
- - Double consonants:- Double consonants represented by the
22
- tashdid are shown by doubling the Roman letter:- Mohammad.
23
- Exceptions:- Consonants represented by Roman digraphs (
24
- e.g., sh, ch) are not doubled:- Mobasher [not:- Mobashsher]
25
- . Double letters are only used for tashdid (thus, Hosein [
26
- not Hossein]) or to reflect the ‘sun letter’ assimilation (
27
- see below).
28
- - Hamzeh:- The hamzeh is represented name-internally by an
29
- apostrophe, as is the ain. Name-initially, however,
30
- neither hamzeh nor ain are indicated in transliteration (
31
- e.g., Abdorrahman, not 'Abdorrahman).
32
- - Digraphs:- No distinction is drawn in Roman between
33
- digraphs such as sh and single contiguous letters (e.g., s
34
- followed by h).
35
- - Arabic definite article "al" ('the'):- Common in many
36
- names borrowed from Arabic, the transliteration should show
37
- the 'sun letter' assimilation rather than the “l” for the
38
- lam. That is:- Abdorrahman. Note also that the "Abdol +
39
- attribute of Allah" names are written as one unanalyzed
40
- word, as are other names that contain the definite
41
- article:- Shamsoddin (not Shams al-Din), Nezamoddin, etc.
42
- - Diphthongs:- Diphthongs are written ei and ow
43
- respectively:- Hosein; Khosrow.
44
- - Yeh maqsura (final yeh pronounced as “a”):- should be
45
- written as “a” as in “Musa”.
46
-
47
- - Special Rules
48
-
49
- - Hyphens:- A hyphen is used to indicate the ezafeh
50
- construction:- Arshad-e Ameri
51
- - Borrowed names that incorporate the name of God (Allah)
52
- are transliterated as one word, with the letter "o":- E.g.,
53
- Abdollah, Ayatollah, Azizollah.
54
- - Foreign names borrowed or appearing in Dari are spelled
55
- according to the standard Western tradition (even if there
56
- is an Arabic or Dari version of the same name):- Joseph,
57
- Michael.
58
- - Common suffixes, such as gol, pur, mand, yar, zadeh,
59
- etc., as well as nesbeh (‘relationship’ (to place of birth,
60
- etc.)) names derived with these suffixes (e.g., abadi) are
61
- written as part of the name:-
62
-
63
- gol Parigol, Ziagol
64
- pur Shahpur, Mehrpur
65
- mand Gulahmand
66
- yar Aminyar
67
- zadeh Ismailzadeh, Karimzadeh
68
-
69
- abadi Kamalabadi
70
-
71
-
72
- tests:
73
- - source: مُوسَى
74
- expected: musa
75
-
76
- - source: مُؤمِن
77
- expected: momen
78
-
79
- - source: رِضايي
80
- expected: rezai
81
-
82
- - source: مُبَشِّر
83
- expected: mobasher
84
-
85
- - source: حَسَّان
86
- expected: hassan
87
-
88
- - source: حَسَن
89
- expected: hasan
90
-
91
- - source: صَفَّار
92
- expected: saffar
93
-
94
- - source: صَفَر
95
- expected: safar
96
-
97
- map:
98
- inherit: odni-fas-Arab-Latn-2004
99
- characters:
100
-
101
- '\u0626' : '' # ئ
102
- '\u0624' : '' # ؤ
103
-
104
- # shadda
105
-
106
- '\u0642\u0651' : 'qq' # ق
107
- '\u0648\u0651' : 'ww' # و
108
-
109
- '\u0621': '' # ء
110
-
111
- # FROM NOTES
112
-
113
- '\u064a\u064a' : 'i' # NOTE 4 (2)
114
- '\u06cc\u06cc' : 'i'
115
-
116
- '\u0627\u064a\b' : 'i' # NOTE 4 (3)
117
- '\u0627\u06cc\b' : 'i'
118
-
119
- # Farsi consonant characters
120
-
121
- '\u0639' : '' # ع # new
122
- '\u0642' : 'q' # ق
123
- '\u0648' : 'w' # و
@@ -1,228 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2015
4
- language: iso-639-3:prs
5
- source_script: Arab
6
- destination_script: Latn
7
- name: ODNI Persian Farsi Dari Personal Names 2015 System, ICS-630-01 Annex J
8
- url: https://github.com/interscript/ics-630-01/blob/master/reference-docs/ANNEX%20J%20-%20Persian-Farsi_Dari_Personal_Names_FLTS_2018_Revision%20(U).pdf
9
- creation_date: 2015
10
- confirmation_date: 2015-11
11
- description: |
12
- This system is the Intelligence Community (IC) standard for
13
- the transliteration of Persian (Farsi)
14
- and Dari names that is applied to all final written reports
15
- and products for IC consumers. It is not
16
- intended to eliminate variations of a name that can
17
- contribute forensic information. Rather, it is
18
- to provide an IC standard Romanized (English)
19
- transliteration from Persian (Farsi) and Dari that
20
- can then be linked to forensic information in ways that
21
- will help identify the referent of the
22
- name.
23
-
24
- In cases where an individual’s name has already been
25
- transliterated in a variant spelling, the IC
26
- Standard spelling should appear first, followed by the
27
- variant spelling(s) in parentheses at the
28
- first usage. In addition, if the original Perso-Arabic
29
- script spelling is known, that spelling should
30
- also appear in parentheses following the name, if possible,
31
- following best practices of the issuing
32
- organization and taking into consideration information
33
- system capabilities. This convention is
34
- designed to ensure that vital forensic information is not
35
- lost while maintaining consistency.
36
-
37
- For names of individuals who are not part of the Persian-(
38
- Farsi) or Dari-speaking community,
39
- but whose names are encountered in Farsi or Dari, use the
40
- relevant IC transliteration standard for
41
- names from that language (e.g., Mikhail, Yitzhak, Abu-
42
- Murtada). Spell names of individuals
43
- from languages that are written in Roman letters as they
44
- are spelled in those languages (e.g.,
45
- George Clooney, Jorge Garcia, Georges Pompidou).
46
- In the case of active senior government officials in the
47
- online CIA World Factbook and the
48
- online directory of Chiefs of State and Cabinet Members of
49
- Foreign Governments, the spellings
50
- given in these online reference works should be used in
51
- place of the IC Standard, with the IC
52
- Standard included as a variant in parentheses at the first
53
- usage. For any individual who has at one
54
- time been listed in the Factbook or Chiefs of State
55
- directory but who no longer appears in those
56
- resources (i.e., is no longer a government official), the
57
- IC Standard spelling should appear first,
58
- with the spelling, if known, as it previously appeared in
59
- those resources listed within parentheses
60
- at the first usage (e.g., former president Mahmud
61
- Ahmadinezhad (Ahmadi-Nejad).
62
-
63
- The primary goal is to produce a consistent Romanized
64
- transcription of names that is specifically
65
- readable to the English-speaking non-specialist. The system
66
- uses the 26 letters of the standard
67
- (English) Roman alphabet plus the apostrophe and hyphen.
68
- Some ambiguities in the Romanized
69
- form will occur without the use of diacritics. However,
70
- within the context of a report, where
71
- additional information about the individual is provided,
72
- the referent will be clearly identified.
73
- This system will be used in conjunction with online tools,
74
- name dictionaries, and lists containing
75
- conventional spellings of names of well-known individuals.
76
-
77
- notes:
78
- - |
79
- This standard is intended only for those Afghan names that
80
- have a common bond or similarity with Iranian names. It
81
- should not, for example, be used for names of Pashtuns, for
82
- which the Pashto IC Standard should be used.
83
-
84
- - |
85
- Alef maqsura (final yeh pronounced as “a”): should be written “a” as in
86
- “Musa”.
87
-
88
- - |
89
- Digraphs: No distinction is drawn between digraphs
90
- such as sh and single contiguous letters (e.g., s followed
91
- by h).
92
-
93
- - |
94
- Long/short vowels: There is no distinction made in
95
- Roman between long and short a: E.g., Farhad (first a is
96
- short, second is long).
97
-
98
- - |
99
- Diphthongs: Diphthongs are written ei and ow respectively:
100
- Hosein; Khosrow.
101
-
102
- - |
103
- Double consonants: Double consonants represented by the
104
- tashdid are shown by doubling the
105
- Roman letter: Mo'azzami, Tavakkoli, Sajjad. Exceptions: Ein
106
- and consonants represented by
107
- Roman digraphs (e.g., sh, ch) are not doubled (Mobasher,
108
- not Mobashsher). Double letters
109
- are only used for tashdid (Hosein, not Hossein) or to
110
- reflect “sun-letter” assimilation (see
111
- below). Special care should be taken when possible to
112
- discriminate between doubled and
113
- non-doubled letters in names that are otherwise
114
- indistinguishable in their transliterated forms:
115
- Hasan (حسن (vs. Hassan (حسان(
116
-
117
- - |
118
- Compound first names will be written as distinct words:
119
- Ali Reza (not Alireza or Ali-Reza);
120
- Mohammad Hosein (not Mohammadhosein or Mohammad-Hosein),
121
- with the exception of cases identified below.
122
-
123
- - |
124
- Arabic-origin names that incorporate the word “Allah” are
125
- transliterated as one word, with the letter ‘o’ replacing the
126
- alef in Allah (Azizollah, Rahimollah).
127
-
128
- - |
129
- Name-internal Arabic definite article "al" (‫)ال‬: Common
130
- in many names borrowed
131
- from Arabic, the transliteration should follow the Arabic
132
- rules for “sun letter” assimilation in spoken form and
133
- reflect the nominative case. That is: Abdorrahman, not Abd-
134
- al-Rahman. (The Arabic sun letters are: ‫ت‬،‫ث‬،‫د‬،‫ذ‬،
135
- ‫ر‬، ‫ز‬،‫س‬،‫ش‬،‫ص‬،‫ض‬،‫ط‬،‫ظ‬،‫ل‬،‫ن‬ . These correspond with
136
- d, l, n, r, s, sh, t, and z.) Note that the moon letters (
137
- i.e., all other Arabic letters) are not assimilated (e.g.,
138
- Abdolhasan, Abolfazl). Note also that the “Abdollah” and
139
- “Abdol + attribute of Allah” names are written as a single
140
- word, as are other names that contain the definite article:
141
- Shamsoddin (not Shams-al-Din), Nezamoddin, etc.
142
-
143
- - |
144
- Name-initial Arabic definite article "al" (‫)ال‬: For
145
- Arabic-origin names starting with the definite article “al” (‫)
146
- ال‬, follow the Arabic standard of al-Sisi (‫)الصیصی‬ (not
147
- Alsisi or Assisi) and forego sun-letter assimilation.
148
-
149
- - |
150
- Arabic "family marker" of Al (‫)آل‬: For Arabic-origin
151
- names starting with the "family marker" of Al (‫)آل‬,
152
- follow the Arabic standard of Al Davud (‫داود‬ ‫)آل‬ (not
153
- Aldavud or Aledavud).
154
-
155
- - |
156
- Kunyas: In the rather rare case where
157
- a Persian uses a kunya (a name for an adult normally
158
- derived from his or her eldest child, and sometimes
159
- employed as a nom de guerre), this name will be rendered
160
- with a space separating the two elements (Abu Hosein, Abu
161
- Ghasem). Note that this does not apply when the person's
162
- given or family name was derived from a predecessor's
163
- kunya. In these cases, the leading element should be
164
- treated as a prefix as indicated below (Abuhosein[i],
165
- Abughasem[i]).
166
-
167
- tests:
168
- - source: مُوسَى
169
- expected: musa
170
-
171
- - source: مُؤمِن
172
- expected: momen
173
-
174
- - source: رِضايي
175
- expected: rezai
176
-
177
- - source: مُبَشِّر
178
- expected: mobasher
179
-
180
- - source: حَسَّان
181
- expected: hassan
182
-
183
- - source: حَسَن
184
- expected: hasan
185
-
186
- - source: صَفَّار
187
- expected: saffar
188
-
189
- - source: صَفَر
190
- expected: safar
191
-
192
- map:
193
- inherit: odni-fas-Arab-Latn-2015
194
- characters:
195
-
196
- # ta' marboota
197
- '\u0629' : 'ah'
198
-
199
- '\u0626' : '' # ئ
200
- '\u0624' : '' # ؤ
201
-
202
- # Farsi Vowel (Pointing)
203
-
204
- # '\u064e\u0648' : 'ow' # ـَو
205
- # '\u064e\u0648\u0652' : 'aw' # ـَوْ
206
-
207
- # additional symbols
208
-
209
- # shadda
210
-
211
- '\u0642\u0651' : 'qq' # ق
212
- '\u0648\u0651' : 'ww' # و
213
-
214
- '\u0621': '' # ء
215
-
216
- # FROM NOTES
217
-
218
- '\u064a\u064a' : 'i' # NOTE 4 (2)
219
- '\u06cc\u06cc' : 'i'
220
-
221
- '\u0627\u064a\b' : 'i' # NOTE 4 (3)
222
- '\u0627\u06cc\b' : 'i'
223
-
224
- # Farsi consonant characters
225
-
226
- '\u0639' : '' # ع # new
227
- '\u0642' : 'q' # ق
228
- '\u0648' : 'w' # و