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,221 @@
1
+ ---
2
+ authority_id: var
3
+ id: 1872
4
+ language: iso-639-2:hin
5
+ source_script: Deva
6
+ destination_script: Latn
7
+ name: Hindi Hunterian system
8
+ url: https://transliteration.eki.ee/pdf/Hindi-Marathi-Nepali.pdf
9
+ creation_date: 1872
10
+ description:
11
+ The Hunterian system is the national system of romanization in India.
12
+
13
+ notes:
14
+
15
+ - a, i and u are used in word-final position. The a in gaon and the u in pur are not accented.
16
+ - ज्ञ is transliterated gy.
17
+ - v is used before i.
18
+
19
+ tests:
20
+ - source: "परिपक्क"
21
+ expected: "paraipakka"
22
+ - source: "जगत्"
23
+ expected: "jagat"
24
+ - source: "संख्या"
25
+ expected: "sankhyaā"
26
+ - source: "गंभीर मरीजों के मामले में भारत दूसरे नंबर पर"
27
+ expected: "ganbhaīra maraījaon kae maāmalae maen bhaārata daūsarae nanbara para"
28
+ - source: "कोरोना अपडेट्स"
29
+ expected: "kaoraonaā apadaetsa"
30
+ - source: "सीडीसी चीफ का बयान अहम"
31
+ expected: "saīdaīsaī chaīpha kaā bayaāna ahama"
32
+ - source: "गूगल प्ले स्टोर पर पेटीएम की वापसी"
33
+ expected: "gaūgala plae staora para paetaīema kaī waāpasaī"
34
+ - source: "भारत में गैंबलिंग की इजाजत नहीं"
35
+ expected: "bhaārata maen gaainbalainga kaī ijaājata nahaīn"
36
+ - source: "कोरोना वैक्सीन मुद्दे पर घिरे राष्ट्रपति; जो बाइडेन बोले- मुझे और देश को वैज्ञानिकों पर भरोसा है, डोनाल्ड ट्रम्प पर नहीं"
37
+ expected: "kaoraonaā waaiksaīna mauddae para ghairae raāshtrapatai; jao baāidaena baolae- maujhae aura daesa kao waaigyānaikaon para bharaosaā haai, daonaālda trampa para nahaīn"
38
+ - source: "गूगल की कार्रवाई पर पेटीएम ने कहा था कि ऐप को अस्थायी तौर पर प्ले-स्टोर से हटाया गया है, आपके पैसे सुरक्षित हैं"
39
+ expected: "gaūgala kaī kaārrawaāi para paetaīema nae kahaā thaā kai aipa kao asthaāyaī taaura para plae-staora sae hataāyaā gayaā haai, āpakae paaisae saurakshaita haain"
40
+
41
+ map:
42
+
43
+ rules:
44
+ # note[1]
45
+ - pattern: (?<=)\u0906(?=\b)
46
+ result: "a"
47
+ - pattern: (?<=)\u0908(?=\b)
48
+ result: "i"
49
+ - pattern: (?<=)\u090A(?=\b)
50
+ result: "u"
51
+
52
+ # note[3]
53
+ - pattern: \u0935(?=[इई])
54
+ result: "v"
55
+
56
+
57
+
58
+ characters:
59
+
60
+ # I. Vowels and Diphthongs (see Note 1)
61
+
62
+ 'अ': 'a'
63
+ 'आ': 'ā'
64
+ 'इ': 'i'
65
+ 'ई': 'ī'
66
+ 'उ': 'u'
67
+ 'ऊ': 'ū'
68
+ 'ऋ': 'ri'
69
+ 'ए': 'e'
70
+ 'ऐ': 'ai'
71
+ 'ओ': 'o'
72
+ 'औ': 'au'
73
+
74
+ # II. Consonants (see Note 2)
75
+ # Gutturals
76
+ 'क': 'ka'
77
+ 'ख': 'kha'
78
+ 'ग': 'ga'
79
+ 'घ': 'gha'
80
+ 'ङ': 'nga'
81
+
82
+ # Palatals
83
+ 'च': 'cha'
84
+ 'छ': 'chha'
85
+ 'ज': 'ja'
86
+ 'झ': 'jha'
87
+ 'ञ': 'nya'
88
+
89
+ # Cerebrals
90
+ 'ट': 'ta'
91
+ 'ठ': 'tha'
92
+ 'ड': 'da'
93
+ 'ढ': 'dha'
94
+ 'ण': 'na'
95
+
96
+ # Dentals
97
+ 'त': 'ta'
98
+ 'थ': 'tha'
99
+ 'द': 'da'
100
+ 'ध': 'dha'
101
+ 'न': 'na'
102
+
103
+ # Labials
104
+ 'प': 'pa'
105
+ 'फ': 'pha'
106
+ 'ब': 'ba'
107
+ 'भ': 'bha'
108
+ 'म': 'ma'
109
+
110
+ # Semivowels
111
+ 'य': 'ya'
112
+ 'र': 'ra'
113
+ 'ल': 'la'
114
+ 'व': 'wa'
115
+
116
+ # Sibilants
117
+ 'श': 'sa'
118
+ 'ष': 'sha'
119
+ 'स': 'sa'
120
+
121
+ # Aspirate
122
+ 'ह': 'ha'
123
+
124
+
125
+ # Additional consonants
126
+ 'क़': 'qa'
127
+ 'ख़': 'kha'
128
+ 'ग़': 'ġa'
129
+ 'ज़': 'za'
130
+ 'ड़': 'ṙa'
131
+ 'ढ़': 'ṙha'
132
+ 'फ़': 'fa'
133
+ 'ळ': 'la'
134
+
135
+ # Anusvāra
136
+ 'ं': 'n'
137
+
138
+ # Bisarga
139
+ 'ः': 'h'
140
+
141
+ # Anunāsika
142
+ 'ँ': 'm'
143
+
144
+ # Note 2
145
+ 'ज्ञ': 'gy'
146
+
147
+
148
+ # Medials # Needed for connecting constants
149
+ 'ा': "ā"
150
+ 'ि': "i"
151
+ 'ी': "ī"
152
+ 'ु': "u"
153
+ 'ू': "ū"
154
+ 'ृ': "ri"
155
+ 'े': "e"
156
+ 'ै': "ai"
157
+ 'ो': "o"
158
+ 'ौ': "au"
159
+ '‍': ''# Used for joining
160
+
161
+
162
+ #V. Vowelless with halanta (्)
163
+
164
+ # Gutturals
165
+ 'क्': 'k'
166
+ 'ख्': 'kh'
167
+ 'ग्': 'g'
168
+ 'घ्': 'gh'
169
+ 'ङ्': 'ng'
170
+
171
+ # Palatals
172
+ 'च्': 'ch'
173
+ 'छ्': 'chh'
174
+ 'ज्': 'j'
175
+ 'झ्': 'jh'
176
+ 'ञ्': 'ny'
177
+
178
+ # Cerebrals
179
+ 'ट्': 't'
180
+ 'ठ्': 'th'
181
+ 'ड्': 'd'
182
+ 'ढ्': 'dh'
183
+ 'ण्': 'n'
184
+
185
+ # Dentals
186
+ 'त्': 't'
187
+ 'थ्': 'th'
188
+ 'द्': 'd'
189
+ 'ध्': 'dh'
190
+ 'न्': 'n'
191
+
192
+ # Labials
193
+ 'प्': 'p'
194
+ 'फ्': 'ph'
195
+ 'ब्': 'b'
196
+ 'भ्': 'bh'
197
+ 'म्': 'm'
198
+
199
+ # Semivowels
200
+ 'य्': 'y'
201
+ 'र्': 'r'
202
+ 'ल्': 'l'
203
+ 'व्': 'w'
204
+
205
+ # Sibilants
206
+ 'श्': 's'
207
+ 'ष्': 'sh'
208
+ 'स्': 's'
209
+
210
+ # Aspirate
211
+ 'ह्': 'h'
212
+
213
+ # Additional consonants
214
+ 'क़्': 'q'
215
+ 'ख़्': 'kh'
216
+ 'ग़्': 'ġ'
217
+ 'ज़्': 'z'
218
+ 'ड़्': 'ṙ'
219
+ 'ढ़्': 'ṙh'
220
+ 'फ़्': 'f'
221
+ 'ळ्': 'l'
@@ -0,0 +1,406 @@
1
+ ---
2
+ authority_id: var
3
+ id: hepburn-1886
4
+ language: iso-639-2:jpn
5
+ source_script: Hrkt
6
+ destination_script: Latn
7
+ name: Traditional Hepburn
8
+ url: http://www.ab.cyberhome.ne.jp/~kaizu/roomazi/doc/hep3.html
9
+ creation_date: 1886
10
+ adoption_date:
11
+ description:
12
+ This is a traditional version of Hepburn romanization.
13
+
14
+ notes:
15
+ "
16
+ The book was published before the Japanese orthographic reform,
17
+ and this map takes the reformed orthography in Kana as the source
18
+ form.
19
+ https://en.wikipedia.org/wiki/Historical_kana_orthography
20
+
21
+ The distinction for long-vowel vs. repeating vowels has not been
22
+ implemented.
23
+ For example, the consecutive o's in these words are considered
24
+ a case of long vowel, and is transliterated as ō:
25
+
26
+ 氷 (こおり) - kōri, 大阪(おおさか)- Ōsaka
27
+
28
+ If there are two consecutive o's in a string, but they belong to
29
+ different morpheme, then they should be transliterated separately.
30
+
31
+ 小躍り(こおどり)- koodori
32
+
33
+ The same goes for the combinations o+u, u+u as well.
34
+
35
+ However, this cannot be easily determined from the Kana.
36
+ Lexical knowledge is needed, and sometimes the Kanji representation
37
+ will give more hints about morpheme boundary.
38
+
39
+ For now, this map will assume that all o+o, o+u, u+u combinations to
40
+ be instances of long vowels.
41
+ "
42
+
43
+ tests:
44
+ - source: "ぐんま"
45
+ expected: "gumma"
46
+ - source: "しんよう"
47
+ expected: "shin-yō"
48
+ - source: "きんようび"
49
+ expected: "kin-yōbi"
50
+ - source: "とうきょう"
51
+ expected: "tōkyō"
52
+ - source: "しんばし"
53
+ expected: "shimbashi"
54
+
55
+ map:
56
+
57
+ rules:
58
+ # Add a dash (-) between ん and a vowel sound or ya, yu, yo
59
+ - pattern: "([んン])(?=[あいうえおやゆよアイウエオヤユヨ])"
60
+ result: "\\1-"
61
+
62
+ # Convert ん into m before b, m, p
63
+ - pattern: "[んン](?=[ばびぶべぼまみむめもぱぴぷぺぽバビブベボマミムメモパピプペポ])"
64
+ result: "m"
65
+
66
+ postrules:
67
+ # Handling of っ/ッ
68
+ #
69
+ # The kana っ/ッ is a geminate marker.
70
+ # When followed by a consonant, repeat the first letter of
71
+ # the following syllable. Exception: the combination -cch-
72
+ # should be transliterated as -tch-
73
+ #
74
+ # If っ/ッ is not followed by a consonant, then it is usually
75
+ # phonetically realised as an abrupt stop or shorterning of
76
+ # the previous syllable. There is no documented or commonly
77
+ # accepted way to transliterate this sound.
78
+
79
+ - pattern: "[っッ]([BbDdFfGgHhJjKkLlMmNnPpQqRrSsTtVvWwXxYyZz])"
80
+ result: "\\1\\1"
81
+ - pattern: "[っッ]([Cc])" # ッ followed by ch-
82
+ result: "t\\1"
83
+ - pattern: "[っッ]" # drop all other っッ.
84
+ result: ""
85
+
86
+ # In Traditional Hepburn, long o (which can be o+o or o+u), and long u
87
+ # are transliterated as ō and ū.
88
+ #
89
+ # Macron should not be used if two repeating letters split across
90
+ # a morpheme boundary.
91
+ #
92
+ # Long vowels in loanwords are indicated with a macron instead
93
+ # of letter doubling.
94
+
95
+ - pattern: "a[ー]"
96
+ result: "ā"
97
+ - pattern: "i[ー]"
98
+ result: "ī"
99
+ - pattern: "u[ーu]"
100
+ result: "ū"
101
+ - pattern: "e[ー]"
102
+ result: "ē"
103
+ - pattern: "o[ーo]"
104
+ result: "ō"
105
+
106
+ characters:
107
+
108
+ # Hiragana
109
+
110
+ "あ": "a"
111
+ "い": "i"
112
+ "う": "u"
113
+ "え": "e"
114
+ "お": "o"
115
+ "おう": "ō"
116
+
117
+ "か": "ka"
118
+ "き": "ki"
119
+ "く": "ku"
120
+ "け": "ke"
121
+ "こ": "ko"
122
+ "きゃ": "kya"
123
+ "きゅ": "kyu"
124
+ "きょ": "kyo"
125
+ "きょう": "kyō"
126
+ "こう": "kō"
127
+
128
+ "さ": "sa"
129
+ "し": "shi"
130
+ "す": "su"
131
+ "せ": "se"
132
+ "そ": "so"
133
+ "しゃ": "sha"
134
+ "しゅ": "shu"
135
+ "しょ": "sho"
136
+ "しょう": "shō"
137
+ "そう": "sō"
138
+
139
+ "た": "ta"
140
+ "ち": "chi"
141
+ "つ": "tsu"
142
+ "て": "te"
143
+ "と": "to"
144
+ "ちゃ": "cha"
145
+ "ちゅ": "chu"
146
+ "ちょ": "cho"
147
+ "とう": "tō"
148
+ "ちょう": "chō"
149
+
150
+ "な": "na"
151
+ "に": "ni"
152
+ "ぬ": "nu"
153
+ "ね": "ne"
154
+ "の": "no"
155
+ "にゃ": "nya"
156
+ "にゅ": "nyu"
157
+ "にょ": "nyo"
158
+ "にょう": "nyō"
159
+ "のう": "nō"
160
+
161
+ "は": "ha"
162
+ "ひ": "hi"
163
+ "ふ": "fu"
164
+ "へ": "he"
165
+ "ほ": "ho"
166
+ "ひゃ": "hya"
167
+ "ひゅ": "hyu"
168
+ "ひょ": "hyo"
169
+ "ひょう": "hyō"
170
+ "ほう": "hō"
171
+
172
+ "ま": "ma"
173
+ "み": "mi"
174
+ "む": "mu"
175
+ "め": "me"
176
+ "も": "mo"
177
+ "みゃ": "mya"
178
+ "みゅ": "myu"
179
+ "みょ": "myo"
180
+ "みょう": "myō"
181
+ "もう": "mō"
182
+
183
+ "や": "ya"
184
+ "ゆ": "yu"
185
+ "よ": "yo"
186
+ "よう": "yō"
187
+
188
+ "ら": "ra"
189
+ "り": "ri"
190
+ "る": "ru"
191
+ "れ": "re"
192
+ "ろ": "ro"
193
+ "りゃ": "rya"
194
+ "りゅ": "ryu"
195
+ "りょ": "ryo"
196
+ "りょう": "ryō"
197
+ "ろう": "rō"
198
+
199
+ "わ": "wa"
200
+ "を": "wo"
201
+
202
+ "が": "ga"
203
+ "ぎ": "gi"
204
+ "ぐ": "gu"
205
+ "げ": "ge"
206
+ "ご": "go"
207
+ "ぎゃ": "gya"
208
+ "ぎゅ": "gyu"
209
+ "ぎょ": "gyo"
210
+ "ぎょう": "gyō"
211
+ "ごう": "gō"
212
+
213
+ "ざ": "za"
214
+ "じ": "ji"
215
+ "ず": "zu"
216
+ "ぜ": "ze"
217
+ "ぞ": "zo"
218
+ "じゃ": "ja"
219
+ "じゅ": "ju"
220
+ "じょ": "jo"
221
+ "じょう": "jō"
222
+ "ぞう": "zō"
223
+
224
+ "だ": "da"
225
+ "ぢ": "ji"
226
+ "づ": "zu"
227
+ "で": "de"
228
+ "ど": "do"
229
+ "ぢゃ": "ja"
230
+ "ぢゅ": "ju"
231
+ "ぢょ": "jo"
232
+ "どう": "dō"
233
+
234
+ "ば": "ba"
235
+ "び": "bi"
236
+ "ぶ": "bu"
237
+ "べ": "be"
238
+ "ぼ": "bo"
239
+ "びゃ": "bya"
240
+ "びゅ": "byu"
241
+ "びょ": "byo"
242
+ "びょう": "byō"
243
+ "ぼう": "bō"
244
+
245
+ "ぱ": "pa"
246
+ "ぴ": "pi"
247
+ "ぷ": "pu"
248
+ "ぺ": "pe"
249
+ "ぽ": "po"
250
+ "ぴゃ": "pya"
251
+ "ぴゅ": "pyu"
252
+ "ぴょ": "pyo"
253
+ "ぴょう": "pyō"
254
+ "ぽう": "pō"
255
+
256
+ "ん": "n"
257
+
258
+ # Katakana
259
+
260
+ "ア": "a"
261
+ "イ": "i"
262
+ "ウ": "u"
263
+ "エ": "e"
264
+ "オ": "o"
265
+ "オウ": "ō"
266
+
267
+ "カ": "ka"
268
+ "キ": "ki"
269
+ "ク": "ku"
270
+ "ケ": "ke"
271
+ "コ": "ko"
272
+ "キャ": "kya"
273
+ "キュ": "kyu"
274
+ "キョ": "kyo"
275
+ "キョウ": "kyō"
276
+ "コウ": "kō"
277
+
278
+ "サ": "sa"
279
+ "シ": "shi"
280
+ "ス": "su"
281
+ "セ": "se"
282
+ "ソ": "so"
283
+ "シャ": "sha"
284
+ "シュ": "shu"
285
+ "ショ": "sho"
286
+ "ショウ": "shō"
287
+ "ソウ": "sō"
288
+
289
+ "タ": "ta"
290
+ "チ": "chi"
291
+ "ツ": "tsu"
292
+ "テ": "te"
293
+ "ト": "to"
294
+ "チャ": "cha"
295
+ "チュ": "chu"
296
+ "チョ": "cho"
297
+ "チョウ": "chō"
298
+ "トウ": "tō"
299
+
300
+ "ナ": "na"
301
+ "ニ": "ni"
302
+ "ヌ": "nu"
303
+ "ネ": "ne"
304
+ "ノ": "no"
305
+ "ニャ": "nya"
306
+ "ニュ": "nyu"
307
+ "ニョ": "nyo"
308
+ "ニョウ": "nyō"
309
+ "ノウ": "nō"
310
+
311
+ "ハ": "ha"
312
+ "ヒ": "hi"
313
+ "フ": "fu"
314
+ "ヘ": "he"
315
+ "ホ": "ho"
316
+ "ヒャ": "hya"
317
+ "ヒュ": "hyu"
318
+ "ヒョ": "hyo"
319
+ "ヒョウ": "hyō"
320
+ "ホウ": "hō"
321
+
322
+ "マ": "ma"
323
+ "ミ": "mi"
324
+ "ム": "mu"
325
+ "メ": "me"
326
+ "モ": "mo"
327
+ "ミャ": "mya"
328
+ "ミュ": "myu"
329
+ "ミョ": "myo"
330
+ "ミョウ": "myō"
331
+ "モウ": "mō"
332
+
333
+ "ヤ": "ya"
334
+ "ユ": "yu"
335
+ "ヨ": "yo"
336
+ "ヨウ": "yō"
337
+
338
+ "ラ": "ra"
339
+ "リ": "ri"
340
+ "ル": "ru"
341
+ "レ": "re"
342
+ "ロ": "ro"
343
+ "リャ": "rya"
344
+ "リュ": "ryu"
345
+ "リョ": "ryo"
346
+ "リョウ": "ryō"
347
+ "ロウ": "rō"
348
+
349
+ "ワ": "wa"
350
+ "ヲ": "wo"
351
+
352
+ "ガ": "ga"
353
+ "ギ": "gi"
354
+ "グ": "gu"
355
+ "ゲ": "ge"
356
+ "ゴ": "go"
357
+ "ギャ": "gya"
358
+ "ギュ": "gyu"
359
+ "ギョ": "gyo"
360
+ "ギョウ": "gyō"
361
+ "ゴウ": "gō"
362
+
363
+ "ザ": "za"
364
+ "ジ": "ji"
365
+ "ズ": "zu"
366
+ "ゼ": "ze"
367
+ "ゾ": "zo"
368
+ "ジャ": "ja"
369
+ "ジュ": "ju"
370
+ "ジョ": "jo"
371
+ "ジョウ": "jō"
372
+ "ゾウ": "zō"
373
+
374
+ "ダ": "da"
375
+ "ヂ": "ji"
376
+ "ヅ": "zu"
377
+ "デ": "de"
378
+ "ド": "do"
379
+ "ヂャ": "ja"
380
+ "ヂュ": "ju"
381
+ "ヂョ": "jo"
382
+ "ドウ": "dō"
383
+
384
+ "バ": "ba"
385
+ "ビ": "bi"
386
+ "ブ": "bu"
387
+ "ベ": "be"
388
+ "ボ": "bo"
389
+ "ビャ": "bya"
390
+ "ビュ": "byu"
391
+ "ビョ": "byo"
392
+ "ビョウ": "byō"
393
+ "ボウ": "bō"
394
+
395
+ "パ": "pa"
396
+ "ピ": "pi"
397
+ "プ": "pu"
398
+ "ペ": "pe"
399
+ "ポ": "po"
400
+ "ピャ": "pya"
401
+ "ピュ": "pyu"
402
+ "ピョ": "pyo"
403
+ "ピョウ": "pyō"
404
+ "ポウ": "pō"
405
+
406
+ "ン": "n"