interscript 0.1.2 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (261) hide show
  1. checksums.yaml +4 -4
  2. data/README.adoc +250 -17
  3. data/lib/g2pwrapper.py +34 -0
  4. data/lib/interscript.rb +142 -20
  5. data/lib/interscript/command.rb +28 -0
  6. data/lib/interscript/fs.rb +69 -0
  7. data/lib/interscript/mapping.rb +142 -0
  8. data/lib/interscript/opal.rb +57 -0
  9. data/lib/interscript/opal/entrypoint.rb +12 -0
  10. data/lib/interscript/opal/map_translate.rb +7 -0
  11. data/lib/interscript/opal/maps.js.erb +10 -0
  12. data/lib/interscript/version.rb +1 -1
  13. data/lib/model-7 +0 -0
  14. data/lib/tha-pt-b-7 +0 -0
  15. data/maps/acadsin-zho-Hani-Latn-2002.yaml +38916 -0
  16. data/maps/alalc-amh-Ethi-Latn-1997.yaml +513 -0
  17. data/maps/alalc-amh-Ethi-Latn-2011.yaml +138 -0
  18. data/maps/alalc-ara-Arab-Latn-1997.yaml +1287 -0
  19. data/maps/alalc-asm-Deva-Latn-1997.yaml +165 -0
  20. data/maps/alalc-asm-Deva-Latn-2012.yaml +40 -0
  21. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +145 -0
  22. data/maps/alalc-bel-Cyrl-Latn-1997.yaml +129 -0
  23. data/maps/alalc-ben-Beng-Latn-2017.yaml +130 -0
  24. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +98 -0
  25. data/maps/alalc-ell-Grek-Latn-1997.yaml +628 -0
  26. data/maps/alalc-ell-Grek-Latn-2010.yaml +626 -0
  27. data/maps/alalc-guj-Gujr-Latn-1997.yaml +266 -0
  28. data/maps/alalc-guj-Gujr-Latn-2011.yaml +64 -0
  29. data/maps/alalc-hin-Deva-Latn-1997.yaml +211 -0
  30. data/maps/alalc-hin-Deva-Latn-2011.yaml +47 -0
  31. data/maps/alalc-kat-Geok-Latn-1997.yaml +111 -0
  32. data/maps/alalc-kat-Geor-Latn-1997.yaml +150 -0
  33. data/maps/alalc-kor-Hang-Latn-1997.yaml +98 -0
  34. data/maps/alalc-mal-Mlym-Latn-1997.yaml +303 -0
  35. data/maps/alalc-mal-Mlym-Latn-2012.yaml +73 -0
  36. data/maps/alalc-mar-Deva-Latn-1997.yaml +189 -0
  37. data/maps/alalc-mar-Deva-Latn-2011.yaml +45 -0
  38. data/maps/alalc-mkd-Cyrl-Latn-1997.yaml +114 -0
  39. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +103 -0
  40. data/maps/alalc-mon-Cyrl-Latn-1997.yaml +220 -0
  41. data/maps/alalc-pan-Guru-Latn-1997.yaml +256 -0
  42. data/maps/alalc-pan-Guru-Latn-2011.yaml +78 -0
  43. data/maps/alalc-per-Arab-Latn-1997.yaml +375 -0
  44. data/maps/alalc-pli-Deva-Latn-2012.yaml +144 -0
  45. data/maps/alalc-pra-Deva-Latn-2012.yaml +47 -0
  46. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +225 -0
  47. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +162 -0
  48. data/maps/alalc-san-Deva-Latn-2012.yaml +172 -0
  49. data/maps/alalc-sin-Sinh-Latn-1997.yaml +292 -0
  50. data/maps/alalc-sin-Sinh-Latn-2011.yaml +71 -0
  51. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +118 -0
  52. data/maps/alalc-srp-Cyrl-Latn-2013.yaml +135 -0
  53. data/maps/alalc-tam-Taml-Latn-1997.yaml +62 -0
  54. data/maps/alalc-tam-Taml-Latn-2011.yaml +58 -0
  55. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +145 -0
  56. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +16 -0
  57. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +283 -0
  58. data/maps/{bas-rus-Cyrl-Latn-bss.yaml → bas-rus-Cyrl-Latn-2017-bss.yaml} +58 -33
  59. data/maps/{bas-rus-Cyrl-Latn-oss.yaml → bas-rus-Cyrl-Latn-2017-oss.yaml} +55 -35
  60. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +292 -0
  61. data/maps/bgn-kor-Hang-Latn-1943.yaml +35 -0
  62. data/maps/bgn-kor-Kore-Latn-1943.yaml +31 -0
  63. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +208 -0
  64. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +208 -0
  65. data/maps/bgnpcgn-amh-Ethi-Latn-1967.yaml +532 -0
  66. data/maps/bgnpcgn-ara-Arab-Latn-1956.yaml +596 -0
  67. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +2 -3
  68. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +104 -0
  69. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +188 -0
  70. data/maps/bgnpcgn-bel-Cyrl-Latn-1979.yaml +289 -0
  71. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +119 -0
  72. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +15 -65
  73. data/maps/bgnpcgn-che-Cyrl-Latn-2008.yaml +184 -0
  74. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +705 -0
  75. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +23 -0
  76. data/maps/{bgnpcgn-per-Arab-Latn-1956.yaml → bgnpcgn-fas-Arab-Latn-1956.yaml} +5 -2
  77. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +257 -0
  78. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +131 -0
  79. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +42 -0
  80. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +253 -0
  81. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +48 -0
  82. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +48 -0
  83. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +163 -0
  84. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +190 -0
  85. data/maps/bgnpcgn-mon-Cyrl-Latn-1964.yaml +223 -0
  86. data/maps/bgnpcgn-nep-Deva-Latn-2011.yaml +230 -0
  87. data/maps/bgnpcgn-per-Arab-Latn-1958.yaml +336 -0
  88. data/maps/bgnpcgn-prs-Arab-Latn-2007.yaml +639 -0
  89. data/maps/bgnpcgn-prs-Arab-Latn-yaghoubi.yaml +459 -0
  90. data/maps/bgnpcgn-rue-Cyrl-Latn-2016.yaml +168 -0
  91. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +150 -65
  92. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +170 -0
  93. data/maps/bgnpcgn-tat-Cyrl-Latn-2007.yaml +220 -0
  94. data/maps/bgnpcgn-tgk-Cyrl-Latn-1994.yaml +240 -0
  95. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +80 -4
  96. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +119 -0
  97. data/maps/bgnpcgn-uzb-Cyrl-Latn-1979.yaml +127 -0
  98. data/maps/bgnpcgn-uzb-Cyrl-Latn-2000.yaml +82 -0
  99. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +7456 -0
  100. data/maps/bis-asm-Beng-Latn-13194-1991.yaml +159 -0
  101. data/maps/bis-ben-Beng-Latn-13194-1991.yaml +156 -0
  102. data/maps/bis-dev-Deva-Latn-13194-1991.yaml +184 -0
  103. data/maps/bis-guj-Gujr-Latn-13194-1991.yaml +181 -0
  104. data/maps/bis-knd-Knda-Latn-13194-1991.yaml +173 -0
  105. data/maps/bis-mlm-Mlym-Latn-13194-1991.yaml +176 -0
  106. data/maps/bis-ori-Orya-Latn-13194-1991.yaml +160 -0
  107. data/maps/bis-pnj-Guru-Latn-13194-1991.yaml +175 -0
  108. data/maps/bis-tel-Telu-Latn-13194-1991.yaml +170 -0
  109. data/maps/bis-tml-Taml-Latn-13194-1991.yaml +155 -0
  110. data/maps/by-bel-Cyrl-Latn-1998.yaml +172 -0
  111. data/maps/by-bel-Cyrl-Latn-2007.yaml +115 -0
  112. data/maps/din-grc-Grek-Latn-31634-2011-t1.yaml +899 -0
  113. data/maps/din-hin-Deva-Latn-33904-2018.yaml +100 -0
  114. data/maps/din-kat-Geor-Latn-32707-2010.yaml +145 -0
  115. data/maps/din-mar-Deva-Latn-33904-2018.yaml +84 -0
  116. data/maps/din-nep-Deva-Latn-33904-2018.yaml +119 -0
  117. data/maps/din-pli-Deva-Latn-33904-2018.yaml +75 -0
  118. data/maps/din-pra-Deva-Latn-33904-2018.yaml +63 -0
  119. data/maps/din-san-Deva-Latn-33904-2018.yaml +338 -0
  120. data/maps/din-tam-Taml-Latn-33903-2016.yaml +213 -0
  121. data/maps/dos-nep-Deva-Latn-1997.yaml +47 -0
  122. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +684 -0
  123. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +680 -0
  124. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +19 -0
  125. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +31 -0
  126. data/maps/ggg-kat-Geor-Latn-2002.yaml +92 -0
  127. data/maps/gki-bel-Cyrl-Latn-1992.yaml +33 -0
  128. data/maps/gki-bel-Cyrl-Latn-2000.yaml +201 -0
  129. data/maps/gost-rus-Cyrl-Latn-16876-71-1983.yaml +190 -0
  130. data/maps/gost-rus-Cyrl-Latn-7.79-2000-2002.yaml +157 -0
  131. data/maps/hk-yue-Hani-Latn-1888.yaml +38497 -0
  132. data/maps/icao-bel-Cyrl-Latn-9303.yaml +109 -98
  133. data/maps/icao-bul-Cyrl-Latn-9303.yaml +2 -7
  134. data/maps/{icao-per-Arab-Latn-9303.yaml → icao-fas-Arab-Latn-9303.yaml} +6 -8
  135. data/maps/icao-heb-Hebr-Latn-9303.yaml +119 -125
  136. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +2 -3
  137. data/maps/icao-rus-Cyrl-Latn-9303.yaml +2 -4
  138. data/maps/icao-srp-Cyrl-Latn-9303.yaml +2 -3
  139. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +2 -4
  140. data/maps/iso-ara-Arab-Latn-233-1984.yaml +323 -0
  141. data/maps/iso-asm-Beng-Latn-15919-2001.yaml +75 -0
  142. data/maps/iso-ben-Beng-Latn-15919-2001.yaml +175 -0
  143. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +613 -0
  144. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +44 -0
  145. data/maps/iso-guj-Gujr-Latn-15919-2001.yaml +220 -0
  146. data/maps/iso-hin-Deva-Latn-15919-2001.yaml +87 -0
  147. data/maps/iso-inc-Deva-Latn-15919-2001.yaml +61 -0
  148. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +66 -0
  149. data/maps/iso-kan-Knda-Latn-15919-2001.yaml +220 -0
  150. data/maps/iso-kat-Geor-Latn-9984-1996.yaml +145 -0
  151. data/maps/iso-kor-Hang-Latn-1996-method1.yaml +240 -0
  152. data/maps/iso-kor-Hang-Latn-1996-method2.yaml +226 -0
  153. data/maps/iso-mal-Mlym-Latn-15919-2001.yaml +281 -0
  154. data/maps/iso-mar-Deva-Latn-15919-2001.yaml +75 -0
  155. data/maps/iso-nep-Deva-Latn-15919-2001.yaml +87 -0
  156. data/maps/iso-ori-Orya-Latn-15919-2001.yaml +193 -0
  157. data/maps/iso-pan-Guru-Latn-15919-2001.yaml +222 -0
  158. data/maps/iso-pli-Beng-Latn-15919-2001.yaml +73 -0
  159. data/maps/iso-pli-Deva-Latn-15919-2001.yaml +74 -0
  160. data/maps/iso-pli-Sinh-Latn-15919-2001.yaml +219 -0
  161. data/maps/iso-pli-Thai-Latn-15919-2001.yaml +55 -0
  162. data/maps/iso-pra-Deva-Latn-15919-2001.yaml +59 -0
  163. data/maps/iso-prs-Arab-Latn-233-3-1999.yaml +366 -0
  164. data/maps/{iso-rus-Cyrl-Latn-iso9.yaml → iso-rus-Cyrl-Latn-9-1995.yaml} +4 -6
  165. data/maps/iso-san-Deva-Latn-15919-2001.yaml +220 -0
  166. data/maps/iso-tam-Taml-Latn-15919-2001.yaml +159 -0
  167. data/maps/iso-tel-Telu-Latn-15919-2001.yaml +220 -0
  168. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +109 -0
  169. data/maps/kp-kor-Hang-Latn-2002.yaml +909 -0
  170. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +44820 -0
  171. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +411 -0
  172. data/maps/mns-mon-Cyrl-Latn-5217-2012.yaml +163 -0
  173. data/maps/mns-mon-Latn-Cyrl-5217-2012.yaml +200 -0
  174. data/maps/moct-kor-Hang-Latn-2000.yaml +807 -0
  175. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +541 -0
  176. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +225 -0
  177. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +63 -0
  178. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +109 -0
  179. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +37 -0
  180. data/maps/odni-ara-Arab-Latn-2015.yaml +425 -0
  181. data/maps/odni-aze-Cyrl-Latn-2015.yaml +144 -0
  182. data/maps/odni-bel-Cyrl-Latn-2015.yaml +148 -0
  183. data/maps/odni-bul-Cyrl-Latn-2015.yaml +96 -0
  184. data/maps/odni-che-Cyrl-Latn-2015.yaml +169 -0
  185. data/maps/odni-fas-Arab-Latn-2015.yaml +406 -0
  186. data/maps/odni-hin-Deva-Latn-2015.yaml +258 -0
  187. data/maps/odni-kat-Geor-Latn-2015.yaml +87 -0
  188. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +148 -0
  189. data/maps/odni-kir-Cyrl-Latn-2015.yaml +136 -0
  190. data/maps/odni-kor-Hang-Latn-2015.yaml +375 -0
  191. data/maps/odni-mkd-Cyrl-Latn-2015.yaml +122 -0
  192. data/maps/odni-per-Arab-Latn-2015.yaml +228 -0
  193. data/maps/odni-rus-Cyrl-Latn-2015.yaml +77 -0
  194. data/maps/odni-srp-Cyrl-Latn-2015.yaml +129 -0
  195. data/maps/odni-tat-Cyrl-Latn-2015.yaml +142 -0
  196. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +148 -0
  197. data/maps/odni-uig-Cyrl-Latn-2015.yaml +138 -0
  198. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +157 -0
  199. data/maps/odni-urd-Arab-Latn-2015.yaml +221 -0
  200. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +166 -0
  201. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +90 -0
  202. data/maps/royin-tha-Thai-Latn-1968.yaml +183 -0
  203. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +180 -0
  204. data/maps/royin-tha-Thai-Latn-1999.yaml +80 -0
  205. data/maps/{cn-chn-Hans-Latn-pinyin.yaml → sac-zho-Hans-Latn-1979.yaml} +11 -8
  206. data/maps/sasm-mon-Mong-Latn-general-1978.yaml +389 -0
  207. data/maps/sasm-mon-Mong-Latn-phonetic-1978.yaml +354 -0
  208. data/maps/ses-ara-Arab-Latn-1930.yaml +283 -0
  209. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +222 -0
  210. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +197 -0
  211. data/maps/ua-ukr-Cyrl-Latn-2007.yaml +75 -0
  212. data/maps/ua-ukr-Cyrl-Latn-2010.yaml +192 -0
  213. data/maps/un-amh-Ethi-Latn-2016.yaml +602 -0
  214. data/maps/un-ara-Arab-Latn-1971.yaml +139 -0
  215. data/maps/un-ara-Arab-Latn-1972.yaml +159 -0
  216. data/maps/un-ara-Arab-Latn-2017.yaml +420 -0
  217. data/maps/un-bel-Cyrl-Latn-2007.yaml +114 -0
  218. data/maps/un-ben-Beng-Latn-2016.yaml +534 -0
  219. data/maps/un-ell-Grek-Latn-1987-phonetic.yaml +780 -0
  220. data/maps/un-ell-Grek-Latn-1987-tl.yaml +31 -0
  221. data/maps/un-ell-Grek-Latn-1987-ts.yaml +19 -0
  222. data/maps/un-hin-Deva-Latn-2016.yaml +222 -0
  223. data/maps/un-mar-Deva-Latn-2016.yaml +91 -0
  224. data/maps/un-mon-Mong-Latn-general-2013.yaml +264 -0
  225. data/maps/un-mon-Mong-Latn-phonetic-2013.yaml +264 -0
  226. data/maps/un-nep-Deva-Latn-1972.yaml +350 -0
  227. data/maps/un-nep-Deva-Latn-2013.yaml +74 -0
  228. data/maps/un-rus-Cyrl-Latn-1987.yaml +166 -0
  229. data/maps/un-ukr-Cyrl-Latn-1998.yaml +53 -0
  230. data/maps/un-ukr-Cyrl-Latn-2012.yaml +162 -0
  231. data/maps/var-hin-Deva-Latn-hunterian-1872.yaml +221 -0
  232. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +406 -0
  233. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +386 -0
  234. data/maps/var-kor-Hang-Hang-jamo.yaml +11193 -0
  235. data/maps/var-kor-Hang-Latn-mr-1939.yaml +1054 -0
  236. data/maps/var-kor-Kore-Hang-2013.yaml +59754 -0
  237. data/maps/var-kor-Kore-Latn-mr-1939.yaml +36 -0
  238. data/maps/var-mar-Deva-Latn-hunterian-1872.yaml +43 -0
  239. data/maps/var-mon-Mong-Latn-1930.yaml +102 -0
  240. data/maps/var-mon-Mong-Latn-lessing.yaml +272 -0
  241. data/maps/var-mon-Mong-Latn-vpmc.yaml +274 -0
  242. data/maps/var-pra-Deva-Latn-iast-1912.yaml +30 -0
  243. data/maps/var-san-Deva-Latn-iast-1912.yaml +149 -0
  244. data/maps/var-tha-Thai-Thai-phonemic.yaml +59 -0
  245. data/maps/var-tha-Thai-Zsym-ipa.yaml +301 -0
  246. data/maps/var-zho-Hani-Latn-wd-1979.yaml +38912 -0
  247. data/spec/interscript/filenames_spec.rb +384 -0
  248. data/spec/interscript/mapping_spec.rb +42 -0
  249. data/spec/interscript_spec.rb +23 -5
  250. data/spec/spec_helper.rb +3 -1
  251. metadata +364 -34
  252. data/bin/interscript +0 -20
  253. data/bin/rspec +0 -29
  254. data/maps/bgnpcgn-chn-Hans-Latn-pinyin.yaml +0 -7503
  255. data/maps/historic-jpn-Hrkt-Latn-hepburn.yaml +0 -336
  256. data/maps/icao-gre-Grek-Latn-9303.yaml +0 -101
  257. data/maps/mext-jpn-Hrkt-Latn-hepburn.yaml +0 -330
  258. data/maps/mext-jpn-Hrkt-Latn-kunrei.yaml +0 -308
  259. data/maps/un-jpn-Hrkt-Latn-hepburn.yaml +0 -313
  260. data/maps/un-jpn-Hrkt-Latn-kunrei.yaml +0 -354
  261. data/maps/un-mon-Mong-Latn-2013.yaml +0 -80
@@ -0,0 +1,175 @@
1
+ ---
2
+ authority_id: iso
3
+ id: 15919-2001
4
+ language: iso-639-2:ben
5
+ source_script: Beng
6
+ destination_script: Latn
7
+ name: "Information and documentation — Transliteration of Devanagari and related Indic scripts into Latin characters"
8
+ url: https://www.chatranjali.fr/Scripts/Standards/ISO15919.pdf
9
+ creation_date: 2001
10
+ adoption_date: 2001
11
+ description: |
12
+ Script conversion is often required for documents such as historical and literary texts, geographical texts (including
13
+ maps and atlases), bibliographies, catalogues, lists and passports (and other identification documents).
14
+
15
+ Text in Devanagari script or other Indic scripts sometimes needs to be shown in Latin script, where users, or
16
+ equipment that they are using, cannot read or write the text
17
+
18
+ This International Standard applies to transliteration of Devanagari, and to Indic scripts related to Devanagari,
19
+ independent of the period in which it is or was used.
20
+
21
+ notes:
22
+
23
+ - All transliterations made using this International Standard shall be case-insensitive.
24
+ - Inherent a with a consonant shall always be transliterated.
25
+ - anusvara (including Vedic anusvara) shall be transliterated as ṁ
26
+ - candrabindu shall be transliterated as m̐
27
+ - When m̐, ṃ or ṁ are associated with a vowel, they shall be placed after the vowel. When m̐ is associated
28
+ with a semivowel, it shall be placed before the semivowel.
29
+ - Latin punctuation signs and Hindu-Arabic numerals shall remain unchanged in transliteration.
30
+ Indic punctuation is outside the scope of this International Standard.
31
+ - The Vedic accent Udatta shall be transliterated as an acute accent over the transliterated vowel, and the
32
+ independent Svarita as a grave accent over the transliterated vowel. In the case of the digraphs ai, au, the accent
33
+ shall be attached to the second vowel.
34
+ - |
35
+ A colon: before a Latin character shall be used to resolve ambiguity. Some normative cases are as
36
+ follows.
37
+ - :’ for avagraha in modern text. (The apostrophe in modern text remains unchanged in accordance with previous rule.
38
+ - Vowel hiatus, not digraph transliteration of diphthongs; as in Bengali ba:i (not bai), “book”.
39
+ - Unexpected use of secondary ya/ẏa , as in Bengali r:yāpāra , English “wrapper” (using full r); a:yā (not ayā ).
40
+ - If a character in an Indic script is defined in such a way as to be equivalent to another character in any
41
+ script, where the second character has a transliteration in this International Standard, then the first character shall
42
+ be transliterated in the same way as the second character.
43
+ - Where it is desired to show the Vedic accent Anudatta, it should be transliterated as an underscore. In the case of
44
+ the digraphs ai, au, both Latin vowels should be underscored.
45
+ Where word boundaries are not shown in the original text (as happens commonly in Sanskrit) and a word ends in a
46
+ consonant, the transliteration should show word division by a space; but when phonological processes result in two
47
+ words sharing a common vowel, no attempt should be made to separate them. This will require a good knowledge
48
+ of the language in question.
49
+
50
+
51
+ tests:
52
+ - source: "আগুয়েরোর হাঁটুর চোট"
53
+ expected: "āgauẏaeraora haām̐ṭaura caoṭa"
54
+ - source: "তঅস্ত্রোপচারের আশ্রয় নিতে হবে এ তারকাকে, তাই দলে জায়গা পাননি"
55
+ expected: "taasataraopacaāraera āśaraẏa naitae habae e taārakaākae, taāi dalae jaāẏagaā paānanai"
56
+ - source: "ওদিকে সদ্য করোনা থেকে ফিরে এসে দাপটের সঙ্গে পিএসজির হয়ে খেলে যাওয়া দি মারিয়া কেন ডাক পাননি, কেউ জানে না"
57
+ expected: "odaikae sadaya karaonaā thaekae phairae esae daāpaṭaera saṅagae paiesajaira haẏae khaelae yaāoẏaā dai maāraiẏaā kaena ḍaāka paānanai, kaeu jaānae naā"
58
+ - source: "তিন বিভাগে শনিবার থেকে ভারী বৃষ্টি, কমবে তাপমাত্রা"
59
+ expected: "taina baibhaāgae śanaibaāra thaekae bhaāraī baṛṣaṭai, kamabae taāpamaātaraā"
60
+ - source: "ফেসবুকে সময় নষ্ট না করে মায়ের সঙ্গে আড্ডা ভালোবাসেন তিনি"
61
+ expected: "phaesabaukae samaẏa naṣaṭa naā karae maāẏaera saṅagae āḍaḍaā bhaālaobaāsaena tainai"
62
+ - source: "এখনই আর্জেন্টিনার জার্সি খুলো না—দি মারিয়াকে কোচ"
63
+ expected: "ekhanai ārajaenaṭainaāra jaārasai khaulao naā—dai maāraiẏaākae kaoca"
64
+ - source: "প্রিয় তারকার আওয়াজ শুনে কোমা থেকে জেগে উঠলেন তিনি"
65
+ expected: "paraiẏa taārakaāra āoẏaāja śaunae kaomaā thaekae jaegae uṭhalaena tainai"
66
+ - source: "সুয়ারেজকে ‘বের করে দেওয়া’য় বার্সাকে ধুয়ে দিলেন মেসি"
67
+ expected: "sauẏaāraejakae ‘baera karae daeoẏaā’ẏa baārasaākae dhauẏae dailaena maesai"
68
+ - source: "আমি না থাকলে আর্জেন্টিনা দলে মেসিরও থাকার যোগ্যতা নেই"
69
+ expected: "āmai naā thaākalae ārajaenaṭainaā dalae maesairao thaākaāra yaogayataā naei"
70
+ - source: "তবে, নিয়মিত মুখগুলোর মধ্যে দলে নেই মেসির দুই ‘প্রিয় বন্ধু’ পিএসজির মিডফিল্ডার আনহেল দি মারিয়া ও ম্যানচেস্টার সিটির সার্জিও আগুয়েরো"
71
+ expected: "tabae, naiẏamaita maukhagaulaora madhayae dalae naei maesaira daui ‘paraiẏa banadhau’ paiesajaira maiḍaphailaḍaāra ānahaela dai maāraiẏaā o mayaānacaesaṭaāra saiṭaira saārajaio āgauẏaerao"
72
+
73
+ map:
74
+ characters:
75
+
76
+ #vowel characters
77
+
78
+ 'অ': 'a'
79
+ 'আ': 'ā'
80
+ 'ই': 'i'
81
+ 'ঈ': 'ī'
82
+ 'উ': 'u'
83
+ 'ঊ': 'ū'
84
+ 'ঋ': 'ṛ'
85
+ 'ৠ': 'ṝ'
86
+ 'ঌ': 'ḻ'
87
+ 'ৡ': 'ḹ'
88
+ 'এ': 'e'
89
+ 'ঐ': 'ai'
90
+ 'ও': 'o'
91
+ 'ঔ': 'au'
92
+
93
+ 'া': 'ā'
94
+ 'ি': 'i'
95
+ 'ী': 'ī'
96
+ 'ু': 'u'
97
+ 'ূ': 'ū'
98
+ 'ৃ': 'ṛ'
99
+ 'ৄ': 'ṝ'
100
+ 'ৢ': 'ḻ'
101
+ 'ৣ': 'ḹ'
102
+ 'ে': 'e'
103
+ 'ৈ': 'ai'
104
+ 'ো': 'o'
105
+ 'ৌ': 'au'
106
+
107
+
108
+ 'ং': 'ṁ'
109
+ 'ঁ': 'm̐'
110
+ 'ঃ': 'ḥ'
111
+
112
+ # Consonant characters
113
+
114
+ 'ক': 'ka'
115
+ 'খ': 'kha'
116
+ 'গ': 'ga'
117
+ 'ঘ': 'gha'
118
+ 'ঙ': 'ṅa'
119
+ 'চ': 'ca'
120
+ 'ছ': 'cha'
121
+ 'জ': 'ja'
122
+ 'ঝ': 'jha'
123
+ 'ঞ': 'ña'
124
+ 'ট': 'ṭa'
125
+ 'ঠ': 'ṭha'
126
+ 'ড': 'ḍa'
127
+ 'ঢ': 'ḍha'
128
+ 'ণ': 'ṇa'
129
+ 'ত': 'ta'
130
+ 'থ': 'tha'
131
+ 'দ': 'da'
132
+ 'ধ': 'dha'
133
+ 'ন': 'na'
134
+ 'প': 'pa'
135
+ 'ফ': 'pha'
136
+ 'ব': 'ba'
137
+ 'ভ': 'bha'
138
+ 'ম': 'ma'
139
+ 'য': 'ya'
140
+ 'র': 'ra'
141
+ 'ল': 'la'
142
+ 'শ': 'śa'
143
+ 'ষ': 'ṣa'
144
+ 'স': 'sa'
145
+ 'হ': 'ha'
146
+
147
+ 'ড়': 'ṙa'
148
+ 'ঢ়': 'ṙha'
149
+ 'য়': 'ẏa'
150
+
151
+
152
+ # for semivowel rule no. 5
153
+
154
+ 'যঁ': 'm̐ya'
155
+ 'রঁ': 'm̐ra'
156
+ 'লঁ': 'm̐la'
157
+ 'বঁ': 'm̐va'
158
+
159
+ 'ৎ': 't'
160
+ '্': ''
161
+
162
+
163
+ # numbers
164
+
165
+ '১': '1'
166
+ '২': '2'
167
+ '৩': '3'
168
+ '৪': '4'
169
+ '৫': '5'
170
+ '৬': '6'
171
+ '৭': '7'
172
+ '৮': '8'
173
+ '৯': '9'
174
+ '০': '0'
175
+
@@ -0,0 +1,613 @@
1
+ ---
2
+ authority_id: iso
3
+ id: 1997
4
+ language: iso-639-2:ell
5
+ source_script: Grek
6
+ destination_script: Latn
7
+ name: "ISO 843:1997 Information and documentation — Conversion of Greek characters into Latin characters"
8
+ url: https://www.iso.org/standard/5215.html
9
+ creation_date: 1997
10
+ description: |
11
+ Establishes a system for the transliteration and/or transcription
12
+ of Greek characters into Latin characters. This system applies to
13
+ the characters of the Greek script, independent of the period in
14
+ which it is or was used, i.e. scripts from all periods of Classic
15
+ or Modern Greek. Replaces ISO/R 843.
16
+
17
+ note:
18
+ - Transliteration of Greek into Latin: Type 1, Clause 3 Table 1
19
+ - Equivalent to elot-ell-Grek-Latn-743-2001-ts, the transliteration table of ELOT 743:2001
20
+ - Assuming that ou, au, eu transliterations are only intended for historical diphthongs /u, av, ev/, and that όυ, άυ, έυ are not to be transliterated as ou, au, eu
21
+ - Introduced casing to digamma and lunate sigma. (Casing was late introduction to character sets for those characters)
22
+
23
+ tests:
24
+
25
+ - source: |
26
+ Ένα πράμα μόνον με παρακίνησε κι εμένα να γράψω ότι τούτην την πατρίδα την έχομεν όλοι μαζί, και σοφοί κι αμαθείς και πλούσιοι και φτωχοί και πολιτικοί και στρατιωτικοί και οι πλέον μικρότεροι άνθρωποι· όσοι αγωνιστήκαμεν, αναλόγως ο καθείς, έχομεν να ζήσομεν εδώ. Το λοιπόν δουλέψαμεν όλοι μαζί, να την φυλάμεν κι όλοι μαζί και να μην λέγει ούτε ο δυνατός «εγώ» ούτε ο αδύνατος. Ξέρετε πότε να λέγει ο καθείς «εγώ»; Όταν αγωνιστεί μόνος του και φκιάσει ή χαλάσει, να λέγει «εγώ»· όταν όμως αγωνίζονται πολλοί και φκιάνουν, τότε να λένε «εμείς». Είμαστε εις το «εμείς» κι όχι εις το «εγώ». Και εις το εξής να μάθομεν γνώση, αν θέλομεν να φκιάσομεν χωριόν, να ζήσομεν όλοι μαζί.
27
+
28
+ Γιάννης Μακρυγιάννης.
29
+
30
+ expected: |
31
+ Éna práma mónon me parakínīse ki eména na grápsō óti toútīn tīn patrída tīn échomen óloi mazí, kai sofoí ki amatheís kai ploúsioi kai ftōchoí kai politikoí kai stratiōtikoí kai oi pléon mikróteroi ánthrōpoi; ósoi agōnistī́kamen, analógōs o katheís, échomen na zī́somen edṓ. To loipón doulépsamen óloi mazí, na tīn fylámen ki óloi mazí kai na mīn légei oúte o dynatós «egṓ» oúte o adýnatos. Xérete póte na légei o katheís «egṓ»? Ótan agōnisteí mónos tou kai fkiásei ī́ chalásei, na légei «egṓ»; ótan ómōs agōnízontai polloí kai fkiánoun, tóte na léne «emeís». Eímaste eis to «emeís» ki óchi eis to «egṓ». Kai eis to exī́s na máthomen gnṓsī, an thélomen na fkiásomen chōrión, na zī́somen óloi mazí.
32
+
33
+ Giánnīs Makrygiánnīs.
34
+
35
+
36
+ - source: ΑΘΗΝΑ
37
+ expected: ATHĪNA
38
+ - source: μπαμπάκι
39
+ expected: mpampáki
40
+ - source: νταντά
41
+ expected: ntantá
42
+ - source: γκέγκε
43
+ expected: gkégke
44
+ - source: Γκαμπόν
45
+ expected: Gkampón
46
+ - source: Μάγχη
47
+ expected: Mágchī
48
+ - source: κογξ
49
+ expected: kogx
50
+ - source: υιός
51
+ expected: yiós
52
+ - source: Υιός
53
+ expected: Yiós
54
+ - source: νεράντζι
55
+ expected: nerántzi
56
+ - source: Γοίθιος
57
+ expected: Goíthios
58
+ - source: μπέικον
59
+ expected: mpéikon
60
+ - source: μπέϊκον
61
+ expected: mpéïkon
62
+ - source: βόλεϊ
63
+ expected: vóleï
64
+ - source: αθεΐα
65
+ expected: atheḯa
66
+ - source: Εϊγιαφιάτλαγιοκουτλ
67
+ expected: Eïgiafiátlagiokoutl
68
+ - source: Εΐτζι
69
+ expected: Eḯtzi
70
+ - source: Μυρτώο
71
+ expected: Myrtṓo
72
+ - source: αέρας
73
+ expected: aéras
74
+ - source: γαυ γαυ
75
+ expected: gau gau
76
+ - source: Ταΰγετος
77
+ expected: Taÿ́getos
78
+ - source: σπρέυ
79
+ expected: spréy
80
+
81
+ - source: Αθήνα
82
+ expected: Athī́na
83
+ - source: Άγιον Όρος
84
+ expected: Ágion Óros
85
+ - source: Άγραφα
86
+ expected: Ágrafa
87
+ - source: Αγρίνιο
88
+ expected: Agrínio
89
+ - source: Αίγινα
90
+ expected: Aígina
91
+ - source: Αίγιο
92
+ expected: Aígio
93
+ - source: Αλεξανδρούπολη
94
+ expected: Alexandroúpolī
95
+ - source: Αλεποχώρι
96
+ expected: Alepochṓri
97
+ - source: Αμοργός
98
+ expected: Amorgós
99
+ - source: Άμφισσα
100
+ expected: Ámfissa
101
+ - source: Αράχωβα
102
+ expected: Aráchōva
103
+ - source: Άργος
104
+ expected: Árgos
105
+ - source: Αρκαδία
106
+ expected: Arkadía
107
+ - source: Άρτα
108
+ expected: Árta
109
+ - source: Βελούχι
110
+ expected: Veloúchi
111
+ - source: Βέροια
112
+ expected: Véroia
113
+ - source: Βοιωτία
114
+ expected: Voiōtía
115
+ - source: Βόλος
116
+ expected: Vólos
117
+ - source: Βόνιτσα
118
+ expected: Vónitsa
119
+ - source: Γαλαξίδι
120
+ expected: Galaxídi
121
+ - source: Γαλάτσι
122
+ expected: Galátsi
123
+ - source: Γιαννιτσά
124
+ expected: Giannitsá
125
+ - source: Γλυφάδα
126
+ expected: Glyfáda
127
+ - source: Γρανίτσα
128
+ expected: Granítsa
129
+ - source: Γρεβενά
130
+ expected: Grevená
131
+ - source: Γύθειο
132
+ expected: Gýtheio
133
+ - source: Διόνυσος
134
+ expected: Diónysos
135
+ - source: Δίστομο
136
+ expected: Dístomo
137
+ - source: Δολιανά
138
+ expected: Dolianá
139
+ - source: Δράμα
140
+ expected: Dráma
141
+ - source: Δωδεκάνησα
142
+ expected: Dōdekánīsa
143
+ - source: Έδεσσα
144
+ expected: Édessa
145
+ - source: Ελευσίνα
146
+ expected: Eleusína
147
+ - source: Επίδαυρος
148
+ expected: Epídauros
149
+ - source: Επτάνησα
150
+ expected: Eptánīsa
151
+ - source: Ερμούπολη
152
+ expected: Ermoúpolī
153
+ - source: Εύβοια
154
+ expected: Eúvoia
155
+ - source: Ζάκυνθος
156
+ expected: Zákynthos
157
+ - source: Ήπειρος
158
+ expected: Ī́peiros
159
+ - source: Ηράκλειο
160
+ expected: Īrákleio
161
+ - source: Θάσος
162
+ expected: Thásos
163
+ - source: Θεσσαλονίκη
164
+ expected: Thessaloníkī
165
+ - source: Θεσσαλία
166
+ expected: Thessalía
167
+ - source: Θεσπρωτία
168
+ expected: Thesprōtía
169
+ - source: Θήβα
170
+ expected: Thī́va
171
+ - source: Θράκη
172
+ expected: Thrákī
173
+ - source: Ιθάκη
174
+ expected: Ithákī
175
+ - source: Ίος
176
+ expected: Íos
177
+ - source: Ιωάννινα
178
+ expected: Iōánnina
179
+ - source: Καβάλα
180
+ expected: Kavála
181
+ - source: Καλάβρυτα
182
+ expected: Kalávryta
183
+ - source: Καλαμάτα
184
+ expected: Kalamáta
185
+ - source: Καλαμπάκα
186
+ expected: Kalampáka
187
+ - source: Καλύβια
188
+ expected: Kalývia
189
+ - source: Κάλυμνος
190
+ expected: Kálymnos
191
+ - source: Καρδίτσα
192
+ expected: Kardítsa
193
+ - source: Καρπενήσι
194
+ expected: Karpenī́si
195
+ - source: Κάρυστος
196
+ expected: Kárystos
197
+ - source: Καστελλόριζο
198
+ expected: Kastellórizo
199
+ - source: Καστοριά
200
+ expected: Kastoriá
201
+ - source: Κατερίνη
202
+ expected: Katerínī
203
+ - source: Κάτω Αχαΐα
204
+ expected: Kátō Achaḯa
205
+ - source: Κερατέα
206
+ expected: Keratéa
207
+ - source: Κέρκυρα
208
+ expected: Kérkyra
209
+ - source: Κεφαλλονιά
210
+ expected: Kefalloniá
211
+ - source: Κηφισιά
212
+ expected: Kīfisiá
213
+ - source: Κιλκίς
214
+ expected: Kilkís
215
+ - source: Κοζάνη
216
+ expected: Kozánī
217
+ - source: Κολωνός
218
+ expected: Kolōnós
219
+ - source: Κομοτηνή
220
+ expected: Komotīnī́
221
+ - source: Κόρινθος
222
+ expected: Kórinthos
223
+ - source: Κορώνη
224
+ expected: Korṓnī
225
+ - source: Κρανίδι
226
+ expected: Kranídi
227
+ - source: Κρέστενα
228
+ expected: Kréstena
229
+ - source: Κρήτη
230
+ expected: Krī́tī
231
+ - source: Κύθηρα
232
+ expected: Kýthīra
233
+ - source: Κυκλάδες
234
+ expected: Kykládes
235
+ - source: Κύμη
236
+ expected: Kýmī
237
+ - source: Κυψέλη
238
+ expected: Kypsélī
239
+ - source: Κως
240
+ expected: Kōs
241
+ - source: Λαγκαδάς
242
+ expected: Lagkadás
243
+ - source: Λαμία
244
+ expected: Lamía
245
+ - source: Λάρισα
246
+ expected: Lárisa
247
+ - source: Λαύριο
248
+ expected: Laúrio
249
+ - source: Λέρος
250
+ expected: Léros
251
+ - source: Λέσβος
252
+ expected: Lésvos
253
+ - source: Λευκάδα
254
+ expected: Leukáda
255
+ - source: Λήμνος
256
+ expected: Lī́mnos
257
+ - source: Λιβαδειά
258
+ expected: Livadeiá
259
+ - source: Μακεδονία
260
+ expected: Makedonía
261
+ - source: Μάνη
262
+ expected: Mánī
263
+ - source: Μαραθώνας
264
+ expected: Marathṓnas
265
+ - source: Μαρκόπουλο
266
+ expected: Markópoulo
267
+ - source: Μαρούσι
268
+ expected: Maroúsi
269
+ - source: Μέγαρα
270
+ expected: Mégara
271
+ - source: Μεσολόγγι
272
+ expected: Mesológgi
273
+ - source: Μεταξουργείο
274
+ expected: Metaxourgeío
275
+ - source: Μέτσοβο
276
+ expected: Métsovo
277
+ - source: Μήλος
278
+ expected: Mī́los
279
+ - source: Μύκονος
280
+ expected: Mýkonos
281
+ - source: Μυστράς
282
+ expected: Mystrás
283
+ - source: Μυτιλήνη
284
+ expected: Mytilī́nī
285
+ - source: Νάξος
286
+ expected: Náxos
287
+ - source: Νάουσα
288
+ expected: Náousa
289
+ - source: Ναύπακτος
290
+ expected: Naúpaktos
291
+ - source: Ναύπλιο
292
+ expected: Naúplio
293
+ - source: Νέα Σμύρνη
294
+ expected: Néa Smýrnī
295
+ - source: Νίσυρος
296
+ expected: Nísyros
297
+ - source: Ξάνθη
298
+ expected: Xánthī
299
+ - source: Όλυμπος
300
+ expected: Ólympos
301
+ - source: Παγκράτι
302
+ expected: Pagkráti
303
+ - source: Παπάγου
304
+ expected: Papágou
305
+ - source: Πάρος
306
+ expected: Páros
307
+ - source: Πασαλιμάνι
308
+ expected: Pasalimáni
309
+ - source: Πατήσια
310
+ expected: Patī́sia
311
+ - source: Πάτμος
312
+ expected: Pátmos
313
+ - source: Πάτρα
314
+ expected: Pátra
315
+ - source: Πειραιάς
316
+ expected: Peiraiás
317
+ - source: Πελοπόννησος
318
+ expected: Pelopónnīsos
319
+ - source: Περιστέρι
320
+ expected: Peristéri
321
+ - source: Πεύκη
322
+ expected: Peúkī
323
+ - source: Πήλιο
324
+ expected: Pī́lio
325
+ - source: Πολύγυρος
326
+ expected: Polýgyros
327
+ - source: Πόρος
328
+ expected: Póros
329
+ - source: Πρέβεζα
330
+ expected: Préveza
331
+ - source: Πτολεμαΐδα
332
+ expected: Ptolemaḯda
333
+ - source: Πύλος
334
+ expected: Pýlos
335
+ - source: Πύργος
336
+ expected: Pýrgos
337
+ - source: Ρέθυμνο
338
+ expected: Réthymno
339
+ - source: Ρόδος
340
+ expected: Ródos
341
+ - source: Ρούμελη
342
+ expected: Roúmelī
343
+ - source: Σαλαμίνα
344
+ expected: Salamína
345
+ - source: Σαμοθράκη
346
+ expected: Samothrákī
347
+ - source: Σάμος
348
+ expected: Sámos
349
+ - source: Σαντορίνη
350
+ expected: Santorínī
351
+ - source: Σέρρες
352
+ expected: Sérres
353
+ - source: Σίκινος
354
+ expected: Síkinos
355
+ - source: Σίφνος
356
+ expected: Sífnos
357
+ - source: Σκιάθος
358
+ expected: Skiáthos
359
+ - source: Σκόπελος
360
+ expected: Skópelos
361
+ - source: Σούλι
362
+ expected: Soúli
363
+ - source: Σπάρτη
364
+ expected: Spártī
365
+ - source: Στερεά Ελλάδα
366
+ expected: Stereá Elláda
367
+ - source: Στύρα
368
+ expected: Stýra
369
+ - source: Σύμη
370
+ expected: Sýmī
371
+ - source: Σύρος
372
+ expected: Sýros
373
+ - source: Σφακιά
374
+ expected: Sfakiá
375
+ - source: Τήλος
376
+ expected: Tī́los
377
+ - source: Τήνος
378
+ expected: Tī́nos
379
+ - source: Τρίκαλα
380
+ expected: Tríkala
381
+ - source: Τρίπολη
382
+ expected: Trípolī
383
+ - source: Τσακωνιά
384
+ expected: Tsakōniá
385
+ - source: Ύδρα
386
+ expected: Ýdra
387
+ - source: Φάληρο
388
+ expected: Fálīro
389
+ - source: Φλώρινα
390
+ expected: Flṓrina
391
+ - source: Φολέγανδρος
392
+ expected: Folégandros
393
+ - source: Χάλκη
394
+ expected: Chálkī
395
+ - source: Χαλκίδα
396
+ expected: Chalkída
397
+ - source: Χαλάνδρι
398
+ expected: Chalándri
399
+ - source: Χαλκιδική
400
+ expected: Chalkidikī́
401
+ - source: Χανιά
402
+ expected: Chaniá
403
+ - source: Χίος
404
+ expected: Chíos
405
+ - source: Ψαρά
406
+ expected: Psará
407
+ - source: Αβάνα
408
+ expected: Avána
409
+ - source: Αγγλία
410
+ expected: Agglía
411
+ - source: Αϊβαλί
412
+ expected: Aïvalí
413
+ - source: Αλεξάνδρεια
414
+ expected: Alexándreia
415
+ - source: Άμστερνταμ
416
+ expected: Ámsterntam
417
+ - source: Βαυαρία
418
+ expected: Vauaría
419
+ - source: Βενετία
420
+ expected: Venetía
421
+ - source: Βερολίνο
422
+ expected: Verolíno
423
+ - source: Βερόνα
424
+ expected: Veróna
425
+ - source: Βιέννη
426
+ expected: Viénnī
427
+ - source: Γένοβα
428
+ expected: Génova
429
+ - source: Δουβλίνο
430
+ expected: Douvlíno
431
+ - source: Καλαβρία
432
+ expected: Kalavría
433
+ - source: Καλιφόρνια
434
+ expected: Kalifórnia
435
+ - source: Καύκασος
436
+ expected: Kaúkasos
437
+ - source: Κονγκό
438
+ expected: Kongkó
439
+ - source: Κορσική
440
+ expected: Korsikī́
441
+ - source: Κουρδιστάν
442
+ expected: Kourdistán
443
+ - source: Κωνσταντινούπολη
444
+ expected: Kōnstantinoúpolī
445
+ - source: Κατεχόμενη Κύπρος
446
+ expected: Katechómenī Kýpros
447
+ - source: Λαπωνία
448
+ expected: Lapōnía
449
+ - source: Λευκωσία
450
+ expected: Leukōsía
451
+ - source: Λιβόρνο
452
+ expected: Livórno
453
+ - source: Λονδίνο
454
+ expected: Londíno
455
+ - source: Λυών
456
+ expected: Lyṓn
457
+ - source: Μάλαγα
458
+ expected: Málaga
459
+ - source: Μασσαλία
460
+ expected: Massalía
461
+ - source: Μικρονησία
462
+ expected: Mikronīsía
463
+ - source: Μιλάνο
464
+ expected: Miláno
465
+ - source: Μόσχα
466
+ expected: Móscha
467
+ - source: Μπολόνια
468
+ expected: Mpolónia
469
+ - source: Νάπολη
470
+ expected: Nápolī
471
+ - source: Νταγκεστάν
472
+ expected: Ntagkestán
473
+ - source: Νέα Υόρκη
474
+ expected: Néa Yórkī
475
+ - source: Οξφόρδη
476
+ expected: Oxfórdī
477
+ - source: Ουαλία
478
+ expected: Oualía
479
+ - source: Παρίσι
480
+ expected: Parísi
481
+ - source: Πάφος
482
+ expected: Páfos
483
+ - source: Πολυνησία
484
+ expected: Polynīsía
485
+ - source: Ρώμη
486
+ expected: Rṓmī
487
+ - source: Σαμάρεια
488
+ expected: Samáreia
489
+ - source: Σικελία
490
+ expected: Sikelía
491
+ - source: Σκανδιναβία
492
+ expected: Skandinavía
493
+ - source: Σκόπια
494
+ expected: Skópia
495
+ - source: Σκωτία
496
+ expected: Skōtía
497
+ - source: Σμύρνη
498
+ expected: Smýrnī
499
+ - source: Ταϊτή
500
+ expected: Taïtī́
501
+ - source: Ταταρστάν
502
+ expected: Tatarstán
503
+ - source: Τζαμάικα
504
+ expected: Tzamáika
505
+ - source: Τηλλυρία
506
+ expected: Tīllyría
507
+ - source: Τιρόλο
508
+ expected: Tirólo
509
+ - source: Τορίνο
510
+ expected: Toríno
511
+ - source: Φανάρι
512
+ expected: Fanári
513
+ - source: Φλωρεντία
514
+ expected: Flōrentía
515
+ - source: Χαβάη
516
+ expected: Chaváī
517
+ - source: Χονγκ Κονγκ
518
+ expected: Chongk Kongk
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: ú
529
+ - pattern: \u037E # ;
530
+ result: "?"
531
+ - pattern: \u003B # ;
532
+ result: "?"
533
+
534
+ characters:
535
+ "\u0027": ""
536
+ "\u0386": "Á" # Ά
537
+ "\u0391": "A" # Α
538
+ "\u0392": "V" # Β
539
+ "\u0393": "G" # Γ
540
+ "\u0394": "D" # Δ
541
+ "\u0395": "E" # Ε
542
+ "\u0396": "Z" # Ζ
543
+ "\u0397": "Ī" # Η
544
+ "\u0398": "Th" # Θ
545
+ "\u0399": "I" # Ι
546
+ "\u039A": "K" # Κ
547
+ "\u039B": "L" # Λ
548
+ "\u039C": "M" # Μ
549
+ "\u039D": "N" # Ν
550
+ "\u039E": "X" # Ξ
551
+ "\u039F": "O" # Ο
552
+ "\u03A0": "P" # Π
553
+ "\u03A1": "R" # Ρ
554
+ "\u03A3": "S" # Σ
555
+ "\u03A4": "T" # Τ
556
+ "\u03A5": "Y" # Υ
557
+ "\u03A6": "F" # Φ
558
+ "\u03A7": "Ch" # Χ
559
+ "\u03A8": "Ps" # Ψ
560
+ "\u03A9": "Ō" # Ω
561
+ "\u0388": "É" # Έ
562
+ "\u0389": "Ī́" # Ή
563
+ "\u038A": "Í" # Ί
564
+ "\u038C": "Ó" # Ό
565
+ "\u038E": "Ý" # Ύ
566
+ "\u038F": "Ṓ" # Ώ
567
+ "\u03AA": "Ï" # Ϊ
568
+ "\u03AB": "Ÿ" # Ϋ
569
+
570
+ "\u03AC": "á" # ά
571
+ "\u03B1": "a" # α
572
+ "\u03B2": "v" # β
573
+ "\u03B3": "g" # γ
574
+ "\u03B4": "d" # δ
575
+ "\u03B5": "e" # ε
576
+ "\u03B6": "z" # ζ
577
+ "\u03B7": "ī" # η
578
+ "\u03B8": "th" # θ
579
+ "\u03B9": "i" # ι
580
+ "\u03BA": "k" # κ
581
+ "\u03BB": "l" # λ
582
+ "\u03BC": "m" # μ
583
+ "\u03BD": "n" # ν
584
+ "\u03BE": "x" # ξ
585
+ "\u03BF": "o" # ο
586
+ "\u03C0": "p" # π
587
+ "\u03C1": "r" # ρ
588
+ "\u03C3": "s" # σ
589
+ "\u03C2": "s" # ς
590
+ "\u03C4": "t" # τ
591
+ "\u03C5": "y" # υ
592
+ "\u03C6": "f" # φ
593
+ "\u03C7": "ch" # χ
594
+ "\u03C8": "ps" # ψ
595
+ "\u03C9": "ō" # ω
596
+ "\u03AD": "é" # έ
597
+ "\u03AE": "ī́" # ή
598
+ "\u03AF": "í" # ί
599
+ "\u03CC": "ó" # ό
600
+ "\u03CD": "ý" # ύ
601
+ "\u03CE": "ṓ" # ώ
602
+ "\u03CA": "ï" # ϊ
603
+ "\u03CB": "ÿ" # ϋ
604
+ "\u0390": "ḯ" # ΐ
605
+ "\u03B0": "ÿ́" # ΰ
606
+
607
+ "\u03DC": "W" # Ϝ
608
+ "\u03DD": "w" # ϝ
609
+ "\u03F2": "s" # ϲ
610
+ "\u03F9": "S" # Ϲ
611
+
612
+ "\u0387": ";" # ·
613
+ "\u00B7": ";" # ·