interscript 0.1.2 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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,71 @@
1
+ ---
2
+ authority_id: alalc
3
+ id: 2011
4
+ language: iso-639-2:sin
5
+ source_script: Sinh
6
+ destination_script: Latn
7
+ name: Sinhalese Romanization, 2011
8
+ alias:
9
+ ogc11122:
10
+ code: sin_Sinh2Latn_ALA_2011
11
+ description: Sinhalese ALA-Library of Congress 2011 System
12
+ url: https://www.loc.gov/catdir/cpso/romanization/sinhales.pdf
13
+ creation_date: 2011
14
+ description: |
15
+ ALA-LC Romanization table for Sinhalese
16
+
17
+
18
+ notes:
19
+
20
+ - Only the vowel forms that appear at the beginning of a syllable are listed; the forms used for
21
+ vowels following a consonant can be found in grammars; no distinction between the two is
22
+ made in transliteration.
23
+
24
+ - |
25
+ The vowel a is implicit after all consonants and consonant clusters and is supplied in
26
+ transliteration, with the following exceptions:
27
+
28
+ a) when another vowel is indicated by its appropriate sign; and
29
+ b) when the absence of any vowel is indicated by the sign ් called virāma.
30
+
31
+ - |
32
+ Exceptions: Anusvāra is transliterated by:
33
+
34
+ a) ṅ before gutturals,
35
+ b) ñ before palatals,
36
+ c) ṇ before cerebrals,
37
+ d) n before dentals, and
38
+ e) m before labials.
39
+
40
+ - |
41
+ Exceptions:
42
+ a) when saññaka represents a nasal, it is romanized according to the rule for anusvāra.
43
+ b) when saññaka is combined with an aspirated consonant, the combination is romanized as a non-aspirated, followed by an aspirated consonant.
44
+
45
+
46
+ tests:
47
+ - source: "හිටපු අග්‍රාමාත්‍ය රනිල් වික්‍රමසිංහ අප්‍රේල් 21 ප්‍රහාරය සම්බන්ධයෙන් විමර්ශනය කරන ජනාධිපති පරීක්ෂණ කොමිසම හමුවේ දෙවෙනි දිනටත් සාක්ෂි ලබාදීමට පැමිණෙයි"
48
+ expected: "hiṭapu agrāmātya ranil vikramasiṃha aprēl 21 prahāraya sambanandhayen vimarśanaya karana janādhipati parīkṣaṇa komisama hamuvē deveni dinaṭat sākṣi labādīmaṭa pămiṇeyi"
49
+ - source: "පෑලියගොඩ මත්ස්‍ය තොග වෙළෙදපොළට පිවිසෙන පිවිසුම් මාර්ගය පුළුල් කර සංවර්ධනයට පියවර - මහාමාර්ග අමාත්‍ය ජොන්ස්ටන් ප්‍රනාන්දු"
50
+ expected: "pâliyagoḍa matsya toga veḷedapoḷaṭa pivisena pivisum māraṅgaya puḷul kara saṃvarandhanayaṭa piyavara - mahāmāraṅga amātya jonsaṇṭan pranānandu"
51
+ - source: "මව්බිමටත් රට වැසියන්ටත් ආශිර්වාද කරමින් වි⁣ශේෂ ආගමික වැඩසටහන් මාලාවක්"
52
+ expected: "mavbimaṭat raṭa văsiyanaṇṭat āśirvāda karamin vi⁣śēṣa āgamika văḍasaṭahan mālāvak"
53
+ - source: "මිනුවන්ගොඩ කොරෝනා පොකුරින් තවත් ආසාදිතයින් 49 දෙනකු හඳුනා ගෙන"
54
+ expected: "minuvanaṅgoḍa korōnā pokurin tavat āsāditayin 49 denaku handunā gena"
55
+ - source: "ඉරණවිල වෙරළේ නාඳුනන ධීවර යාත‍්‍රා දෙකක්"
56
+ expected: "iraṇavila veraḷē nāndunana dhīvara yātarā dekak"
57
+ - source: "මඩකලපුව මංගලාරාමේ හාමුදුරුවන්ට මරණ තර්ජන - ආරක්ෂාවත් අඩුකරලා"
58
+ expected: "maḍakalapuva maṃgalārāmē hāmuduruvanaṇṭa maraṇa tarañjana - ārakṣāvat aḍukaralā"
59
+ - source: "හොරට කහ කුඩු හැදූ දෙදෙනෙක් බඩුත් එක්ක දැලේ"
60
+ expected: "horaṭa kaha kuḍu hădū dedenek baḍut ekaṅka dălē"
61
+ - source: "ඉංගිරියේ ජලභීතිකාව වැළඳුනු නරියෙකු තෙදිනක මෙහෙයුමකින් අල්ලා ගනී"
62
+ expected: "iṃgiriyē jalabhītikāva văḷandunu nariyeku tedinaka meheyumakin allā ganī"
63
+ - source: "බෞද්ධ දර්ශනයට අනුව අපි උපයන ධනය බුද්ධිමත් ලෙස විසර්ජනය කරන්නේ කෙසේ ද?"
64
+ expected: "baudandha darśanayaṭa anuva api upayana dhanaya budandhimat lesa visarañjanaya karanannē kesē da?"
65
+ - source: "ඉන්දීය ජාතිකයන් සමග එක්වන මන්නාරමේ ධීවරයන්ට අනතුරු අගවයි"
66
+ expected: "inandīya jātikayan samaga ekvana manannāramē dhīvarayanaṇṭa anaturu agavayi"
67
+ - source: "තේ නැවත වගාවට පෙර පස පුනරුත්ථාපනයට කෙටි මග"
68
+ expected: "tē năvata vagāvaṭa pera pasa punarutanthāpanayaṭa keṭi maga"
69
+
70
+ map:
71
+ inherit: 'alalc-sin-Sinh-Latn-1997'
@@ -0,0 +1,118 @@
1
+ ---
2
+ authority_id: alalc
3
+ id: 1997
4
+ language: iso-639-2:srp
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: Serbian and Makedonian Romanization, ALA-LC 1997 System
8
+ alias:
9
+ ogc11122:
10
+ code: srp_Cyrl2Latn_ALA_1997
11
+ description: Serbian and Macedonian ALA-Library of Congress 1997 System
12
+ url: http://catdir.loc.gov/catdir/cpso/romanization/serbian.pdf
13
+ creation_date: 1997
14
+ description: ALA-LC Romanization table for Serbian and Makedonian.
15
+
16
+ notes:
17
+ - Special characters in romanization
18
+ Đ - D with crossbar (upper case). USMARC hexadecimal code A3.
19
+ đ - d with crossbar (upper case). USMARC hexadecimal code B3.
20
+
21
+ - Character modifiers in romanization
22
+ ´ - acute. USMARC hexadecimal code E2.
23
+ ˇ - hachek. USMARC hexadecimal code E9.
24
+
25
+ tests:
26
+ - source: Општина Ердут
27
+ expected: Opština Erdut
28
+ - source: Општина Двор
29
+ expected: Opština Dvor
30
+ - source: ЛУЃЕ луѓе
31
+ expected: LUǴE luǵe
32
+ - source: ЅВЕЗДА ѕвезда Ѕвезда
33
+ expected: DZVEZDA dzvezda Dzvezda
34
+ - source: ЌАРУВАЊЕ ќарување
35
+ expected: ḰARUVANJE ḱaruvanje
36
+
37
+ map:
38
+ postrules:
39
+ # DZ
40
+ - pattern: "((?<=[[:upper:]])Dz(?=[[:upper:]])?|(?<=[[:upper:]])?Dz(?=[[:upper:]]))"
41
+ result: "DZ"
42
+ #LJ
43
+ - pattern: "((?<=[[:upper:]])Lj(?=[[:upper:]])?|(?<=[[:upper:]])?Lj(?=[[:upper:]]))"
44
+ result: "LJ"
45
+ #NJ
46
+ - pattern: "((?<=[[:upper:]])Nj(?=[[:upper:]])?|(?<=[[:upper:]])?Nj(?=[[:upper:]]))"
47
+ result: "NJ"
48
+ #DŽ
49
+ - pattern: "((?<=[[:upper:]])Dž(?=[[:upper:]])?|(?<=[[:upper:]])?Dž(?=[[:upper:]]))"
50
+ result: "DŽ"
51
+
52
+ characters:
53
+ "\u0410": "A"
54
+ "\u0411": "B"
55
+ "\u0412": "V"
56
+ "\u0413": "G"
57
+ "\u0403": "\u01F4" # Ǵ
58
+ "\u0414": "D"
59
+ "\u0402": "\u0110" # Đ
60
+ "\u0415": "E"
61
+ "\u0416": "\u005a\u030c" # Ž
62
+ "\u0417": "Z"
63
+ "\u0405": "Dz"
64
+ "\u0418": "I"
65
+ "\u0408": "J"
66
+ "\u041A": "K"
67
+ "\u040C": "\u1E30" # Ḱ
68
+ "\u041B": "L"
69
+ "\u0409": "Lj"
70
+ "\u041C": "M"
71
+ "\u041D": "N"
72
+ "\u040A": "Nj"
73
+ "\u041E": "O"
74
+ "\u041F": "P"
75
+ "\u0420": "R"
76
+ "\u0421": "S"
77
+ "\u0422": "T"
78
+ "\u040B": "\u0043\u0301" # Ć
79
+ "\u0423": "U"
80
+ "\u0424": "F"
81
+ "\u0425": "H"
82
+ "\u0426": "C"
83
+ "\u0427": "\u0043\u030c" # Č
84
+ "\u040F": "D\u007a\u030c" # Dž
85
+ "\u0428": "\u0053\u030c" # Š
86
+ "\u0430": "a"
87
+ "\u0431": "b"
88
+ "\u0432": "v"
89
+ "\u0433": "g"
90
+ "\u0453": "\u01F5" # ǵ
91
+ "\u0434": "d"
92
+ "\u0452": "\u0111" # đ
93
+ "\u0435": "e"
94
+ "\u0436": "\u007a\u030c" # ž
95
+ "\u0437": "z"
96
+ "\u0455": "dz"
97
+ "\u0438": "i"
98
+ "\u0458": "j"
99
+ "\u043A": "k"
100
+ "\u045C": "\u1E31" # ḱ
101
+ "\u043B": "l"
102
+ "\u0459": "lj"
103
+ "\u043C": "m"
104
+ "\u043D": "n"
105
+ "\u045A": "nj"
106
+ "\u043E": "o"
107
+ "\u043F": "p"
108
+ "\u0440": "r"
109
+ "\u0441": "s"
110
+ "\u0442": "t"
111
+ "\u045B": "\u0063\u0301" # ć
112
+ "\u0443": "u"
113
+ "\u0444": "f"
114
+ "\u0445": "h"
115
+ "\u0446": "c"
116
+ "\u0447": "\u0063\u030c" # č
117
+ "\u045F": "d\u007a\u030c" # dž
118
+ "\u0448": "\u0073\u030c" # š
@@ -0,0 +1,135 @@
1
+ ---
2
+ authority_id: alalc
3
+ id: 2013
4
+ language: iso-639-2:srp
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: ROMANIZATION OF SERBIAN, ALA-LC 2013 System
8
+ url: https://www.loc.gov/catdir/cpso/romanization/serbian.pdf
9
+ creation_date: 2013
10
+ description: |
11
+ Serbian uses the Cyrillic and Roman alphabets. When the Roman alphabet is used it is the same as Croatian.
12
+
13
+ tests:
14
+ - source: Шупља Стена
15
+ expected: Šuplja Stena
16
+ - source: Чукарица
17
+ expected: Čukarica
18
+ - source: Црна Трава
19
+ expected: Crna Trava
20
+ - source: Херцег Нови
21
+ expected: Herceg Novi
22
+ - source: Улцињ
23
+ expected: Ulcinj
24
+ - source: Ужице
25
+ expected: Užice
26
+ - source: Тресаначка Река
27
+ expected: Tresanačka Reka
28
+ - source: Сјеница
29
+ expected: Sjenica
30
+ - source: Рожаје
31
+ expected: Rožaje
32
+ - source: Пљевља
33
+ expected: Pljevlja
34
+ - source: Оџаци
35
+ expected: Odžaci
36
+ - source: Никшић
37
+ expected: Nikšić
38
+ - source: Медвеђа
39
+ expected: Medveđa
40
+ - source: Лозница
41
+ expected: Loznica
42
+ - source: Књажевац
43
+ expected: Knjaževac
44
+ - source: Зрењанин
45
+ expected: Zrenjanin
46
+ - source: Житорађа
47
+ expected: Žitorađa
48
+ - source: Ервеник
49
+ expected: Ervenik
50
+ - source: Доње Љупче
51
+ expected: Donje Ljupče
52
+ - source: Гусиње
53
+ expected: Gusinje
54
+ - source: ГУСИЊЕ
55
+ expected: GUSINJE
56
+ - source: Врњачка Бања
57
+ expected: Vrnjačka Banja
58
+ - source: Бијело Поље
59
+ expected: Bijelo Polje
60
+ - source: Алибунар
61
+ expected: Alibunar
62
+
63
+ map:
64
+ postrules:
65
+ #LJ
66
+ - pattern: "((?<=[[:upper:]])Lj(?=[[:upper:]])?|(?<=[[:upper:]])?Lj(?=[[:upper:]]))"
67
+ result: "LJ"
68
+ #NJ
69
+ - pattern: "((?<=[[:upper:]])Nj(?=[[:upper:]])?|(?<=[[:upper:]])?Nj(?=[[:upper:]]))"
70
+ result: "NJ"
71
+ #DŽ
72
+ - pattern: "((?<=[[:upper:]])Dž(?=[[:upper:]])?|(?<=[[:upper:]])?Dž(?=[[:upper:]]))"
73
+ result: "DŽ"
74
+
75
+ characters:
76
+ "\u0410": "A"
77
+ "\u0411": "B"
78
+ "\u0412": "V"
79
+ "\u0413": "G"
80
+ "\u0414": "D"
81
+ "\u0402": "\u0110" # Đ
82
+ "\u0415": "E"
83
+ "\u0416": "\u005a\u030c" # Ž
84
+ "\u0417": "Z"
85
+ "\u0418": "I"
86
+ "\u0408": "J"
87
+ "\u041A": "K"
88
+ "\u041B": "L"
89
+ "\u0409": "Lj"
90
+ "\u041C": "M"
91
+ "\u041D": "N"
92
+ "\u040A": "Nj"
93
+ "\u041E": "O"
94
+ "\u041F": "P"
95
+ "\u0420": "R"
96
+ "\u0421": "S"
97
+ "\u0422": "T"
98
+ "\u040B": "\u0043\u0301" # Ć
99
+ "\u0423": "U"
100
+ "\u0424": "F"
101
+ "\u0425": "H"
102
+ "\u0426": "C"
103
+ "\u0427": "\u0043\u030c" # Č
104
+ "\u040F": "D\u007a\u030c" # Dž
105
+ "\u0428": "\u0053\u030c" # Š
106
+ "\u0430": "a"
107
+ "\u0431": "b"
108
+ "\u0432": "v"
109
+ "\u0433": "g"
110
+ "\u0434": "d"
111
+ "\u0452": "\u0111" # đ
112
+ "\u0435": "e"
113
+ "\u0436": "\u007a\u030c" # ž
114
+ "\u0437": "z"
115
+ "\u0438": "i"
116
+ "\u0458": "j"
117
+ "\u043A": "k"
118
+ "\u043B": "l"
119
+ "\u0459": "lj"
120
+ "\u043C": "m"
121
+ "\u043D": "n"
122
+ "\u045A": "nj"
123
+ "\u043E": "o"
124
+ "\u043F": "p"
125
+ "\u0440": "r"
126
+ "\u0441": "s"
127
+ "\u0442": "t"
128
+ "\u045B": "\u0063\u0301" # ć́
129
+ "\u0443": "u"
130
+ "\u0444": "f"
131
+ "\u0445": "h"
132
+ "\u0446": "c"
133
+ "\u0447": "\u0063\u030c" # č
134
+ "\u045F": "d\u007a\u030c" # dž
135
+ "\u0448": "\u0073\u030c" # š
@@ -0,0 +1,62 @@
1
+ ---
2
+ authority_id: alalc
3
+ id: 1997
4
+ language: iso-639-2:tam
5
+ source_script: Taml
6
+ destination_script: Latn
7
+ name: Tamil Romanization, 1997
8
+ alias:
9
+ ogc11122:
10
+ code: tam_Taml2Latn_ALA_1997
11
+ description: Tamil ALA-Library of Congress 1997 System
12
+ url: http://catdir.loc.gov/catdir/cpso/romanization/tamil.pdf
13
+ creation_date: 1997
14
+ description: |
15
+ ALA-LC Romanization table for Tamil
16
+
17
+ notes:
18
+
19
+ - Only the vowel forms that appear at the beginning of a syllable are listed; the forms used for
20
+ vowels following a consonant can be found in grammars; no distinction between the two is
21
+ made in transliteration.
22
+
23
+ - |
24
+ The vowel a is implicit after all consonants and consonant clusters and is supplied in
25
+ transliteration, with the following exceptions:
26
+
27
+ a) when another vowel is indicated by its appropriate sign; and
28
+ b) when the absence of any vowel is indicated by the superscript dot ( ் ) called puḷḷi.
29
+
30
+ - This letter has the same form as the vowel sign for ā appearing after a consonant. Where ambiguity arises, it is written.
31
+
32
+ tests:
33
+ - source: "அழிந்து போன நகரத்தில் , தொலைந்து போன நான்"
34
+ expected: "aḻintu pōṉa nakarattil , tolaintu pōṉa nāṉ"
35
+ - source: "முதன் முதலாக - மை ஃபர்ஸ்ட் சோலோ ட்ராவல்"
36
+ expected: "mutaṉ mutalāka - mai ḵaparsṭ cōlō ṭrāval"
37
+ - source: "வாழ்க்கையில் அவன் போன முதல் சோலோ டிரிப் அது தான்."
38
+ expected: "vāḻkkaiyil avaṉ pōṉa mutal cōlō ṭirip atu tāṉ."
39
+ - source: "ஸ்கூல் ப்ரெண்ட் கார்த்திக் வீட்டுக்கு போய்ட்டு"
40
+ expected: "skūl preṇṭ kārttik vīṭṭukku pōyṭṭu"
41
+ - source: "நாசா வெளியிட்ட வெடிக்கும் நட்சத்திரத்தின் வீடியோ"
42
+ expected: "nācā veḷiyiṭṭa veṭikkum naṭcattirattiṉ vīṭiyō"
43
+ - source: "நாசா வெளியிட்ட வெடிக்கும் நட்சத்திரத்தின் வீடியோ"
44
+ expected: "nācā veḷiyiṭṭa veṭikkum naṭcattirattiṉ vīṭiyō"
45
+ - source: "டார்பிடோவை ஏவ உதவும் சூப்பர்சானிக் ஏவுகணையான ஸ்மார்ட் சோதனை வெற்றி"
46
+ expected: "ṭārpiṭōvai ēva utavum cūpparcāṉik ēvukaṇaiyāṉa smārṭ cōtaṉai veṟṟi"
47
+ - source: "இந்த ஆண்டு மருத்துவத்துக்கான நோபல் பரிசு பெறுபவர்களின் பெயர்கள் அறிவிப்பு"
48
+ expected: "inta āṇṭu maruttuvattukkāṉa nōpal paricu peṟupavarkaḷiṉ peyarkaḷ aṟivippu"
49
+ - source: "மல்லையா விவகாரம்: பிரிட்டன் அரசின் நடவடிக்கைகள் தங்களுக்கு தெரியவில்லை - மத்திய அரசு தகவல்"
50
+ expected: "mallaiyā vivakāram: piriṭṭaṉ araciṉ naṭavaṭikkaikaḷ taṅkaḷukku teriyavillai - mattiya aracu takaval"
51
+ - source: "ஆலோசனைக்குப் பிறகு தேனியில் இருந்து சென்னை புறப்பட்டார் துணை முதலமைச்சர் பன்னீர்செல்வம்"
52
+ expected: "ālōcaṉaikkup piṟaku tēṉiyil iruntu ceṉṉai puṟappaṭṭār tuṇai mutalamaiccar paṉṉīrcelvam"
53
+ - source: "இன்று தான் பேரன் பிறந்தநாள் முடிந்து ஃப்ரீ ஆகி இருக்கிறேன்"
54
+ expected: "iṉṟu tāṉ pēraṉ piṟantanāḷ muṭintu ḵaprī āki irukkiṟēṉ"
55
+
56
+ map:
57
+
58
+ inherit: 'din-tam-Taml-Latn-33903-2016'
59
+
60
+ characters:
61
+
62
+ 'ஃ': 'ḵa'
@@ -0,0 +1,58 @@
1
+ ---
2
+ authority_id: alalc
3
+ id: 2011
4
+ language: iso-639-2:tam
5
+ source_script: Taml
6
+ destination_script: Latn
7
+ name: Tamil Romanization, 2011
8
+ alias:
9
+ ogc11122:
10
+ code: tam_Taml2Latn_ALA_2011
11
+ description: Tamil ALA-Library of Congress 2011 System
12
+ url: https://www.loc.gov/catdir/cpso/romanization/tamil.pdf
13
+ creation_date: 2011
14
+ description: |
15
+ ALA-LC Romanization table for Tamil
16
+
17
+ notes:
18
+
19
+ - Only the vowel forms that appear at the beginning of a syllable are listed; the forms used for
20
+ vowels following a consonant can be found in grammars; no distinction between the two is
21
+ made in transliteration.
22
+
23
+ - |
24
+ The vowel a is implicit after all consonants and consonant clusters and is supplied in
25
+ transliteration, with the following exceptions:
26
+
27
+ a) when another vowel is indicated by its appropriate sign; and
28
+ b) when the absence of any vowel is indicated by the superscript dot ( ் ) called puḷḷi.
29
+
30
+ - This letter has the same form as the vowel sign for ā appearing after a consonant. Where ambiguity arises, it is written.
31
+
32
+ tests:
33
+ - source: "மலையாள நடிகர் சங்கத்திலிருந்து நடிகை பார்வதி திடீர் விலகல்."
34
+ expected: "malaiyāḷa naṭikar caṅkattiliruntu naṭikai pārvati tiṭīr vilakal."
35
+ - source: "சச்சின் டெண்டுல்கரை அலுவலக உதவியாளராக நியமிப்பீர்களா?"
36
+ expected: "cacciṉ ṭeṇṭulkarai aluvalaka utaviyāḷarāka niyamippīrkaḷā?"
37
+ - source: "அமீரகத்தில் தொலைநோக்கி இல்லாமல் நாளை பார்க்கலாம்"
38
+ expected: "amīrakattil tolainōkki illāmal nāḷai pārkkalām"
39
+ - source: "லடாக் யூனியன் பிரதேசம் இந்தியா சட்டவிரோதமாக நிறுவிய ஒரு பகுதி- சீனா மீண்டும் பிடிவாதம்"
40
+ expected: "laṭāk yūṉiyaṉ piratēcam intiyā caṭṭavirōtamāka niṟuviya oru pakuti- cīṉā mīṇṭum piṭivātam"
41
+ - source: "பாலியல் குற்றங்களில் ஈடுபடுவோருக்கு மரண தண்டனை புதிய சட்டம்"
42
+ expected: "pāliyal kuṟṟaṅkaḷil īṭupaṭuvōrukku maraṇa taṇṭaṉai putiya caṭṭam"
43
+ - source: "புதுடெல்லி"
44
+ expected: "putuṭelli"
45
+ - source: "அப்படி விளம்பரத்தில என்ன இருக்கு...?"
46
+ expected: "appaṭi viḷamparattila eṉṉa irukku...?"
47
+ - source: "பூமிக்கும், செவ்வாய் கிரகத்துக்கும் இடையிலான அதிகபட்ச தூரம் ௪௦ கோடியே ௧௩ லட்சம் கி.மீ தொலைவு ஆகும்."
48
+ expected: "pūmikkum, cevvāy kirakattukkum iṭaiyilāṉa atikapaṭca tūram 40 kōṭiyē 13 laṭcam ki.mī tolaivu ākum."
49
+ - source: "அமீரகத்தில் செவ்வாய் கிரகம் குறித்த ஆய்வில் ஈடுபடுவோர் மற்றும் வானியல் நிபுணர்களுக்கு இது ஒரு நல்ல வாய்ப்பாக அமையும்."
50
+ expected: "amīrakattil cevvāy kirakam kuṟitta āyvil īṭupaṭuvōr maṟṟum vāṉiyal nipuṇarkaḷukku itu oru nalla vāyppāka amaiyum."
51
+ - source: "நள்ளிரவு நேரமாக இருந்தால் நமது தலைக்கு மேலே காணலாம். காலை நேரத்தில் மேற்கு மற்றும் தென்மேற்கு திசையில் செவ்வாய் கிரகத்தை பார்க்கலாம்."
52
+ expected: "naḷḷiravu nēramāka iruntāl namatu talaikku mēlē kāṇalām. kālai nērattil mēṟku maṟṟum teṉmēṟku ticaiyil cevvāy kirakattai pārkkalām."
53
+ - source: "வெறும் கண்ணால் பார்க்கும்போது புள்ளியாக ஆரஞ்சு நிறத்தில் பிரகாசமாக தெரியும்."
54
+ expected: "veṟum kaṇṇāl pārkkumpōtu puḷḷiyāka ārañcu niṟattil pirakācamāka teriyum."
55
+
56
+ map:
57
+
58
+ inherit: 'alalc-tam-Taml-Latn-1997'
@@ -0,0 +1,145 @@
1
+ ---
2
+ authority_id: alalc
3
+ id: 1997
4
+ language: iso-639-2:ukr
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: ALA-LC Romanization System 1997
8
+ alias:
9
+ ogc11122:
10
+ code: ukr_Cyrl2Latn_ALA_1997
11
+ description: Ukrainian ALA-Library of Congress 1997 System
12
+ url: http://catdir.loc.gov/catdir/cpso/romanization/ukrainia.pdf
13
+ creation_date: 1997
14
+ description: |
15
+ The ALA-LC Romanization Tables, published by the American Library Association (1885)
16
+ and Library of Congress (1905). Used to represent bibliographic information by US and
17
+ Canadian libraries, by the British Library since 1975,[3] and in North American publications.
18
+ The latest 1997 revision is very similar to the 1905 version.
19
+
20
+ notes:
21
+ - The z͡h ligature is necessary to distinguish ж from the combination зг.
22
+ - The t͡s ligature is necessary to distinguish ц from the combination тс.
23
+
24
+ tests:
25
+ - source: Автономна Республіка Крим
26
+ expected: Avtonomna Respublika Krym
27
+ - source: Висунь
28
+ expected: Vysunʹ
29
+ - source: Долинське
30
+ expected: Dolynsʹke
31
+ - source: Дубище
32
+ expected: Dubyshche
33
+ - source: Єнакієве
34
+ expected: I͡enakii͡eve
35
+ - source: Зупиночний Пункт Мокіївці
36
+ expected: Zupynochnyĭ Punkt Mokiïvt͡si
37
+ - source: Іванівщина
38
+ expected: Ivanivshchyna
39
+ - source: Киликиїв
40
+ expected: Kylykyïv
41
+ - source: Кожанка
42
+ expected: Koz͡hanka
43
+ - source: Краснянка
44
+ expected: Krasni͡anka
45
+ - source: Краснівка
46
+ expected: Krasnivka
47
+ - source: Мале Микільське
48
+ expected: Male Mykilʹsʹke
49
+ - source: Маломиколаївка
50
+ expected: Malomykolaïvka
51
+ - source: Нове Село
52
+ expected: Nove Selo
53
+ - source: Новопавлівка
54
+ expected: Novopavlivka
55
+ - source: Новошичі
56
+ expected: Novoshychi
57
+ - source: Новоєфремівка
58
+ expected: Novoi͡efremivka
59
+ - source: Одеська Область
60
+ expected: Odesʹka Oblastʹ
61
+ - source: Орлівське
62
+ expected: Orlivsʹke
63
+ - source: Раневичі
64
+ expected: Ranevychi
65
+ - source: Рокувата
66
+ expected: Rokuvata
67
+ - source: Рудаєве
68
+ expected: Rudai͡eve
69
+ - source: Сахнівці
70
+ expected: Sakhnivt͡si
71
+ - source: Тернівка
72
+ expected: Ternivka
73
+ - source: Турбівка
74
+ expected: Turbivka
75
+ - source: Херсонська Область
76
+ expected: Khersonsʹka Oblastʹ
77
+
78
+ map:
79
+ characters:
80
+ "\u0410": "A" # А
81
+ "\u0411": "B" # Б
82
+ "\u0412": "V" # В
83
+ "\u0413": "H" # Г
84
+ "\u0490": "G" # Ґ
85
+ "\u0414": "D" # Д
86
+ "\u0415": "E" # Е
87
+ "\u0404": "I\u0361e" # Є -> I͡e
88
+ "\u0416": "Z\u0361h" # Ж -> Z͡h
89
+ "\u0417": "Z" # З
90
+ "\u0418": "Y" # И
91
+ "\u0406": "I" # І
92
+ "\u0407": "I\u0308" # Ї -> Ï
93
+ "\u0419": "I\u0306" # Й -> Ĭ
94
+ "\u041a": "K" # К
95
+ "\u041b": "L" # Л
96
+ "\u041c": "M" # М
97
+ "\u041d": "N" # Н
98
+ "\u041e": "O" # О
99
+ "\u041f": "P" # П
100
+ "\u0420": "R" # Р
101
+ "\u0421": "S" # С
102
+ "\u0422": "T" # Т
103
+ "\u0423": "U" # У
104
+ "\u0424": "F" # Ф
105
+ "\u0425": "Kh" # Х
106
+ "\u0426": "T\u0361s" # Ц -> T͡s
107
+ "\u0427": "Ch" # Ч
108
+ "\u0428": "Sh" # Ш
109
+ "\u0429": "Shch" # Щ
110
+ "\u042e": "I\u0361u" # Ю -> I͡u
111
+ "\u042f": "I\u0361a" # Я -> I͡a
112
+ "\u042c": "\u02B9" # Ь -> ʹ
113
+ "\u0430": "a" # а
114
+ "\u0431": "b" # б
115
+ "\u0432": "v" # в
116
+ "\u0433": "h" # г
117
+ "\u0491": "g" # ґ
118
+ "\u0434": "d" # д
119
+ "\u0435": "e" # е
120
+ "\u0454": "i\u0361e" # є -> i͡e
121
+ "\u0436": "z\u0361h" # ж -> z͡h
122
+ "\u0437": "z" # з
123
+ "\u0438": "y" # и
124
+ "\u0456": "i" # і
125
+ "\u0457": "i\u0308" # ї -> ï
126
+ "\u0439": "i\u0306" # й -> ĭ
127
+ "\u043a": "k" # к
128
+ "\u043b": "l" # л
129
+ "\u043c": "m" # м
130
+ "\u043d": "n" # н
131
+ "\u043e": "o" # о
132
+ "\u043f": "p" # п
133
+ "\u0440": "r" # р
134
+ "\u0441": "s" # с
135
+ "\u0442": "t" # т
136
+ "\u0443": "u" # у
137
+ "\u0444": "f" # ф
138
+ "\u0445": "kh" # х
139
+ "\u0446": "t\u0361s" # ц -> t͡s
140
+ "\u0447": "ch" # ч
141
+ "\u0448": "sh" # ш
142
+ "\u0449": "shch" # щ
143
+ "\u044e": "i\u0361u" # ю -> i͡u
144
+ "\u044f": "i\u0361a" # я -> i͡a
145
+ "\u044c": "\u02B9" # Ь -> ʹ