interscript-maps 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (291) hide show
  1. checksums.yaml +7 -0
  2. data/README.adoc +28 -0
  3. data/interscript-maps.gemspec +28 -0
  4. data/interscript-maps.yaml +235 -0
  5. data/libs/posix.iml +11 -0
  6. data/libs/unicode.iml +13 -0
  7. data/libs/var-Cyrl.iml +7 -0
  8. data/libs/var-kor.iml +17 -0
  9. data/maps-staging/royin-tha-Thai-Latn-1939-generic.imp +98 -0
  10. data/maps-staging/royin-tha-Thai-Latn-1968.imp +156 -0
  11. data/maps-staging/royin-tha-Thai-Latn-1999-chained.imp +161 -0
  12. data/maps-staging/royin-tha-Thai-Latn-1999.imp +78 -0
  13. data/maps-staging/var-tha-Thai-Thai-phonemic.imp +53 -0
  14. data/maps-staging/var-tha-Thai-Zsym-ipa.imp +273 -0
  15. data/maps/acadsin-zho-Hani-Latn-2002.imp +27515 -0
  16. data/maps/alalc-amh-Ethi-Latn-1997.imp +392 -0
  17. data/maps/alalc-amh-Ethi-Latn-2011.imp +85 -0
  18. data/maps/alalc-ara-Arab-Latn-1997.imp +1171 -0
  19. data/maps/alalc-asm-Deva-Latn-1997.imp +214 -0
  20. data/maps/alalc-asm-Deva-Latn-2012.imp +53 -0
  21. data/maps/alalc-aze-Arab-Latn-1997.imp +321 -0
  22. data/maps/alalc-aze-Cyrl-Latn-1997.imp +101 -0
  23. data/maps/alalc-bel-Cyrl-Latn-1997.imp +118 -0
  24. data/maps/alalc-ben-Beng-Latn-1997.imp +225 -0
  25. data/maps/alalc-ben-Beng-Latn-2017.imp +135 -0
  26. data/maps/alalc-bul-Cyrl-Latn-1997.imp +110 -0
  27. data/maps/alalc-div-Thaa-Latn-1997.imp +171 -0
  28. data/maps/alalc-ell-Grek-Latn-1997.imp +381 -0
  29. data/maps/alalc-ell-Grek-Latn-2010.imp +382 -0
  30. data/maps/alalc-guj-Gujr-Latn-1997.imp +223 -0
  31. data/maps/alalc-guj-Gujr-Latn-2011.imp +57 -0
  32. data/maps/alalc-hin-Deva-Latn-1997.imp +248 -0
  33. data/maps/alalc-hin-Deva-Latn-2011.imp +63 -0
  34. data/maps/alalc-kan-Kana-Latn-1997.imp +233 -0
  35. data/maps/alalc-kan-Kana-Latn-2011.imp +58 -0
  36. data/maps/alalc-kat-Geok-Latn-1997.imp +109 -0
  37. data/maps/alalc-kat-Geor-Latn-1997.imp +104 -0
  38. data/maps/alalc-kor-Hang-Latn-1997.imp +68 -0
  39. data/maps/alalc-mal-Mlym-Latn-1997.imp +260 -0
  40. data/maps/alalc-mal-Mlym-Latn-2012.imp +65 -0
  41. data/maps/alalc-mar-Deva-Latn-1997.imp +178 -0
  42. data/maps/alalc-mar-Deva-Latn-2011.imp +51 -0
  43. data/maps/alalc-mkd-Cyrl-Latn-1997.imp +125 -0
  44. data/maps/alalc-mkd-Cyrl-Latn-2013.imp +113 -0
  45. data/maps/alalc-mon-Cyrl-Latn-1997.imp +161 -0
  46. data/maps/alalc-ori-Orya-Latn-1997.imp +234 -0
  47. data/maps/alalc-ori-Orya-Latn-2011.imp +59 -0
  48. data/maps/alalc-pan-Guru-Latn-1997.imp +241 -0
  49. data/maps/alalc-pan-Guru-Latn-2011.imp +71 -0
  50. data/maps/alalc-per-Arab-Latn-1997.imp +318 -0
  51. data/maps/alalc-pli-Deva-Latn-2012.imp +140 -0
  52. data/maps/alalc-pra-Deva-Latn-2012.imp +52 -0
  53. data/maps/alalc-rus-Cyrl-Latn-1997.imp +165 -0
  54. data/maps/alalc-rus-Cyrl-Latn-2012.imp +107 -0
  55. data/maps/alalc-san-Deva-Latn-2012.imp +207 -0
  56. data/maps/alalc-sin-Sinh-Latn-1997.imp +246 -0
  57. data/maps/alalc-sin-Sinh-Latn-2011.imp +63 -0
  58. data/maps/alalc-srp-Cyrl-Latn-1997.imp +124 -0
  59. data/maps/alalc-srp-Cyrl-Latn-2013.imp +115 -0
  60. data/maps/alalc-tam-Taml-Latn-1997.imp +52 -0
  61. data/maps/alalc-tam-Taml-Latn-2011.imp +49 -0
  62. data/maps/alalc-tel-Telu-Latn-1997.imp +237 -0
  63. data/maps/alalc-tel-Telu-Latn-2011.imp +58 -0
  64. data/maps/alalc-ukr-Cyrl-Latn-1997.imp +123 -0
  65. data/maps/alalc-ukr-Cyrl-Latn-2011.imp +32 -0
  66. data/maps/apcbg-bul-Cyrl-Latn-1995.imp +194 -0
  67. data/maps/az-aze-Cyrl-Latn-1939.imp +105 -0
  68. data/maps/az-aze-Cyrl-Latn-1958.imp +50 -0
  69. data/maps/bas-rus-Cyrl-Latn-2017-bss.imp +160 -0
  70. data/maps/bas-rus-Cyrl-Latn-2017-oss.imp +165 -0
  71. data/maps/bgn-jpn-Hrkt-Latn-1962.imp +288 -0
  72. data/maps/bgn-kor-Hang-Latn-1943.imp +31 -0
  73. data/maps/bgn-kor-Kore-Latn-1943.imp +33 -0
  74. data/maps/bgna-bul-Cyrl-Latn-2006.imp +119 -0
  75. data/maps/bgna-bul-Cyrl-Latn-2009.imp +119 -0
  76. data/maps/bgnpcgn-amh-Ethi-Latn-1967.imp +393 -0
  77. data/maps/bgnpcgn-ara-Arab-Latn-1956.imp +472 -0
  78. data/maps/bgnpcgn-arm-Armn-Latn-1981.imp +125 -0
  79. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.imp +111 -0
  80. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.imp +169 -0
  81. data/maps/bgnpcgn-bal-Arab-Latn-2008.imp +296 -0
  82. data/maps/bgnpcgn-bel-Cyrl-Latn-1979.imp +200 -0
  83. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.imp +137 -0
  84. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.imp +38 -0
  85. data/maps/bgnpcgn-che-Cyrl-Latn-2008.imp +176 -0
  86. data/maps/bgnpcgn-deu-Latn-Latn-2000.imp +56 -0
  87. data/maps/bgnpcgn-div-Thaa-Latn-1972.imp +90 -0
  88. data/maps/bgnpcgn-div-Thaa-Latn-1988.imp +71 -0
  89. data/maps/bgnpcgn-ell-Grek-Latn-1962.imp +443 -0
  90. data/maps/bgnpcgn-ell-Grek-Latn-1996.imp +269 -0
  91. data/maps/bgnpcgn-fao-Latn-Latn-1964.imp +41 -0
  92. data/maps/bgnpcgn-fao-Latn-Latn-1968.imp +28 -0
  93. data/maps/bgnpcgn-fas-Arab-Latn-1956.imp +111 -0
  94. data/maps/bgnpcgn-isl-Latn-Latn-1964.imp +42 -0
  95. data/maps/bgnpcgn-isl-Latn-Latn-1968.imp +32 -0
  96. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.imp +191 -0
  97. data/maps/bgnpcgn-kat-Geor-Latn-1981.imp +116 -0
  98. data/maps/bgnpcgn-kat-Geor-Latn-2009.imp +43 -0
  99. data/maps/bgnpcgn-kaz-Cyrl-Latn-1979.imp +193 -0
  100. data/maps/bgnpcgn-kir-Cyrl-Latn-1979.imp +170 -0
  101. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.imp +177 -0
  102. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.imp +40 -0
  103. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.imp +41 -0
  104. data/maps/bgnpcgn-kur-Arab-Latn-2007.imp +240 -0
  105. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.imp +132 -0
  106. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.imp +174 -0
  107. data/maps/bgnpcgn-mon-Cyrl-Latn-1964.imp +168 -0
  108. data/maps/bgnpcgn-nep-Deva-Latn-2011.imp +208 -0
  109. data/maps/bgnpcgn-per-Arab-Latn-1958.imp +312 -0
  110. data/maps/bgnpcgn-prs-Arab-Latn-2007.imp +552 -0
  111. data/maps/bgnpcgn-prs-Arab-Latn-yaghoubi.imp +445 -0
  112. data/maps/bgnpcgn-pus-Arab-Latn-1968.imp +289 -0
  113. data/maps/bgnpcgn-ron-cyrl-latn-2002.imp +165 -0
  114. data/maps/bgnpcgn-rue-Cyrl-Latn-2016.imp +133 -0
  115. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.imp +195 -0
  116. data/maps/bgnpcgn-sme-Latn-Latn-1984.imp +48 -0
  117. data/maps/bgnpcgn-srp-Cyrl-Latn-1962.imp +55 -0
  118. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.imp +146 -0
  119. data/maps/bgnpcgn-tat-Cyrl-Latn-2007.imp +185 -0
  120. data/maps/bgnpcgn-tgk-Cyrl-Latn-1994.imp +188 -0
  121. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.imp +136 -0
  122. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.imp +88 -0
  123. data/maps/bgnpcgn-urd-Arab-Latn-2007.imp +333 -0
  124. data/maps/bgnpcgn-uzb-Cyrl-Latn-1979.imp +145 -0
  125. data/maps/bgnpcgn-uzb-Cyrl-Latn-2000.imp +74 -0
  126. data/maps/bgnpcgn-zho-Hans-Latn-1979.imp +7463 -0
  127. data/maps/bis-asm-Beng-Latn-13194-1991.imp +154 -0
  128. data/maps/bis-ben-Beng-Latn-13194-1991.imp +151 -0
  129. data/maps/bis-dev-Deva-Latn-13194-1991.imp +178 -0
  130. data/maps/bis-guj-Gujr-Latn-13194-1991.imp +172 -0
  131. data/maps/bis-kan-Kana-Latn-13194-1991.imp +166 -0
  132. data/maps/bis-mlm-Mlym-Latn-13194-1991.imp +170 -0
  133. data/maps/bis-ori-Orya-Latn-13194-1991.imp +168 -0
  134. data/maps/bis-pnj-Guru-Latn-13194-1991.imp +169 -0
  135. data/maps/bis-tel-Telu-Latn-13194-1991.imp +165 -0
  136. data/maps/bis-tml-Taml-Latn-13194-1991.imp +149 -0
  137. data/maps/by-bel-Cyrl-Latn-1998.imp +123 -0
  138. data/maps/by-bel-Cyrl-Latn-2007.imp +77 -0
  139. data/maps/din-grc-Grek-Latn-31634-2011-t1.imp +627 -0
  140. data/maps/din-hin-Deva-Latn-33904-2018.imp +101 -0
  141. data/maps/din-kat-Geor-Latn-32707-2010.imp +103 -0
  142. data/maps/din-mar-Deva-Latn-33904-2018.imp +83 -0
  143. data/maps/din-nep-Deva-Latn-33904-2018.imp +110 -0
  144. data/maps/din-pli-Deva-Latn-33904-2018.imp +72 -0
  145. data/maps/din-pra-Deva-Latn-33904-2018.imp +66 -0
  146. data/maps/din-san-Deva-Latn-33904-2018.imp +294 -0
  147. data/maps/din-tam-Taml-Latn-33903-2016.imp +187 -0
  148. data/maps/dos-nep-Deva-Latn-1997.imp +47 -0
  149. data/maps/elot-ell-Grek-Latn-743-1982-tl.imp +399 -0
  150. data/maps/elot-ell-Grek-Latn-743-1982-ts.imp +397 -0
  151. data/maps/elot-ell-Grek-Latn-743-2001-tl.imp +34 -0
  152. data/maps/elot-ell-Grek-Latn-743-2001-ts.imp +178 -0
  153. data/maps/ggg-kat-Geor-Latn-2002.imp +75 -0
  154. data/maps/gki-bel-Cyrl-Latn-1992.imp +44 -0
  155. data/maps/gki-bel-Cyrl-Latn-2000.imp +159 -0
  156. data/maps/gost-rus-Cyrl-Latn-16876-71-1983.imp +179 -0
  157. data/maps/gost-rus-Cyrl-Latn-7.79-2000-2002.imp +132 -0
  158. data/maps/hk-yue-Hani-Latn-1888.imp +29201 -0
  159. data/maps/icao-bel-Cyrl-Latn-9303.imp +136 -0
  160. data/maps/icao-bul-Cyrl-Latn-9303.imp +127 -0
  161. data/maps/icao-fas-Arab-Latn-9303.imp +112 -0
  162. data/maps/icao-heb-Hebr-Latn-9303.imp +160 -0
  163. data/maps/icao-mkd-Cyrl-Latn-9303.imp +126 -0
  164. data/maps/icao-rus-Cyrl-Latn-9303.imp +126 -0
  165. data/maps/icao-srp-Cyrl-Latn-9303.imp +126 -0
  166. data/maps/icao-ukr-Cyrl-Latn-9303.imp +127 -0
  167. data/maps/iso-ara-Arab-Latn-233-1984.imp +301 -0
  168. data/maps/iso-asm-Beng-Latn-15919-2001.imp +73 -0
  169. data/maps/iso-ben-Beng-Latn-15919-2001.imp +171 -0
  170. data/maps/iso-ell-Grek-Latn-843-1997-t1.imp +365 -0
  171. data/maps/iso-ell-Grek-Latn-843-1997-t2.imp +43 -0
  172. data/maps/iso-guj-Gujr-Latn-15919-2001.imp +214 -0
  173. data/maps/iso-hin-Deva-Latn-15919-2001.imp +73 -0
  174. data/maps/iso-inc-Deva-Latn-15919-2001.imp +61 -0
  175. data/maps/iso-jpn-Hrkt-Latn-3602-1989.imp +59 -0
  176. data/maps/iso-kan-Kana-Latn-15919-2001.imp +212 -0
  177. data/maps/iso-kat-Geor-Latn-9984-1996.imp +103 -0
  178. data/maps/iso-kor-Hang-Latn-1996-method1.imp +140 -0
  179. data/maps/iso-kor-Hang-Latn-1996-method2.imp +132 -0
  180. data/maps/iso-mal-Mlym-Latn-15919-2001.imp +276 -0
  181. data/maps/iso-mar-Deva-Latn-15919-2001.imp +68 -0
  182. data/maps/iso-nep-Deva-Latn-15919-2001.imp +75 -0
  183. data/maps/iso-ori-Orya-Latn-15919-2001.imp +188 -0
  184. data/maps/iso-pan-Guru-Latn-15919-2001.imp +217 -0
  185. data/maps/iso-pli-Beng-Latn-15919-2001.imp +66 -0
  186. data/maps/iso-pli-Deva-Latn-15919-2001.imp +68 -0
  187. data/maps/iso-pli-Sinh-Latn-15919-2001.imp +211 -0
  188. data/maps/iso-pli-Thai-Latn-15919-2001.imp +47 -0
  189. data/maps/iso-pra-Deva-Latn-15919-2001.imp +60 -0
  190. data/maps/iso-prs-Arab-Latn-233-3-1999.imp +352 -0
  191. data/maps/iso-rus-Cyrl-Latn-9-1995.imp +279 -0
  192. data/maps/iso-san-Deva-Latn-15919-2001.imp +215 -0
  193. data/maps/iso-tam-Taml-Latn-15919-2001.imp +153 -0
  194. data/maps/iso-tel-Telu-Latn-15919-2001.imp +214 -0
  195. data/maps/iso-tha-Thai-Latn-11940-1998.imp +114 -0
  196. data/maps/kp-kor-Hang-Latn-2002.imp +540 -0
  197. data/maps/lshk-yue-Hani-Latn-jyutping-1993.imp +29005 -0
  198. data/maps/masm-mon-Cyrl-Latn-5217-2012.imp +136 -0
  199. data/maps/masm-mon-Latn-Cyrl-5217-2012.imp +162 -0
  200. data/maps/mext-jpn-Hrkt-Latn-1954.imp +403 -0
  201. data/maps/moct-kor-Hang-Latn-2000.imp +475 -0
  202. data/maps/mofa-jpn-Hrkt-Latn-1989.imp +484 -0
  203. data/maps/mv-div-Thaa-Latn-1987.imp +144 -0
  204. data/maps/mvd-bel-Cyrl-Latn-2008.imp +224 -0
  205. data/maps/mvd-bel-Cyrl-Latn-2010.imp +64 -0
  206. data/maps/mvd-rus-Cyrl-Latn-2008.imp +110 -0
  207. data/maps/mvd-rus-Cyrl-Latn-2010.imp +40 -0
  208. data/maps/odni-ara-Arab-Latn-2004.imp +106 -0
  209. data/maps/odni-ara-Arab-Latn-2015.imp +281 -0
  210. data/maps/odni-aze-Cyrl-Latn-2015.imp +158 -0
  211. data/maps/odni-bel-Cyrl-Latn-2015.imp +138 -0
  212. data/maps/odni-bul-Cyrl-Latn-2005.imp +90 -0
  213. data/maps/odni-bul-Cyrl-Latn-2015.imp +103 -0
  214. data/maps/odni-che-Cyrl-Latn-2015.imp +165 -0
  215. data/maps/odni-fas-Arab-Latn-2004.imp +268 -0
  216. data/maps/odni-fas-Arab-Latn-2015.imp +398 -0
  217. data/maps/odni-hin-Deva-Latn-2004.imp +180 -0
  218. data/maps/odni-hin-Deva-Latn-2015.imp +256 -0
  219. data/maps/odni-kat-Geor-Latn-2015.imp +76 -0
  220. data/maps/odni-kaz-Cyrl-Latn-2015.imp +164 -0
  221. data/maps/odni-kir-Cyrl-Latn-2015.imp +149 -0
  222. data/maps/odni-kor-Hang-Latn-2015.imp +307 -0
  223. data/maps/odni-mkd-Cyrl-Latn-2005.imp +28 -0
  224. data/maps/odni-mkd-Cyrl-Latn-2015.imp +124 -0
  225. data/maps/odni-prs-Arab-Latn-2004.imp +120 -0
  226. data/maps/odni-prs-Arab-Latn-2015.imp +225 -0
  227. data/maps/odni-pus-Arab-Latn-2011.imp +327 -0
  228. data/maps/odni-rus-Cyrl-Latn-2015.imp +79 -0
  229. data/maps/odni-srp-Cyrl-Latn-2005.imp +35 -0
  230. data/maps/odni-srp-Cyrl-Latn-2015.imp +130 -0
  231. data/maps/odni-tat-Cyrl-Latn-2015.imp +157 -0
  232. data/maps/odni-tgk-Cyrl-Latn-2015.imp +161 -0
  233. data/maps/odni-tuk-Cyrl-Latn-2015.imp +159 -0
  234. data/maps/odni-uig-Cyrl-Latn-2015.imp +151 -0
  235. data/maps/odni-ukr-Cyrl-Latn-2015.imp +136 -0
  236. data/maps/odni-urd-Arab-Latn-2015.imp +220 -0
  237. data/maps/odni-uzb-Cyrl-Latn-2015.imp +165 -0
  238. data/maps/sac-zho-Hans-Latn-1979.imp +20940 -0
  239. data/maps/sasm-mon-Mong-Latn-general-1978.imp +294 -0
  240. data/maps/sasm-mon-Mong-Latn-phonetic-1978.imp +261 -0
  241. data/maps/ses-ara-Arab-Latn-1930.imp +225 -0
  242. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.imp +171 -0
  243. data/maps/ua-ukr-Cyrl-Latn-1996.imp +149 -0
  244. data/maps/ua-ukr-Cyrl-Latn-2007.imp +69 -0
  245. data/maps/ua-ukr-Cyrl-Latn-2010.imp +128 -0
  246. data/maps/un-amh-Ethi-Latn-2016.imp +483 -0
  247. data/maps/un-ara-Arab-Latn-1971.imp +137 -0
  248. data/maps/un-ara-Arab-Latn-1972.imp +155 -0
  249. data/maps/un-ara-Arab-Latn-2017.imp +375 -0
  250. data/maps/un-asm-Beng-Latn-1972.imp +188 -0
  251. data/maps/un-bel-Cyrl-Latn-2007.imp +78 -0
  252. data/maps/un-ben-Beng-Latn-2016.imp +516 -0
  253. data/maps/un-ell-Grek-Latn-1987-phonetic.imp +437 -0
  254. data/maps/un-ell-Grek-Latn-1987-tl.imp +27 -0
  255. data/maps/un-ell-Grek-Latn-1987-ts.imp +269 -0
  256. data/maps/un-guj-Gujr-Latn-1972.imp +196 -0
  257. data/maps/un-hin-Deva-Latn-2016.imp +356 -0
  258. data/maps/un-kan-Kana-Latn-2016.imp +214 -0
  259. data/maps/un-mal-Mlym-Latn-1972.imp +215 -0
  260. data/maps/un-mar-Deva-Latn-2016.imp +96 -0
  261. data/maps/un-mon-Mong-Latn-general-2013.imp +170 -0
  262. data/maps/un-mon-Mong-Latn-phonetic-2013.imp +170 -0
  263. data/maps/un-nep-Deva-Latn-1972.imp +295 -0
  264. data/maps/un-nep-Deva-Latn-2013.imp +62 -0
  265. data/maps/un-ori-Orya-Latn-1972.imp +208 -0
  266. data/maps/un-pan-Guru-Latn-1972.imp +321 -0
  267. data/maps/un-prs-Arab-Latn-1967.imp +214 -0
  268. data/maps/un-rus-Cyrl-Latn-1987.imp +96 -0
  269. data/maps/un-sin-Sinh-Latn-1972.imp +193 -0
  270. data/maps/un-tam-Taml-Latn-1972.imp +173 -0
  271. data/maps/un-tel-Telu-Latn-1972.imp +229 -0
  272. data/maps/un-ukr-Cyrl-Latn-1998.imp +58 -0
  273. data/maps/un-ukr-Cyrl-Latn-2012.imp +95 -0
  274. data/maps/un-urd-Arab-Latn-1972.imp +290 -0
  275. data/maps/var-amh-Ethi-Latn-eae-2003.imp +414 -0
  276. data/maps/var-gez-Ethi-Latn-eae-2003.imp +54 -0
  277. data/maps/var-hin-Deva-Latn-hunterian-1872.imp +212 -0
  278. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.imp +399 -0
  279. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.imp +382 -0
  280. data/maps/var-kor-Hang-Hang-jamo.imp +11196 -0
  281. data/maps/var-kor-Hang-Latn-mr-1939.imp +574 -0
  282. data/maps/var-kor-Kore-Hang-2013.imp +59764 -0
  283. data/maps/var-kor-Kore-Latn-mr-1939.imp +36 -0
  284. data/maps/var-mar-Deva-Latn-hunterian-1872.imp +39 -0
  285. data/maps/var-mon-Mong-Latn-1930.imp +101 -0
  286. data/maps/var-mon-Mong-Latn-lessing.imp +181 -0
  287. data/maps/var-mon-Mong-Latn-vpmc.imp +182 -0
  288. data/maps/var-pra-Deva-Latn-iast-1912.imp +36 -0
  289. data/maps/var-san-Deva-Latn-iast-1912.imp +147 -0
  290. data/maps/var-zho-Hani-Latn-wd-1979.imp +27549 -0
  291. metadata +335 -0
@@ -0,0 +1,225 @@
1
+ metadata {
2
+ authority_id: ungegn
3
+ id: 1930
4
+ language: iso-639-2:ara
5
+ source_script: Arab
6
+ destination_script: Latn
7
+ name: ROMANIZATION OF ARABIC -- UNGEGN 2017 System
8
+ url: http://www.eki.ee/wgrs/rom1_ar.pdf
9
+ creation_date: 1930
10
+ confirmation_date: 2018-06
11
+ description: |
12
+ The current United Nations recommended romanization
13
+ system was approved in 2017 (resolution XI/3), based on
14
+ the system adopted by Arabic experts at the conference
15
+ held in Beirut in 2007, the Unified Arabic
16
+ Transliteration System, taking into account the
17
+ practical amendments and corrections carried out and
18
+ agreed upon by the representatives of the Arabic-
19
+ speaking countries at the Fourth Arab Conference on
20
+ Geographical Names, held in Beirut in 2008, and some
21
+ clarifications and amendments agreed in Riyadh in 20171.
22
+ Previously, the United Nations had approved a
23
+ romanization system in 1972 (resolution II/8), based on the
24
+ system adopted by Arabic experts at the conference
25
+ held at Beirut in 1971 with the practical amendments carried out
26
+ and agreed upon by the representatives of the Arabic-speaking
27
+ countries at their conference. The table was published in volume
28
+ II of the conference report.
29
+ In UN resolution XI/3 it is specifically stated that the
30
+ system was recommended for the “romanization of the
31
+ geographical names within those Arabic-speaking countries
32
+ where this system is officially adopted”. There is
33
+ evidence of its partial implementation in Jordan, Oman and
34
+ Saudi Arabia. The UNGEGN Working Group on Romanization
35
+ Systems intends to continue monitoring the UN system’s
36
+ implementation across Arabic-speaking countries.
37
+ In some countries there exist local romanization schemes
38
+ or practices. The geographical names of Algeria, Djibouti,
39
+ Mauritania, Morocco and Tunisia are generally rendered in
40
+ the traditional manner which conforms to the principles of
41
+ the French orthography.
42
+ The previous UN-approved system is still found in
43
+ considerable international usage.
44
+ Arabic is written from right to left. The Arabic script
45
+ usually omits vowel points and diacritical marks from
46
+ writing which makes it difficult to obtain uniform results
47
+ in the romanization of Arabic. It is essential to identify
48
+ correctly the words which appear in any particular name
49
+ and to know the standard Arabic-script spelling including
50
+ the relevant vowels. One must also take into account
51
+ dialectal and idiosyncratic deviations. The romanization
52
+ is generally reversible though there may be some ambiguous
53
+ letter sequences (dh, kh, sh, th) which may also point to
54
+ combinations of Arabic characters in addition to the
55
+ respective single characters.
56
+ notes:
57
+ - |
58
+ The Survey of Egypt System (SES) of romanization has the following correspondences with
59
+ the UN system:
60
+ á = a # ـَى fatha followed by ى which is ا not ي
61
+ ā = â (a) # ـَا fatha followed by alef // آ
62
+ -ah (ة- = (a # ة ta' marboota at the end of a sentence
63
+ aw = ô (au) # ـَوْ
64
+ ay = ei (ai) # ـَيْ
65
+ ḏ = ḍ # ض
66
+ dh = dh (z) # ذ
67
+ d͟h = ẓ (d) # ظ
68
+ ẖ = ḥ # ح
69
+ ī = î
70
+ j = g (j)
71
+ q = q (k)
72
+ s = s (c)
73
+ s̱ = ṣ
74
+ ṯ = ṭ
75
+ th = th (t)
76
+ ū = û
77
+ ‘ = ‛
78
+ - |
79
+ The variants in parentheses are used depending on pronunciation and tradition. Not all the
80
+ variations have been given above. The article is always written el- (El-Kafr el-Qadîm, Sharm
81
+ el-Sheikh).
82
+ }
83
+
84
+ tests {
85
+ # Examples taken from:
86
+ # https://unstats.un.org/unsd/geoinfo/geonames/
87
+ test "شَرم الشَيْخ", "Sharm el-Sheikh"
88
+ test "الكَفر القَدِيم", "El-Kafr el-Qadîm"
89
+ }
90
+
91
+ dependency "un-ara-Arab-Latn-2017", as: arablatn
92
+
93
+ stage {
94
+
95
+
96
+ # CHARACTERS
97
+ parallel {
98
+
99
+
100
+ # special pointed letters
101
+ sub "\u0639\u064e", "‛a" # عَ
102
+ sub "\u0639\u0650", "‛i" # عِ
103
+ sub "\u0639\u064f", "‛û" # عُ
104
+ # handle MacOS regex difference
105
+ sub "\u0639\u064f\u0648", "‛û" # عُو damma followed by و
106
+ sub "\u0650\u064a", "î" # ـِي kasra followed by ي
107
+ sub "\u0650\u064a\u0651\u064e", "îy" # ـِيَّ
108
+ sub "\u064f\u0648", "û" # ـُو damma followed by و
109
+ sub "\u064e\u0627", any(["â", "a"]) # ـَا fatha followed by ا
110
+ sub "\u064e\u0649", "a" # ـَى fatha followed by ى which is ا not ي
111
+ sub "\u064e\u0648\u0652", any(["ô", "au"]) # ـَوْ
112
+ sub "\u064e\u064a\u0652", any(["ei", "ai"]) # ـَيْ
113
+ sub "\u0622", any(["â", "a"]) # آ
114
+
115
+ # ta' marboota in iso-233-1984 is all the same `a`
116
+ sub "\u0629" + line_end, "a"
117
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
118
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
119
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
120
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
121
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
122
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
123
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
124
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
125
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
126
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
127
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
128
+ sub "\u0629", "a", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
129
+
130
+
131
+ # Sun letters
132
+ sub boundary + "\u0627\u0644\u062a", "el-t" # الت
133
+ sub boundary + "\u0627\u0644\u062b", any(["el-th", "el-t"]) # الث
134
+ sub boundary + "\u0627\u0644\u062f", "el-d" # الد
135
+ sub boundary + "\u0627\u0644\u0630", any(["el-dh", "el-z"]) # الذ
136
+ sub boundary + "\u0627\u0644\u0631", "el-r" # الر
137
+ sub boundary + "\u0627\u0644\u0632", "el-z" # الز
138
+ sub boundary + "\u0627\u0644\u0633", any(["el-s", "el-c"]) # الس
139
+ sub boundary + "\u0627\u0644\u0634", "el-sh" # الش
140
+ sub boundary + "\u0627\u0644\u0635", "el-ṣ" # الص
141
+ sub boundary + "\u0627\u0644\u0636", "el-ḍ" # الض
142
+ sub boundary + "\u0627\u0644\u0637", "el-ṭ" # الط
143
+ sub boundary + "\u0627\u0644\u0638", any(["el-ẓ", "el-d"]) # الظ
144
+ sub boundary + "\u0627\u0644\u0644", "el-l" # الل
145
+ sub boundary + "\u0627\u0644\u0646", "el-n" # الن
146
+
147
+
148
+ # shadda
149
+ sub "\u062b\u0651", any(["thth", "tt"]) # ث
150
+ sub "\u062c\u0651", any(["gg", "jj"]) # ج
151
+ sub "\u062d\u0651", "ḥḥ" # ح
152
+ sub "\u062e\u0651", "khkh" # خ
153
+
154
+ sub "\u0633\u0651", any(["ss", "cc"]) # س
155
+ sub "\u0635\u0651", "ṣṣ" # ص
156
+ sub "\u0636\u0651", "ḍḍ" # ض
157
+ sub "\u0637\u0651", "ṭṭ" # ط
158
+ sub "\u0638\u0651", any(["ẓẓ", "dd"]) # ظ
159
+ sub "\u0642\u0651", any(["qq", "kk"]) # ق
160
+
161
+ sub boundary + "\u0627\u0644", "el-" # ال
162
+
163
+ # normal letters
164
+ sub "\u062c", any(["g", "j"]) # ج
165
+ sub "\ufe9f", any(["g", "j"]) # ﺟ
166
+ sub "\ufea0", any(["g", "j"]) # ﺠ
167
+ sub "\ufe9e", any(["g", "j"]) # ﺞ
168
+
169
+ sub "\u062d", "ḥ" # ح
170
+ sub "\ufea3", "ḥ" # ﺣ
171
+ sub "\ufea4", "ḥ" # ﺤ
172
+ sub "\ufea2", "ḥ" # ﺢ
173
+
174
+ sub "\u062e", "kh" # خ
175
+ sub "\ufea7", "kh" # ﺧ
176
+ sub "\ufea8", "kh" # ﺨ
177
+ sub "\ufea6", "kh" # ﺦ
178
+
179
+ sub "\u0630", any(["dh", "z"]) # ذ
180
+ sub "\ufeac", any(["dh", "z"]) # ﺬ
181
+
182
+
183
+ sub "\u0633", any(["s", "c"]) # س
184
+ sub "\ufeb3", any(["s", "c"]) # ﺳ
185
+ sub "\ufeb4", any(["s", "c"]) # ﺴ
186
+ sub "\ufeb2", any(["s", "c"]) # ﺲ
187
+
188
+ sub "\u0635", "ṣ" # ص
189
+ sub "\ufebb", "ṣ" # ﺻ
190
+ sub "\ufebc", "ṣ" # ﺼ
191
+ sub "\ufeba", "ṣ" # ﺺ
192
+
193
+ sub "\u0636", "ḍ" # ض
194
+ sub "\ufebf", "ḍ" # ﺿ
195
+ sub "\ufec0", "ḍ" # ﻀ
196
+ sub "\ufebe", "ḍ" # ﺾ
197
+
198
+ sub "\u0637", "ṭ" # ط
199
+ sub "\ufec3", "ṭ" # ﻃ
200
+ sub "\ufec4", "ṭ" # ﻄ
201
+ sub "\ufec2", "ṭ" # ﻂ
202
+
203
+ sub "\u0639", "‛" # ع
204
+ sub "\ufecb", "‛" # ﻋ
205
+ sub "\ufecc", "‛" # ﻌ
206
+ sub "\ufeca", "‛" # ﻊ
207
+
208
+ sub "\u0638", any(["ẓ", "d"]) # ظ
209
+ sub "\ufec7", any(["ẓ", "d"]) # ظ
210
+ sub "\ufec8", any(["ẓ", "d"]) # ظ
211
+ sub "\ufec6", any(["ẓ", "d"]) # ظ
212
+
213
+ sub "\u0642", any(["q", "k"]) # ق
214
+ sub "\ufed7", any(["q", "k"]) # ﻗ
215
+ sub "\ufed8", any(["q", "k"]) # ﻘ
216
+ sub "\ufed6", any(["q", "k"]) # ﻖ
217
+ }
218
+
219
+ run map.arablatn.stage.main
220
+
221
+ # POSTRULES
222
+ sub " El-", " el-" # الص
223
+
224
+
225
+ }
@@ -0,0 +1,171 @@
1
+ metadata {
2
+ authority_id: stategeocadastre
3
+ id: 1993
4
+ language: iso-639-2:ukr
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: PROVISIONAL RULES OF REPRODUCING LETTERS OF THE UKRAINIAN ALPHABET WITH LATIN (ENGLISH) CHARACTERS
8
+ url: https://unstats.un.org/unsd/geoinfo/UNGEGN/docs/17th-gegn-docs/17th_gegn_WP73.pdf
9
+ creation_date: 1993
10
+ description: |
11
+ These Rules are intended for Romanized transliteration of Ukrainian
12
+ geographic names in international cartographic editions.
13
+
14
+ Geographic names of Russia, Byelorussia, Bulgaria and other states
15
+ using the Cyrillic alphabet are transliterated according to rules
16
+ accepted in those states.
17
+
18
+ These Rules come into effect from the moment of their approval by
19
+ the Main Administration of Geodesy, Cartography and Cadastre and
20
+ will be effective until the introduction of a State standard of
21
+ Ukraine regulating the Romanized transliteration of the Ukrainian
22
+ alphabet.
23
+
24
+ notes:
25
+ - No apostrophe (’) is used in transliteration, the combination "ьо" is transliterated as "io"
26
+ - Use of capitals in Latin version of Ukrainian geographic names correspond to the Ukrainian spelling
27
+ - Generics geographical terms standing before or after a name in full or abbreviated form are transliterated
28
+ - Romanized versions of complex and compound Ukrainian toponyms (one word, hyphenated or separate words) will follow the Ukrainian spelling
29
+ - In indexes of Romanized geographical names entries must be arranged in the order of the Latin (English) alphabet
30
+ - Geographic names of Russia, Byelorussia, Bulgaria and other states using the Cyrillic alphabet are transliterated according to rules accepted in those states.
31
+ - "Ed: There seems to be a mistake in the source document. 'ц' should be replaced with ts instead 'tz'."
32
+ }
33
+
34
+ tests {
35
+ test "Кам’янка", "Kamianka" # note[1]
36
+ test "Сьомаки", "Siomaky" # note[1]
37
+ test "Усть-Чорна", "Ust’-Chorna" # note[2]
38
+ test "Чорне море", "Chorne more" # note[2]
39
+ test "оз. Сиваш", "oz. Syvash" # note[3]
40
+ test "Кримський канал", "Kryms’kyi kanal" # note[3] # ! Example had typo in original document "Krums’kyi kanal"
41
+ test "Гола Пристань", "Hola Prystan’"
42
+ test "Корсунь Шевченківський", "Korsun’ Shevchenkivs’kyi"
43
+ test "Верхньодніпровськ", "Verkhniodniprovs’k"
44
+ test "Варва", "Varva"
45
+ test "Броди", "Brody"
46
+ test "Верховина", "Verkhovyna"
47
+ test "Глухів", "Hlukhiv"
48
+ test "Великий", "Velykyi"
49
+ test "Ґрунь(гора)", "Grun’(hora)"
50
+ test "Димер", "Dymer"
51
+ test "Срібне", "Sribne"
52
+ test "Євпаторія", "Yevpatoriia"
53
+ test "Єнакієве", "Yenakiieve"
54
+ test "Жолква", "Zholkva"
55
+ test "Затока", "Zatoka"
56
+ test "Житомир", "Zhytomyr"
57
+ test "Інгул", "Inhul"
58
+ test "Зміїв", "Zmiïv"
59
+ test "Йосипівка", "Yosypivka"
60
+ test "Стрий", "Stryi"
61
+ test "Калуш", "Kalush"
62
+ test "Лубни", "Lubny"
63
+ test "Миколаїв", "Mykolaïv"
64
+ test "Ніжин", "Nizhyn"
65
+ test "Острог", "Ostroh"
66
+ test "Печеніги", "Pechenihy"
67
+ test "Рівне", "Rivne"
68
+ test "Сарата", "Sarata"
69
+ test "Тячів", "Tiachiv"
70
+ test "Узин", "Uzyn"
71
+ test "Форос", "Foros"
72
+ test "Харків", "Kharkiv"
73
+ test "Цюрупінськ", "Tsiurupins’k"
74
+ test "Черемош", "Cheremosh"
75
+ test "Шацьк", "Shats’k"
76
+ test "Щорс", "Shchors"
77
+ test "Хмельницький", "Khmel’nyts’kyi" # ! Example had typo in original document "Khmel’nyts’ky"
78
+ test "Юрівка", "Yurivka"
79
+ test "Любеч", "Liubech"
80
+ test "Ялта", "Yalta"
81
+ test "Ясіня", "Yasinia"
82
+ }
83
+
84
+ stage {
85
+
86
+ # RULES
87
+ sub boundary + "\u0404", "Ye", not_before: "\u2019" # Є in initial position -> Ye
88
+ sub boundary + "\u0454", "ye", not_before: "\u2019" # є in initial position -> ye
89
+ sub boundary + "\u0419", "Y", not_before: "\u2019" # Й in initial position -> Y
90
+ sub boundary + "\u0419", "y", not_before: "\u2019" # й in initial position -> y
91
+ sub boundary + "\u042e", "Yu", not_before: "\u2019" # Ю in initial position -> Yu
92
+ sub boundary + "\u044e", "yu", not_before: "\u2019" # ю in initial position -> yu
93
+ sub boundary + "\u042f", "Ya", not_before: "\u2019" # Я in initial position -> Ya
94
+ sub boundary + "\u044f", "ya", not_before: "\u2019" # я in initial position -> ya
95
+ # note[1]
96
+ sub boundary + "\u2019" + boundary, "" # remove ’
97
+ sub "\u042c\u041e", "IO"
98
+ sub "\u044c\u043e", "io"
99
+
100
+
101
+ # CHARACTERS
102
+ parallel {
103
+ sub "А", "A" # А
104
+ sub "Б", "B" # Б
105
+ sub "В", "V" # В
106
+ sub "Г", "H" # Г
107
+ sub "Ґ", "G" # Ґ
108
+ sub "Д", "D" # Д
109
+ sub "Е", "E" # Е
110
+ sub "Є", "Ie" # Є
111
+ sub "Ж", "Zh" # Ж
112
+ sub "З", "Z" # З
113
+ sub "И", "Y" # И
114
+ sub "І", "I" # І
115
+ sub "Ї", "Ï" # Ї
116
+ sub "Й", "I" # Й
117
+ sub "К", "K" # К
118
+ sub "Л", "L" # Л
119
+ sub "М", "M" # М
120
+ sub "Н", "N" # Н
121
+ sub "О", "O" # О
122
+ sub "П", "P" # П
123
+ sub "Р", "R" # Р
124
+ sub "С", "S" # С
125
+ sub "Т", "T" # Т
126
+ sub "У", "U" # У
127
+ sub "Ф", "F" # Ф
128
+ sub "Х", "Kh" # Х
129
+ sub "Ц", "Ts" # Ц note[7]
130
+ sub "Ч", "Ch" # Ч
131
+ sub "Ш", "Sh" # Ш
132
+ sub "Щ", "Shch" # Щ
133
+ sub "Ь", "’" # Ь
134
+ sub "Ю", "Iu" # Ю
135
+ sub "Я", "Ia" # Я
136
+ sub "а", "a" # а
137
+ sub "б", "b" # б
138
+ sub "в", "v" # в
139
+ sub "г", "h" # г
140
+ sub "ґ", "g" # ґ
141
+ sub "д", "d" # д
142
+ sub "е", "e" # е
143
+ sub "є", "ie" # є
144
+ sub "ж", "zh" # ж
145
+ sub "з", "z" # з
146
+ sub "и", "y" # и
147
+ sub "і", "i" # і
148
+ sub "ї", "i" # ї
149
+ sub "й", "i" # й
150
+ sub "к", "k" # к
151
+ sub "л", "l" # л
152
+ sub "м", "m" # м
153
+ sub "н", "n" # н
154
+ sub "о", "o" # о
155
+ sub "п", "p" # п
156
+ sub "р", "r" # р
157
+ sub "с", "s" # с
158
+ sub "т", "t" # т
159
+ sub "у", "u" # у
160
+ sub "ф", "f" # ф
161
+ sub "х", "kh" # х
162
+ sub "ц", "ts" # ц note[7]
163
+ sub "ч", "ch" # ч
164
+ sub "ш", "sh" # ш
165
+ sub "щ", "shch" # щ
166
+ sub "ю", "iu" # ю
167
+ sub "я", "ia" # я
168
+ sub "ь", "’" # ь
169
+ }
170
+
171
+ }
@@ -0,0 +1,149 @@
1
+ metadata {
2
+ authority_id: ua
3
+ id: 1996
4
+ language: iso-639-2:ukr
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: Government of Ukraine Ukrainian System (1996)
8
+ url: http://transliteration.eki.ee/pdf/Ukrainian.pdf
9
+ creation_date: 1996
10
+ description: Romanization table for Ukrainian. The current national system of romanization.
11
+
12
+ notes:
13
+ - gh is used in the romanization of зг zgh.
14
+ - In initial position є -> ye, ї -> yi, й -> y, ю -> yu, я -> ya.
15
+ }
16
+
17
+ tests {
18
+ test "Алушта", "Alushta"
19
+ test "Борщагівка", "Borschahivka"
20
+ test "Вишгород", "Vyshhorod"
21
+ test "Гадяч", "Hadiach"
22
+ test "Згорани", "Zghorany"
23
+ test "Ґалаґан", "Galagan"
24
+ test "Дон", "Don"
25
+ test "Рівне", "Rivne"
26
+ test "Єнакієве", "Yenakiieve"
27
+ test "Наєнко", "Naienko"
28
+ test "Житомир", "Zhytomyr"
29
+ test "Запоріжжя", "Zaporizhzhia"
30
+ test "Закарпаття", "Zakarpattia"
31
+ test "Медвин", "Medvyn"
32
+ test "Іршава", "Irshava"
33
+ test "Їжакевич", "Yizhakevych"
34
+ test "Кадіївка", "Kadiivka"
35
+ test "Йосипівка", "Yosypivka"
36
+ test "Київ", "Kyiv"
37
+ test "Лебедин", "Lebedyn"
38
+ test "Миколаїв", "Mykolaiv"
39
+ test "Ніжин", "Nizhyn"
40
+ test "Одеса", "Odesa"
41
+ test "Полтава", "Poltava"
42
+ test "Ромни", "Romny"
43
+ test "Суми", "Sumy"
44
+ test "Тетерів", "Teteriv"
45
+ test "Ужгород", "Uzhhorod"
46
+ test "Фастів", "Fastiv"
47
+ test "Харків", "Kharkiv"
48
+ test "Біла Церква", "Bila Tserkva"
49
+ test "Чернівці", "Chernivtsi"
50
+ test "Шостка", "Shostka"
51
+ test "Гоща", "Hoscha"
52
+ test "Русь", "Rus’"
53
+ test "Юрій", "Yurii"
54
+ test "Крюківка", "Kriukivka"
55
+ test "Яготин", "Yahotyn"
56
+ test "Ічня", "Ichnia"
57
+ test "Знам’янка", "Znam”ianka"
58
+ }
59
+
60
+ stage {
61
+
62
+ # RULES
63
+ sub "\u0413", "Gh", before: any("Зз") # Г after З or з
64
+ sub "\u0433", "gh", before: any("Зз") # г after З or з
65
+ sub boundary + "\u0404", "Ye", not_before: boundary + "\u2019" # Є in initial position -> Ye
66
+ sub boundary + "\u0454", "ye", not_before: boundary + "\u2019" # є in initial position -> ye
67
+ sub boundary + "\u0407", "Yi", not_before: boundary + "\u2019" # Ї in initial position -> Yi
68
+ sub boundary + "\u0457", "yi", not_before: boundary + "\u2019" # ї in initial position -> yi
69
+ sub boundary + "\u0419", "Y", not_before: boundary + "\u2019" # Й in initial position -> Y
70
+ sub boundary + "\u0419", "y", not_before: boundary + "\u2019" # й in initial position -> y
71
+ sub boundary + "\u042e", "Yu", not_before: boundary + "\u2019" # Ю in initial position -> Yu
72
+ sub boundary + "\u044e", "yu", not_before: boundary + "\u2019" # ю in initial position -> yu
73
+ sub boundary + "\u042f", "Ya", not_before: boundary + "\u2019" # Я in initial position -> Ya
74
+ sub boundary + "\u044f", "ya", not_before: boundary + "\u2019" # я in initial position -> ya
75
+ sub boundary + "\u2019" + boundary, "”" # ’ in the middle of a word -> ”
76
+
77
+
78
+ # CHARACTERS
79
+ parallel {
80
+ sub "А", "A" # А
81
+ sub "Б", "B" # Б
82
+ sub "В", "V" # В
83
+ sub "Г", "H" # Г
84
+ sub "Ґ", "G" # Ґ
85
+ sub "Д", "D" # Д
86
+ sub "Е", "E" # Е
87
+ sub "Є", "Ie" # Є
88
+ sub "Ж", "Zh" # Ж
89
+ sub "З", "Z" # З
90
+ sub "И", "Y" # И
91
+ sub "І", "I" # І
92
+ sub "Ї", "I" # Ї
93
+ sub "Й", "I" # Й
94
+ sub "К", "K" # К
95
+ sub "Л", "L" # Л
96
+ sub "М", "M" # М
97
+ sub "Н", "N" # Н
98
+ sub "О", "O" # О
99
+ sub "П", "P" # П
100
+ sub "Р", "R" # Р
101
+ sub "С", "S" # С
102
+ sub "Т", "T" # Т
103
+ sub "У", "U" # У
104
+ sub "Ф", "F" # Ф
105
+ sub "Х", "Kh" # Х
106
+ sub "Ц", "Ts" # Ц
107
+ sub "Ч", "Ch" # Ч
108
+ sub "Ш", "Sh" # Ш
109
+ sub "Щ", "Sch" # Щ
110
+ sub "Ю", "Iu" # Ю
111
+ sub "Я", "Ia" # Я
112
+ sub "Ь", "’" # Ь -> ’
113
+ sub "а", "a" # а
114
+ sub "б", "b" # б
115
+ sub "в", "v" # в
116
+ sub "г", "h" # г
117
+ sub "ґ", "g" # ґ
118
+ sub "д", "d" # д
119
+ sub "е", "e" # е
120
+ sub "є", "ie" # є
121
+ sub "ж", "zh" # ж
122
+ sub "з", "z" # з
123
+ sub "и", "y" # и
124
+ sub "і", "i" # і
125
+ sub "ї", "i" # ї
126
+ sub "й", "i" # й
127
+ sub "к", "k" # к
128
+ sub "л", "l" # л
129
+ sub "м", "m" # м
130
+ sub "н", "n" # н
131
+ sub "о", "o" # о
132
+ sub "п", "p" # п
133
+ sub "р", "r" # р
134
+ sub "с", "s" # с
135
+ sub "т", "t" # т
136
+ sub "у", "u" # у
137
+ sub "ф", "f" # ф
138
+ sub "х", "kh" # х
139
+ sub "ц", "ts" # ц
140
+ sub "ч", "ch" # ч
141
+ sub "ш", "sh" # ш
142
+ sub "щ", "sch" # щ
143
+ sub "ю", "iu" # ю
144
+ sub "я", "ia" # я
145
+ sub "ь", "’" # ь -> ’
146
+ }
147
+
148
+ }
149
+