interscript 0.1.9 → 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
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,130 +0,0 @@
1
- ---
2
- authority_id: alalc
3
- id: 2017
4
- language: iso-639-2:ben
5
- source_script: Beng
6
- destination_script: Latn
7
- name: Bengali Romanization, 2017
8
- url: https://www.loc.gov/catdir/cpso/romanization/bengali.pdf
9
- creation_date: 2017
10
- description: |
11
- ALA-LC Romanization table for Bengali
12
-
13
- notes:
14
-
15
- - Only the vowel forms that appear at the beginning of a syllable are
16
- listed; the forms used for vowels following a consonant can be found in
17
- grammars; no distinction between the two is made in transliteration.
18
-
19
- - |
20
- The vowel a is implicit after all consonants and consonant clusters
21
- and is supplied in transliteration, with the following exceptions:
22
-
23
- a) when another vowel is indicated by its appropriate sign; and
24
- b) when the absence of any vowel is indicated by the subscript symbol ( ্ )
25
- called hasanta or birāma.
26
-
27
- - ব is used both as a labial and as a semivowel. When it occurs as the
28
- second or subsequent consonant of a consonant cluster, it is
29
- transliterated va. When ব is doubled, it is transliterated bba.
30
-
31
- - Candrabindu before guttural, palatal, cerebral, and dental occlusives
32
- is transliterated n̐. Before labials, sibilants, semivowels, the
33
- aspirate, vowels, and in final position it is transliterated m̐.
34
-
35
- - When doubled, abagraha is transliterated by two apostrophes ( ’’ ).
36
-
37
- tests:
38
- - source: "র্ক"
39
- expected: "rka"
40
- - source: "গ্র"
41
- expected: "gra"
42
- - source: "ত্য"
43
- expected: "tya"
44
-
45
- map:
46
- inherit: "un-ben-Beng-Latn-2016"
47
-
48
- characters:
49
-
50
- # I. Vowels and Diphthongs (see Note 1)
51
-
52
- 'অ': 'a'
53
- 'ৠ': 'ṝ'
54
- 'আ': 'ā'
55
- 'ঌ': 'ḹ'
56
- 'ই': 'I'
57
- 'এ': 'e'
58
- 'ঈ': 'ī'
59
- 'ঐ': 'ai'
60
- 'উ': 'u'
61
- 'ও': 'o'
62
- 'ঊ': 'ū'
63
- 'ঔ': 'au'
64
- 'ঋ': 'ṛ'
65
-
66
- # II. Consonants (see Note 2)
67
- # Gutturals
68
- 'ক': 'ka'
69
- 'খ': 'kha'
70
- 'গ': 'ga'
71
- 'ঘ': 'gha'
72
- 'ঙ': 'ṅa'
73
-
74
- # Palatals
75
- 'চ': 'ca'
76
- 'ছ': 'cha'
77
- 'জ': 'ja'
78
- 'ঝ': 'jha'
79
- 'ঞ': 'ña'
80
-
81
- # Cerebrals
82
- 'ট': 'ṭa'
83
- 'ঠ': 'ṭha'
84
- 'ড': 'ḍa'
85
- 'ড়': 'ṛa'
86
- 'ঢ': 'ḍha'
87
- 'ঢ়': 'ṛha'
88
- 'ণ': 'ṇa'
89
-
90
- # Dentals
91
- 'ত': 'ta'
92
- 'ৎ': 't'
93
- 'থ': 'tha'
94
- 'দ': 'da'
95
- 'ধ': 'dha'
96
- 'ন': 'na'
97
-
98
- # Labials
99
- 'প': 'pa'
100
- 'ফ': 'pha'
101
- 'ব': 'ba' # see Note 3
102
- 'ভ': 'bha'
103
- 'ম': 'ma'
104
-
105
- # Semivowels
106
- 'য': 'ya'
107
- 'য়': 'ẏa'
108
- 'র': 'ra'
109
- 'ল': 'la'
110
- 'ব': 'ba' # see Note 3
111
-
112
- # Sibilants
113
- 'শ': 'śa'
114
- 'ষ': 'sha'
115
- 'স': 'sa'
116
-
117
- # Aspirate
118
- 'হ': 'ha'
119
-
120
- # Anusvāra
121
- ' ং': 'ṃ'
122
-
123
- # Bisarga
124
- ' ঃ': 'ḥ'
125
-
126
- # Candrabindu (anunāsika) see note 4
127
- '\u0981': 'n̐' # ঁ : n̐, m̐
128
-
129
- # Abagraha (see Note 5)
130
- 'ऽ': '’' # (apostrophe)
@@ -1,98 +0,0 @@
1
- ---
2
- authority_id: alalc
3
- id: 1997
4
- language: iso-639-2:bul
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: ALA-LC Romanization Table -- Bulgarian (1997)
8
- alias:
9
- ogc11122:
10
- code: bul_Cyrl2Latn_ALA_1997
11
- description: Bulgarian ALA-Library of Congress Bulgarian 1997 System
12
- url: http://www.rechtertie.nl/databases/judd/downloads/Bulgarian.pdf
13
- creation_date: 1997
14
-
15
- notes:
16
- - |
17
- The letter Ъ in the initial and medial position is a vowel in Bulgarian and is romanized as ŭ.
18
- It appears in the final position chiefly in texts published before 1945, in which it serves as
19
- a hard sign and is romanized as ʺ.
20
- - The letters Ѣ and Ѫ are found chiefly in texts published before the orthographic reform of 1945.
21
-
22
- tests:
23
- # missing
24
-
25
- map:
26
- rules:
27
- # note[1]
28
- - pattern: (?<=)\u042a(?=\b)
29
- result: "\u02BA"
30
- - pattern: (?<=)u044a(?=\b)
31
- result: "\u02BA"
32
-
33
- characters:
34
- '\u0410': 'A'
35
- '\u0411': 'B'
36
- '\u0412': 'V'
37
- '\u0413': 'G'
38
- '\u0414': 'D'
39
- '\u0415': 'E'
40
- '\u0416': 'Zh'
41
- '\u0417': 'Z'
42
- '\u0418': 'I'
43
- '\u0419': "I\u0306" # Ĭ
44
- '\u041a': 'K'
45
- '\u041b': 'L'
46
- '\u041c': 'M'
47
- '\u041d': 'N'
48
- '\u041e': 'O'
49
- '\u041f': 'P'
50
- '\u0420': 'R'
51
- '\u0421': 'S'
52
- '\u0422': 'T'
53
- '\u0423': 'U'
54
- '\u0424': 'F'
55
- '\u0425': 'Kh'
56
- '\u0426': "T\u0361S"
57
- '\u0427': 'Ch'
58
- '\u0428': 'Sh'
59
- '\u0429': 'Sht'
60
- '\u042a': "U\u0306" # or ʺ check note[1]
61
- '\u042c': '\u02B9'
62
- '\u0462': "I\u0361E" # Ѣ check note [2]
63
- '\u042e': "I\u0361U"
64
- '\u042f': "I\u0361A"
65
- '\u046A': "U\u0310" # Ѫ check note [2]
66
-
67
- '\u0430': 'a'
68
- '\u0431': 'b'
69
- '\u0432': 'v'
70
- '\u0433': 'g'
71
- '\u0434': 'd'
72
- '\u0435': 'e'
73
- '\u0436': 'zh'
74
- '\u0437': 'z'
75
- '\u0438': 'i'
76
- '\u0439': "i\u0306" # ĭ
77
- '\u043a': 'k'
78
- '\u043b': 'l'
79
- '\u043c': 'm'
80
- '\u043d': 'n'
81
- '\u043e': 'o'
82
- '\u043f': 'p'
83
- '\u0440': 'r'
84
- '\u0441': 's'
85
- '\u0442': 't'
86
- '\u0443': 'u'
87
- '\u0444': 'f'
88
- '\u0445': 'kh'
89
- '\u0446': "t\u0361s"
90
- '\u0447': 'ch'
91
- '\u0448': 'sh'
92
- '\u0449': 'sht'
93
- '\u044a': "u\u0306" # or ʺ check note[1]
94
- '\u044c': '\u02B9'
95
- '\u0463': "i\u0361e" # ѣ check note [2]
96
- '\u044e': "i\u0361u"
97
- '\u044f': "i\u0361a"
98
- '\u046B': "u\u0310" # ѫ check note [2]
@@ -1,211 +0,0 @@
1
- ---
2
- authority_id: alalc
3
- id: 1997
4
- language: iso-639-2:div
5
- source_script: Thaa
6
- destination_script: Latn
7
- name: ALA-Library of Congress Divehi Romanization 1997 System
8
- alias:
9
- ogc11122:
10
- code: div_Thaa2Latn_ALA_1997
11
- description: Divehi ALA-Library of Congress 1997 System
12
- url: http://catdir.loc.gov/catdir/cpso/romanization/divehi.pdf
13
- creation_date: 1997
14
- description: |
15
- ALA-Library of Congress Divehi Romanization 1997 System
16
-
17
- notes:
18
-
19
- - |
20
- Romanize ށް as ḫ when it doubles the following consonant or is used as a glottal stop.
21
- aḫvana އަށްވަނަ
22
- maśaḫ މަށަށް
23
- - |
24
- When used in medial position without ް (sukūn), romanize ނ as ṁ.
25
- aṁga އަނގަ
26
- haṁdu ހަނދު
27
- - |
28
- Romanization of އ.
29
- (a) When used in the initial position with any vowel sign, do not romanize.
30
- ata އަތަ
31
- idu އިދު
32
- umuru އުމުރު
33
- egahugi އެގަހުގި
34
- (b) When used in the medial position with any vowel sign, romanize as ’.
35
- ha’hūnu ހައިހޫނު
36
- fa’isa ފައިސަ
37
- k’īn ކްއީން
38
- (c) When a consonant follows އް in medial position, double it in romanization.
39
- cappalu ޗައްޕަލު
40
- appacci އައްޕައްޗި
41
- (d) When used in final position with ް (sukūn), romanize as h.
42
- boh ބޮއް
43
- biheh ބިހެއް
44
- - |
45
- Romanize ތް followed by another ތ as t̤ .
46
- at̤teri އަތްތެރި
47
- - |
48
- Only the vowel forms that appear at the beginning of a syllable are listed.
49
- When the vowels follow a consonant, އ is not used and the vowel signs are added to the consonant forms.
50
- Do not distinguish between the two in romanization.
51
- - |
52
- ް (called sukūn) generally indicates omission of an inherent vowel associated with a consonant.
53
- For its other uses, see Notes 1, 3, and 4.
54
-
55
- tests:
56
- - source: "މަށަށް"
57
- expected: "maśaḫ"
58
- - source: "އަނގަ"
59
- expected: "aṁga"
60
- - source: "ހަނދު"
61
- expected: "haṁdu"
62
- - source: "އަތަ"
63
- expected: "ata"
64
- - source: "އިދު"
65
- expected: "idu"
66
- - source: "އުމުރު"
67
- expected: "umuru"
68
- - source: "އެގަހުގި"
69
- expected: "egahugi"
70
- - source: "ފައިސަ"
71
- expected: "faʼisa"
72
- - source: "ބޮއް"
73
- expected: "boh"
74
- - source: "ބިހެއް"
75
- expected: "biheh"
76
- - source: "އަތްތެރި"
77
- expected: "at̤teri"
78
- - source: "ޗައްޕަލު"
79
- expected: "cappalu"
80
- - source: "އައްޕައްޗި"
81
- expected: "appacci"
82
-
83
- map:
84
-
85
- rules:
86
- # note[1]
87
- - pattern: (?<=)\u0781\u07b0(?=\b)
88
- result: "ḫ"
89
- # note[2]
90
- - pattern: (?<!\b)\u0782\u07b0(?<!\b) # medial position with sukun
91
- result: "n"
92
- - pattern: (?<!\b)\u0782(?<!\b) # medial position without sukun
93
- result: "ṁ"
94
- # note[3(a)]
95
- - pattern: \b(\u0787=?)(?=[\u07a6\u07a7\u07a8\u07a9\u07aa\u07ab\u07ac\u07ad\u07ae\u07af]) # initial position with any vowel sign
96
- result: ''
97
- # note[3(c)] a consonant follows އް in medial position
98
- - pattern: (?<!\b)\u0787\u07b0(?=[ހ])
99
- result: "h"
100
- - pattern: (?<!\b)\u0787\u07b0(?=[ށ])
101
- result: "ś"
102
- - pattern: (?<!\b)\u0787\u07b0(?=[ނ])
103
- result: "n"
104
- - pattern: (?<!\b)\u0787\u07b0(?=[ރ])
105
- result: "r"
106
- - pattern: (?<!\b)\u0787\u07b0(?=[ބ])
107
- result: "b"
108
- - pattern: (?<!\b)\u0787\u07b0(?=[ޅ])
109
- result: "ḷ"
110
- - pattern: (?<!\b)\u0787\u07b0(?=[ކ])
111
- result: "k"
112
- - pattern: (?<!\b)\u0787\u07b0(?=[ވ])
113
- result: "v"
114
- - pattern: (?<!\b)\u0787\u07b0(?=[މ])
115
- result: "m"
116
- - pattern: (?<!\b)\u0787\u07b0(?=[ފ])
117
- result: "f"
118
- - pattern: (?<!\b)\u0787\u07b0(?=[ދ])
119
- result: "d"
120
- - pattern: (?<!\b)\u0787\u07b0(?=[ތ])
121
- result: "t"
122
- - pattern: (?<!\b)\u0787\u07b0(?=[ލ])
123
- result: "l"
124
- - pattern: (?<!\b)\u0787\u07b0(?=[ގ])
125
- result: "g"
126
- - pattern: (?<!\b)\u0787\u07b0(?=[ޏ])
127
- result: "ñ"
128
- - pattern: (?<!\b)\u0787\u07b0(?=[ސ])
129
- result: "s"
130
- - pattern: (?<!\b)\u0787\u07b0(?=[ޑ])
131
- result: "ḍ"
132
- - pattern: (?<!\b)\u0787\u07b0(?=[ޖ])
133
- result: "j"
134
- - pattern: (?<!\b)\u0787\u07b0(?=[ޗ])
135
- result: "c"
136
- - pattern: (?<!\b)\u0787\u07b0(?=[ޒ])
137
- result: "z"
138
- - pattern: (?<!\b)\u0787\u07b0(?=[ޓ])
139
- result: "ṭ"
140
- - pattern: (?<!\b)\u0787\u07b0(?=[ޕ])
141
- result: "p"
142
- - pattern: (?<!\b)\u0787\u07b0(?=[ޔ])
143
- result: "y"
144
- # note[3(d)]
145
- - pattern: (?<!\b)\u0787\u07b0(?=\b) # final position with sukun
146
- result: 'h'
147
- # note[3(b)]
148
- - pattern: (?<!\b)\u0787(?=[\u07a6\u07a7\u07a8\u07a9\u07aa\u07ab\u07ac\u07ad\u07ae\u07af]) # medial position with any vowel sign
149
- result: 'ʼ'
150
- # note[4]
151
- - pattern: \u078c\u07b0\u078c
152
- result: 't̤t'
153
-
154
-
155
- characters:
156
-
157
- # Vowels
158
-
159
- "\u07a6" : "a"
160
- "\u07a7" : "ā"
161
- "\u07a8" : "i"
162
- "\u07a9" : "ī"
163
- "\u07aa" : "u"
164
- "\u07ab" : "ū"
165
- "\u07ac" : "e"
166
- "\u07ad" : "ē"
167
- "\u07ae" : "o"
168
- "\u07af" : "ō"
169
- "\u07B0" : "" # omit (see Note 6)
170
-
171
-
172
- # Consonants
173
- "ހ": "h"
174
- "ށ": "ś" # or ḫ (see Note 1)
175
- "ނ": "n" # see Note 2
176
- "ރ": "r"
177
- "ބ": "b"
178
- "ޅ": "ḷ"
179
- "ކ": "k"
180
- "އ": "" # ʼ or h or omit (see Note 3)
181
- "ވ": "v"
182
- "މ": "m"
183
- "ފ": "f"
184
- "ދ": "d"
185
- "ތ": "t" # see Note 4
186
- "ލ": "l"
187
- "ގ": "g"
188
- "ޏ": "ñ"
189
- "ސ": "s"
190
- "ޑ": "ḍ"
191
- "ޖ": "j"
192
- "ޗ": "c"
193
- "ޒ": "z"
194
- "ޓ": "ṭ"
195
- "ޕ": "p"
196
- "ޔ": "y"
197
-
198
- # Divehi Equivalents to Represent Arabic Letters
199
-
200
- "ޘ": "th"
201
- "ޙ": "ḥ"
202
- "ޚ": "kh"
203
- "ޛ": "dh"
204
- "ޝ": "sh"
205
- "ޞ": "ṣ"
206
- "ޟ": "ḏ"
207
- "ޠ": "t̤"
208
- "ޡ": "ẓ"
209
- "ޢ": "ʻ"
210
- "ޣ": "gh"
211
- "ޤ": "q"
@@ -1,628 +0,0 @@
1
- ---
2
- authority_id: alalc
3
- id: 1997
4
- language: iso-639-2:ell
5
- source_script: Grek
6
- destination_script: Latn
7
- name: Greek Romanization, 1997
8
- alias:
9
- ogc11122:
10
- code: ell_Grek2Latn_ALA_1997
11
- description: Greek ALA-Library of Congress 1997 System
12
- url: http://catdir.loc.gov/catdir/cpso/romanization/greek.pdf
13
- creation_date: 1997
14
- description: |
15
- ALA-LC Romanization table for Greek
16
-
17
- note:
18
- - Applies to texts after 1453 (Modern Greek)
19
- - This table presupposes monotonic accentuation; rough breathings are accordingly not addressed.
20
- - The diphthong definition for upsilon is taken from the 2010 version
21
- - Generalised gramma digraph rule to capitals
22
-
23
- tests:
24
-
25
- - source: |
26
- Ένα πράμα μόνον με παρακίνησε κι εμένα να γράψω ότι τούτην την πατρίδα την έχομεν όλοι μαζί, και σοφοί κι αμαθείς και πλούσιοι και φτωχοί και πολιτικοί και στρατιωτικοί και οι πλέον μικρότεροι άνθρωποι· όσοι αγωνιστήκαμεν, αναλόγως ο καθείς, έχομεν να ζήσομεν εδώ. Το λοιπόν δουλέψαμεν όλοι μαζί, να την φυλάμεν κι όλοι μαζί και να μην λέγει ούτε ο δυνατός «εγώ» ούτε ο αδύνατος. Ξέρετε πότε να λέγει ο καθείς «εγώ»; Όταν αγωνιστεί μόνος του και φκιάσει ή χαλάσει, να λέγει «εγώ»· όταν όμως αγωνίζονται πολλοί και φκιάνουν, τότε να λένε «εμείς». Είμαστε εις το «εμείς» κι όχι εις το «εγώ». Και εις το εξής να μάθομεν γνώση, αν θέλομεν να φκιάσομεν χωριόν, να ζήσομεν όλοι μαζί.
27
-
28
- Γιάννης Μακρυγιάννης.
29
-
30
- expected: |
31
- Ena prama monon me parakinēse ki emena na grapsō oti toutēn tēn patrida tēn echomen oloi mazi, kai sophoi ki amatheis kai plousioi kai phtōchoi kai politikoi kai stratiōtikoi kai oi pleon mikroteroi anthrōpoi; osoi agōnistēkamen, analogōs o katheis, echomen na zēsomen edō. To loipon doulepsamen oloi mazi, na tēn phylamen ki oloi mazi kai na mēn legei oute o dynatos «egō» oute o adynatos. Xerete pote na legei o katheis «egō»? Otan agōnistei monos tou kai phkiasei ē chalasei, na legei «egō»; otan omōs agōnizontai polloi kai phkianoun, tote na lene «emeis». Eimaste eis to «emeis» ki ochi eis to «egō». Kai eis to exēs na mathomen gnōsē, an thelomen na phkiasomen chōrion, na zēsomen oloi mazi.
32
-
33
- Giannēs Makrygiannēs.
34
-
35
-
36
- - source: ΑΘΗΝΑ
37
- expected: ATHĒNA
38
- - source: μπαμπάκι
39
- expected: bampaki
40
- - source: νταντά
41
- expected: ḏanta
42
- - source: γκέγκε
43
- expected: nkenke
44
- - source: Γκαμπόν
45
- expected: Nkampon
46
- - source: Μάγχη
47
- expected: Manchē
48
- - source: κογξ
49
- expected: konx
50
- - source: υιός
51
- expected: uios
52
- - source: Υιός
53
- expected: Uios
54
- - source: νεράντζι
55
- expected: nerantzi
56
- - source: Γοίθιος
57
- expected: Goithios
58
- - source: μπέικον
59
- expected: beikon
60
- - source: μπέϊκον
61
- expected: beikon
62
- - source: βόλεϊ
63
- expected: volei
64
- - source: αθεΐα
65
- expected: atheia
66
- - source: Εϊγιαφιάτλαγιοκουτλ
67
- expected: Eigiaphiatlagiokoutl
68
- - source: Εΐτζι
69
- expected: Eitzi
70
- - source: Μυρτώο
71
- expected: Myrtōo
72
- - source: αέρας
73
- expected: aeras
74
- - source: γαυ γαυ
75
- expected: gau gau
76
- - source: Ταΰγετος
77
- expected: Taygetos
78
- - source: σπρέυ
79
- expected: sprey
80
-
81
- - source: Αθήνα
82
- expected: Athēna
83
- - source: Άγιον Όρος
84
- expected: Agion Oros
85
- - source: Άγραφα
86
- expected: Agrapha
87
- - source: Αγρίνιο
88
- expected: Agrinio
89
- - source: Αίγινα
90
- expected: Aigina
91
- - source: Αίγιο
92
- expected: Aigio
93
- - source: Αλεξανδρούπολη
94
- expected: Alexandroupolē
95
- - source: Αλεποχώρι
96
- expected: Alepochōri
97
- - source: Αμοργός
98
- expected: Amorgos
99
- - source: Άμφισσα
100
- expected: Amphissa
101
- - source: Αράχωβα
102
- expected: Arachōva
103
- - source: Άργος
104
- expected: Argos
105
- - source: Αρκαδία
106
- expected: Arkadia
107
- - source: Άρτα
108
- expected: Arta
109
- - source: Βελούχι
110
- expected: Velouchi
111
- - source: Βέροια
112
- expected: Veroia
113
- - source: Βοιωτία
114
- expected: Voiōtia
115
- - source: Βόλος
116
- expected: Volos
117
- - source: Βόνιτσα
118
- expected: Vonitsa
119
- - source: Γαλαξίδι
120
- expected: Galaxidi
121
- - source: Γαλάτσι
122
- expected: Galatsi
123
- - source: Γιαννιτσά
124
- expected: Giannitsa
125
- - source: Γλυφάδα
126
- expected: Glyphada
127
- - source: Γρανίτσα
128
- expected: Granitsa
129
- - source: Γρεβενά
130
- expected: Grevena
131
- - source: Γύθειο
132
- expected: Gytheio
133
- - source: Διόνυσος
134
- expected: Dionysos
135
- - source: Δίστομο
136
- expected: Distomo
137
- - source: Δολιανά
138
- expected: Doliana
139
- - source: Δράμα
140
- expected: Drama
141
- - source: Δωδεκάνησα
142
- expected: Dōdekanēsa
143
- - source: Έδεσσα
144
- expected: Edessa
145
- - source: Ελευσίνα
146
- expected: Eleusina
147
- - source: Επίδαυρος
148
- expected: Epidauros
149
- - source: Επτάνησα
150
- expected: Eptanēsa
151
- - source: Ερμούπολη
152
- expected: Ermoupolē
153
- - source: Εύβοια
154
- expected: Euvoia
155
- - source: Ζάκυνθος
156
- expected: Zakynthos
157
- - source: Ήπειρος
158
- expected: Ēpeiros
159
- - source: Ηράκλειο
160
- expected: Ērakleio
161
- - source: Θάσος
162
- expected: Thasos
163
- - source: Θεσσαλονίκη
164
- expected: Thessalonikē
165
- - source: Θεσσαλία
166
- expected: Thessalia
167
- - source: Θεσπρωτία
168
- expected: Thesprōtia
169
- - source: Θήβα
170
- expected: Thēva
171
- - source: Θράκη
172
- expected: Thrakē
173
- - source: Ιθάκη
174
- expected: Ithakē
175
- - source: Ίος
176
- expected: Ios
177
- - source: Ιωάννινα
178
- expected: Iōannina
179
- - source: Καβάλα
180
- expected: Kavala
181
- - source: Καλάβρυτα
182
- expected: Kalavryta
183
- - source: Καλαμάτα
184
- expected: Kalamata
185
- - source: Καλαμπάκα
186
- expected: Kalampaka
187
- - source: Καλύβια
188
- expected: Kalyvia
189
- - source: Κάλυμνος
190
- expected: Kalymnos
191
- - source: Καρδίτσα
192
- expected: Karditsa
193
- - source: Καρπενήσι
194
- expected: Karpenēsi
195
- - source: Κάρυστος
196
- expected: Karystos
197
- - source: Καστελλόριζο
198
- expected: Kastellorizo
199
- - source: Καστοριά
200
- expected: Kastoria
201
- - source: Κατερίνη
202
- expected: Katerinē
203
- - source: Κάτω Αχαΐα
204
- expected: Katō Achaia
205
- - source: Κερατέα
206
- expected: Keratea
207
- - source: Κέρκυρα
208
- expected: Kerkyra
209
- - source: Κεφαλλονιά
210
- expected: Kephallonia
211
- - source: Κηφισιά
212
- expected: Kēphisia
213
- - source: Κιλκίς
214
- expected: Kilkis
215
- - source: Κοζάνη
216
- expected: Kozanē
217
- - source: Κολωνός
218
- expected: Kolōnos
219
- - source: Κομοτηνή
220
- expected: Komotēnē
221
- - source: Κόρινθος
222
- expected: Korinthos
223
- - source: Κορώνη
224
- expected: Korōnē
225
- - source: Κρανίδι
226
- expected: Kranidi
227
- - source: Κρέστενα
228
- expected: Krestena
229
- - source: Κρήτη
230
- expected: Krētē
231
- - source: Κύθηρα
232
- expected: Kythēra
233
- - source: Κυκλάδες
234
- expected: Kyklades
235
- - source: Κύμη
236
- expected: Kymē
237
- - source: Κυψέλη
238
- expected: Kypselē
239
- - source: Κως
240
- expected: Kōs
241
- - source: Λαγκαδάς
242
- expected: Lankadas
243
- - source: Λαμία
244
- expected: Lamia
245
- - source: Λάρισα
246
- expected: Larisa
247
- - source: Λαύριο
248
- expected: Laurio
249
- - source: Λέρος
250
- expected: Leros
251
- - source: Λέσβος
252
- expected: Lesvos
253
- - source: Λευκάδα
254
- expected: Leukada
255
- - source: Λήμνος
256
- expected: Lēmnos
257
- - source: Λιβαδειά
258
- expected: Livadeia
259
- - source: Μακεδονία
260
- expected: Makedonia
261
- - source: Μάνη
262
- expected: Manē
263
- - source: Μαραθώνας
264
- expected: Marathōnas
265
- - source: Μαρκόπουλο
266
- expected: Markopoulo
267
- - source: Μαρούσι
268
- expected: Marousi
269
- - source: Μέγαρα
270
- expected: Megara
271
- - source: Μεσολόγγι
272
- expected: Mesolongi
273
- - source: Μεταξουργείο
274
- expected: Metaxourgeio
275
- - source: Μέτσοβο
276
- expected: Metsovo
277
- - source: Μήλος
278
- expected: Mēlos
279
- - source: Μύκονος
280
- expected: Mykonos
281
- - source: Μυστράς
282
- expected: Mystras
283
- - source: Μυτιλήνη
284
- expected: Mytilēnē
285
- - source: Νάξος
286
- expected: Naxos
287
- - source: Νάουσα
288
- expected: Naousa
289
- - source: Ναύπακτος
290
- expected: Naupaktos
291
- - source: Ναύπλιο
292
- expected: Nauplio
293
- - source: Νέα Σμύρνη
294
- expected: Nea Smyrnē
295
- - source: Νίσυρος
296
- expected: Nisyros
297
- - source: Ξάνθη
298
- expected: Xanthē
299
- - source: Όλυμπος
300
- expected: Olympos
301
- - source: Παγκράτι
302
- expected: Pankrati
303
- - source: Παπάγου
304
- expected: Papagou
305
- - source: Πάρος
306
- expected: Paros
307
- - source: Πασαλιμάνι
308
- expected: Pasalimani
309
- - source: Πατήσια
310
- expected: Patēsia
311
- - source: Πάτμος
312
- expected: Patmos
313
- - source: Πάτρα
314
- expected: Patra
315
- - source: Πειραιάς
316
- expected: Peiraias
317
- - source: Πελοπόννησος
318
- expected: Peloponnēsos
319
- - source: Περιστέρι
320
- expected: Peristeri
321
- - source: Πεύκη
322
- expected: Peukē
323
- - source: Πήλιο
324
- expected: Pēlio
325
- - source: Πολύγυρος
326
- expected: Polygyros
327
- - source: Πόρος
328
- expected: Poros
329
- - source: Πρέβεζα
330
- expected: Preveza
331
- - source: Πτολεμαΐδα
332
- expected: Ptolemaida
333
- - source: Πύλος
334
- expected: Pylos
335
- - source: Πύργος
336
- expected: Pyrgos
337
- - source: Ρέθυμνο
338
- expected: Rethymno
339
- - source: Ρόδος
340
- expected: Rodos
341
- - source: Ρούμελη
342
- expected: Roumelē
343
- - source: Σαλαμίνα
344
- expected: Salamina
345
- - source: Σαμοθράκη
346
- expected: Samothrakē
347
- - source: Σάμος
348
- expected: Samos
349
- - source: Σαντορίνη
350
- expected: Santorinē
351
- - source: Σέρρες
352
- expected: Serres
353
- - source: Σίκινος
354
- expected: Sikinos
355
- - source: Σίφνος
356
- expected: Siphnos
357
- - source: Σκιάθος
358
- expected: Skiathos
359
- - source: Σκόπελος
360
- expected: Skopelos
361
- - source: Σούλι
362
- expected: Souli
363
- - source: Σπάρτη
364
- expected: Spartē
365
- - source: Στερεά Ελλάδα
366
- expected: Sterea Ellada
367
- - source: Στύρα
368
- expected: Styra
369
- - source: Σύμη
370
- expected: Symē
371
- - source: Σύρος
372
- expected: Syros
373
- - source: Σφακιά
374
- expected: Sphakia
375
- - source: Τήλος
376
- expected: Tēlos
377
- - source: Τήνος
378
- expected: Tēnos
379
- - source: Τρίκαλα
380
- expected: Trikala
381
- - source: Τρίπολη
382
- expected: Tripolē
383
- - source: Τσακωνιά
384
- expected: Tsakōnia
385
- - source: Ύδρα
386
- expected: Ydra
387
- - source: Φάληρο
388
- expected: Phalēro
389
- - source: Φλώρινα
390
- expected: Phlōrina
391
- - source: Φολέγανδρος
392
- expected: Pholegandros
393
- - source: Χάλκη
394
- expected: Chalkē
395
- - source: Χαλκίδα
396
- expected: Chalkida
397
- - source: Χαλάνδρι
398
- expected: Chalandri
399
- - source: Χαλκιδική
400
- expected: Chalkidikē
401
- - source: Χανιά
402
- expected: Chania
403
- - source: Χίος
404
- expected: Chios
405
- - source: Ψαρά
406
- expected: Psara
407
- - source: Αβάνα
408
- expected: Avana
409
- - source: Αγγλία
410
- expected: Anglia
411
- - source: Αϊβαλί
412
- expected: Aivali
413
- - source: Αλεξάνδρεια
414
- expected: Alexandreia
415
- - source: Άμστερνταμ
416
- expected: Amsterntam
417
- - source: Βαυαρία
418
- expected: Vauaria
419
- - source: Βενετία
420
- expected: Venetia
421
- - source: Βερολίνο
422
- expected: Verolino
423
- - source: Βερόνα
424
- expected: Verona
425
- - source: Βιέννη
426
- expected: Viennē
427
- - source: Γένοβα
428
- expected: Genova
429
- - source: Δουβλίνο
430
- expected: Douvlino
431
- - source: Καλαβρία
432
- expected: Kalavria
433
- - source: Καλιφόρνια
434
- expected: Kaliphornia
435
- - source: Καύκασος
436
- expected: Kaukasos
437
- - source: Κονγκό
438
- expected: Konnko
439
- - source: Κορσική
440
- expected: Korsikē
441
- - source: Κουρδιστάν
442
- expected: Kourdistan
443
- - source: Κωνσταντινούπολη
444
- expected: Kōnstantinoupolē
445
- - source: Κατεχόμενη Κύπρος
446
- expected: Katechomenē Kypros
447
- - source: Λαπωνία
448
- expected: Lapōnia
449
- - source: Λευκωσία
450
- expected: Leukōsia
451
- - source: Λιβόρνο
452
- expected: Livorno
453
- - source: Λονδίνο
454
- expected: Londino
455
- - source: Λυών
456
- expected: Lyōn
457
- - source: Μάλαγα
458
- expected: Malaga
459
- - source: Μασσαλία
460
- expected: Massalia
461
- - source: Μικρονησία
462
- expected: Mikronēsia
463
- - source: Μιλάνο
464
- expected: Milano
465
- - source: Μόσχα
466
- expected: Moscha
467
- - source: Μπολόνια
468
- expected: Bolonia
469
- - source: Νάπολη
470
- expected: Napolē
471
- - source: Νταγκεστάν
472
- expected: Ḏankestan
473
- - source: Νέα Υόρκη
474
- expected: Nea Yorkē
475
- - source: Οξφόρδη
476
- expected: Oxphordē
477
- - source: Ουαλία
478
- expected: Oualia
479
- - source: Παρίσι
480
- expected: Parisi
481
- - source: Πάφος
482
- expected: Paphos
483
- - source: Πολυνησία
484
- expected: Polynēsia
485
- - source: Ρώμη
486
- expected: Rōmē
487
- - source: Σαμάρεια
488
- expected: Samareia
489
- - source: Σικελία
490
- expected: Sikelia
491
- - source: Σκανδιναβία
492
- expected: Skandinavia
493
- - source: Σκόπια
494
- expected: Skopia
495
- - source: Σκωτία
496
- expected: Skōtia
497
- - source: Σμύρνη
498
- expected: Smyrnē
499
- - source: Ταϊτή
500
- expected: Taitē
501
- - source: Ταταρστάν
502
- expected: Tatarstan
503
- - source: Τζαμάικα
504
- expected: Tzamaika
505
- - source: Τηλλυρία
506
- expected: Tēllyria
507
- - source: Τιρόλο
508
- expected: Tirolo
509
- - source: Τορίνο
510
- expected: Torino
511
- - source: Φανάρι
512
- expected: Phanari
513
- - source: Φλωρεντία
514
- expected: Phlōrentia
515
- - source: Χαβάη
516
- expected: Chavaē
517
- - source: Χονγκ Κονγκ
518
- expected: Chonnk Konnk
519
-
520
- map:
521
- # https://en.wikipedia.org/wiki/Romanization_of_Greek
522
- rules:
523
- - pattern: (?<=[ΑαΕεΟοΗηΩω])\u03A5 # Υ (after Α, Ε, Ο, Η, Ω)
524
- result: U
525
- - pattern: (?<=[ΑαΕεΟοΗηΩω])\u03C5 # υ (after Α, Ε, Ο, Η, Ω)
526
- result: u
527
- - pattern: (?<=[ΑαΕεΟοΗηΩω])\u03CD # ύ (after Α, Ε, Ο, Η, Ω)
528
- result: u
529
- - pattern: \u03A5(?=[Ιιί]) # Υ (before Ι)
530
- result: U
531
- - pattern: \u03C5(?=[Ιιί]) # Υ (before Ι)
532
- result: u
533
- - pattern: \u0393(?=[γΓκΚξΞχΧ]) # Γ (before Γ, Κ, Ξ, Χ)
534
- result: N
535
- - pattern: \u03B3(?=[γΓκΚξΞχΧ]) # γ (before Γ, Κ, Ξ, Χ)
536
- result: n
537
- - pattern: (?<=\b)\u039D\u03A4 # ΝΤ
538
- result: Ḏ
539
- - pattern: (?<=\b)\u039D\u03C4 # Ντ
540
- result: Ḏ
541
- - pattern: (?<=\b)\u03BD\u03C4 # ντ
542
- result: ḏ
543
- - pattern: (?<=\b)\u039C\u03A0 # ΜΠ
544
- result: B
545
- - pattern: (?<=\b)\u039C\u03C0 # Μπ
546
- result: B
547
- - pattern: (?<=\b)\u03BC\u03C0 # μπ
548
- result: b
549
- - pattern: \u037E # ;
550
- result: "?"
551
- - pattern: \u003B # ;
552
- result: "?"
553
-
554
- characters:
555
- "\u0027": ""
556
- "\u0386": "A" # Ά
557
- "\u0391": "A" # Α
558
- "\u0392": "V" # Β
559
- "\u0393": "G" # Γ
560
- "\u0394": "D" # Δ
561
- "\u0395": "E" # Ε
562
- "\u0396": "Z" # Ζ
563
- "\u0397": "Ē" # Η
564
- "\u0398": "Th" # Θ
565
- "\u0399": "I" # Ι
566
- "\u039A": "K" # Κ
567
- "\u039B": "L" # Λ
568
- "\u039C": "M" # Μ
569
- "\u039D": "N" # Ν
570
- "\u039E": "X" # Ξ
571
- "\u039F": "O" # Ο
572
- "\u03A0": "P" # Π
573
- "\u03A1": "R" # Ρ
574
- "\u03A3": "S" # Σ
575
- "\u03A4": "T" # Τ
576
- "\u03A5": "Y" # Υ
577
- "\u03A6": "Ph" # Φ
578
- "\u03A7": "Ch" # Χ
579
- "\u03A8": "Ps" # Ψ
580
- "\u03A9": "Ō" # Ω
581
- "\u0388": "E" # Έ
582
- "\u0389": "Ē" # Ή
583
- "\u038A": "I" # Ί
584
- "\u038C": "O" # Ό
585
- "\u038E": "Y" # Ύ
586
- "\u038F": "Ō" # Ώ
587
- "\u03AA": "I" # Ϊ
588
- "\u03AB": "Y" # Ϋ
589
-
590
- "\u03AC": "a" # ά
591
- "\u03B1": "a" # α
592
- "\u03B2": "v" # β
593
- "\u03B3": "g" # γ
594
- "\u03B4": "d" # δ
595
- "\u03B5": "e" # ε
596
- "\u03B6": "z" # ζ
597
- "\u03B7": "ē" # η
598
- "\u03B8": "th" # θ
599
- "\u03B9": "i" # ι
600
- "\u03BA": "k" # κ
601
- "\u03BB": "l" # λ
602
- "\u03BC": "m" # μ
603
- "\u03BD": "n" # ν
604
- "\u03BE": "x" # ξ
605
- "\u03BF": "o" # ο
606
- "\u03C0": "p" # π
607
- "\u03C1": "r" # ρ
608
- "\u03C3": "s" # σ
609
- "\u03C2": "s" # ς
610
- "\u03C4": "t" # τ
611
- "\u03C5": "y" # υ
612
- "\u03C6": "ph" # φ
613
- "\u03C7": "ch" # χ
614
- "\u03C8": "ps" # ψ
615
- "\u03C9": "ō" # ω
616
- "\u03AD": "e" # έ
617
- "\u03AE": "ē" # ή
618
- "\u03AF": "i" # ί
619
- "\u03CC": "o" # ό
620
- "\u03CD": "y" # ύ
621
- "\u03CE": "ō" # ώ
622
- "\u03CA": "i" # ϊ
623
- "\u03CB": "y" # ϋ
624
- "\u0390": "i" # ΐ
625
- "\u03B0": "y" # ΰ
626
-
627
- "\u0387": ";" # ·
628
- "\u00B7": ";" # ·