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,241 @@
1
+ metadata {
2
+ authority_id: alalc
3
+ id: 1997
4
+ language: iso-639-2:pan
5
+ source_script: Guru
6
+ destination_script: Latn
7
+ name: Panjabi Romanization, 1997
8
+ url: http://catdir.loc.gov/catdir/cpso/romanization/panjabi.pdf
9
+ creation_date: 1997
10
+ description: |
11
+ ALA-LC Romanization table for Panjabi
12
+
13
+ notes:
14
+
15
+ - Only the vowel forms that appear at the beginning of a syllable are listed; the forms used for
16
+ vowels following a consonant can be found in grammars; no distinction between the two is
17
+ made in transliteration.
18
+
19
+ - |
20
+ The vowel a is implicit after consonant clusters and may be implicit after consonants except
21
+ when they are final or when another vowel is indicated by its appropriate sign. The cases in
22
+ which the vowel a is implicit, however, can be determined only from a knowledge of the
23
+ language or from suitable reference sources. In such cases the a is supplied in transliteration.
24
+
25
+ - The dotted letters (ਸ਼ ਖ਼ ਗ਼ ਜ਼ ਫ਼ ਲ਼) are used in Urdu words.
26
+
27
+ - |
28
+ Exception: Bindī is transliterated by:
29
+
30
+ a) ṅ before gutturals,
31
+ b) ñ before palatals,
32
+ c) ṇ before cerebrals,
33
+ d) n before dentals, and
34
+ e) m before labials.
35
+
36
+ - |
37
+ Exception: Ṭippī is transliterated by:
38
+
39
+ a) ṅ before gutturals,
40
+ b) ñ before palatals,
41
+ c) ṇ before cerebrals,
42
+ d) n before dentals, and
43
+ e) m before labials.
44
+
45
+ - |
46
+ Exception: When adhik implies the combination of a non-aspirated and an aspirated
47
+ consonant, the combination is transliterated as a non-aspirated, followed by an aspirated
48
+ consonant.
49
+ }
50
+
51
+ tests {
52
+ test "ਪੰਜਾਬ 'ਚ ਵਧ ਰਿਹਾ ਖ਼ੁਦਕੁਸ਼ੀਆਂ ਦਾ ਰੁਝਾਨ", "pañjaāba 'ca wadha raihaā khaudakaushaīāṃ daā raujhaāna"
53
+ test "ਲੱਖ ਤੋਂ ਪਾਰ ਪੁੱਜਾ ਸਰਗਰਮ ਕੇਸਾਂ ਦਾ ਅੰਕੜਾ, ਦਿੱਲੀ 'ਚ ਦੋ ਲੱਖ ਤੋਂ ਪਾਰ ਇਨਫੈਕਟਿਡ", "lakkha taoṃ paāra paujjaā saragarama kaesaāṃ daā aṅkaṛaā, daillaī 'ca dao lakkha taoṃ paāra inaphaaikaṭaiḍa"
54
+ test "ਪਰਿਵਾਰਕ ਸਮੱਸਿਆਵਾਂ ਅਤੇ ਵਿਆਹ ਵੀ ਹੈ ਹੋਰ ਅਹਿਮ ਕਾਰਨ", "paraiwaāraka samassaiāwaāṃ atae waiāha waī haai haora ahaima kaārana"
55
+ test "ਮਰਦਾਂ 'ਚ ਔਰਤਾਂ ਨਾਲੋਂ ਵੱਧ ਹੈ ਖ਼ੁਦਕੁਸ਼ੀ ਦਾ ਰੁਝਾਨ", "maradaāṃ 'ca aurataāṃ naālaoṃ waddha haai khaudakaushaī daā raujhaāna"
56
+ test "ਰਾਸ਼ਟਰੀ ਪੱਧਰ 'ਤੇ ਪੰਜਾਬ ਦੀ ਸਥਿਤੀ ਕਾਫ਼ੀ ਸੂਬਿਆਂ ਤੋਂ ਬਿਹਤਰ", "raāshaṭaraī paddhara 'tae pañjaāba daī sathaitaī kaāfaī saūbaiāṃ taoṃ baihatara"
57
+ test "ਚੀਨੀ ਸੈਨਾ ਨੇ ਲਾਪਤਾ ਅਰੁਣਾਚਲ ਦੇ 5 ਨੌਜਵਾਨਾਂ ਬਾਰੇ ਦੱਸਿਆ", "caīnaī saainaā nae laāpataā arauṇaācala dae 5 naaujawaānaāṃ baārae dassaiā"
58
+ test "ਸਾਖਰਤਾ ਦੇ ਮਾਮਲੇ 'ਚ ਦੇਸ਼ 'ਚ 7ਵੇਂ ਨੰਬਰ 'ਤੇ ਪੰਜਾਬ", "saākharataā dae maāmalae 'ca daesha 'ca 7waeṃ nam̆̐bara 'tae pañjaāba"
59
+ test "ਦਿੱਲੀ ਕਮੇਟੀ ਦੇ ਮੈਂਬਰ ਸ਼ੰਟੀ ਨੇ ਅਕਾਲੀ ਦਲ ਤੋਂ ਦਿੱਤਾ ਅਸਤੀਫ਼ਾ", "daillaī kamaeṭaī dae maaiṃbara shaṇṭaī nae akaālaī dala taoṃ daittaā asataīfaā"
60
+ test "੧੦੨ ਹੋਰ ਕੋਰੋਨਾ ਪਾਜ਼ੀਟਿਵ ਮਰੀਜ਼ਾਂ ਦੀ ਪੁਸ਼ਟੀ, ਇਕ ਦੀ ਮੌਤ", "102 haora kaoraonaā paāzaīṭaiwa maraīzaāṃ daī paushaṭaī, ika daī maauta"
61
+ test "ਸੜਕ ਹਾਦਸੇ ਦੌਰਾਨ ਇਕ ਦੀ ਮੌਤ", "saṛaka haādasae daauraāna ika daī maauta"
62
+ }
63
+
64
+ stage {
65
+
66
+ # RULES
67
+ # note[4]
68
+ sub "\u0A02", "ṅ", after: any("ਕਖਖ਼ਗਗ਼ਘਙ") # ਂ before gutturals
69
+ sub "\u0A02", "ñ", after: any("ਚਛਜਜ਼ਝਞ") # ਂ before palatals
70
+ sub "\u0A02", "ṇ", after: any("ਟਠਡਢਣ") # ਂ before cerebrals
71
+ sub "\u0A02", "n", after: any("ਤਥਦਧਨ") # ਂ before dentals
72
+
73
+ # note[5]
74
+ sub "\u0A70", "ṅ", after: any("ਕਖਖ਼ਗਗ਼ਘਙ") # ੰ before gutturals
75
+ sub "\u0A70", "ñ", after: any("ਚਛਜਜ਼ਝਞ") # ੰ before palatals
76
+ sub "\u0A70", "ṇ", after: any("ਟਠਡਢਣ") # ੰ before cerebrals
77
+ sub "\u0A70", "n", after: any("ਤਥਦਧਨ") # ੰ before dentals
78
+
79
+
80
+ # CHARACTERS
81
+ parallel {
82
+
83
+ # I. Vowels and Diphthongs (see Note 1)
84
+
85
+ sub "ਅ", "a"
86
+ sub "ਆ", "ā"
87
+ sub "ਇ", "i"
88
+ sub "ਈ", "ī"
89
+ sub "ਉ", "u"
90
+ sub "ਊ", "ū"
91
+ sub "ਏ", "e"
92
+ sub "ਐ", "ai"
93
+ sub "ਓ", "o"
94
+ sub "ਔ", "au"
95
+
96
+ # II. Consonants (see Note 2)
97
+ # Gutturals
98
+ sub "ਕ", "ka"
99
+ sub "ਖ", "kha"
100
+ sub "ਖ਼", "kha"
101
+ sub "ਗ", "ga"
102
+ sub "ਗ਼", "gha"
103
+ sub "ਘ", "gha"
104
+ sub "ਙ", "ṅa"
105
+
106
+ # Palatals
107
+ sub "ਚ", "ca"
108
+ sub "ਛ", "cha"
109
+ sub "ਜ਼", "za"
110
+ sub "ਜ", "ja"
111
+ sub "ਝ", "jha"
112
+ sub "ਞ", "ña"
113
+
114
+ # Cerebrals
115
+ sub "ਟ", "ṭa"
116
+ sub "ਠ", "ṭha"
117
+ sub "ਡ", "ḍa"
118
+ sub "ਢ", "ḍha"
119
+ sub "ਣ", "ṇa"
120
+
121
+ # Dentals
122
+ sub "ਤ", "ta"
123
+ sub "ਥ", "tha"
124
+ sub "ਦ", "da"
125
+ sub "ਧ", "dha"
126
+ sub "ਨ", "na"
127
+
128
+ # Labials
129
+ sub "ਪ", "pa"
130
+ sub "ਫ", "pha"
131
+ sub "ਫ਼", "fa"
132
+ sub "ਬ", "ba"
133
+ sub "ਭ", "bha"
134
+ sub "ਮ", "ma"
135
+
136
+ # Semivowels
137
+ sub "ਯ", "ya"
138
+ sub "ਰ", "ra"
139
+ sub "ਲ", "la"
140
+ sub "ਲੵ", "ḷa"
141
+ sub "ਲ਼", "ḷa"
142
+ sub "ਵ", "wa"
143
+ sub "ੜ", "ṛa"
144
+
145
+ # Sibilants
146
+ sub "ਸ", "sa"
147
+ sub "ਸ਼", "sha"
148
+
149
+ # Aspirate
150
+ sub "ਹ", "ha"
151
+
152
+ # Bindī (see Note 4)
153
+ sub "ਂ", "ṃ"
154
+
155
+ # Ṭippī (see Note 5)
156
+ sub "ੰ", "m̆̐"
157
+
158
+ # Medials # Needed for connecting constants
159
+ sub "ਾ", "ā"
160
+ sub "ਿ", "i"
161
+ sub "ੀ", "ī"
162
+ sub "ੁ", "u"
163
+ sub "ੂ", "ū"
164
+ sub "ੇ", "e"
165
+ sub "ੈ", "ai"
166
+ sub "ੋ", "o"
167
+ sub "ੌ", "au"
168
+
169
+ # For adhik character[Note 6]
170
+
171
+ # Gutturals
172
+ sub "ੱਕ", "kka"
173
+ sub "ੱਖ", "kkha"
174
+ sub "ੱਖ਼", "kkha"
175
+ sub "ੱਗ", "gga"
176
+ sub "ੱਗ਼", "ggha"
177
+ sub "ੱਘ", "ggha"
178
+ sub "ੱਙ", "ṅṅa"
179
+
180
+ # Palatals
181
+ sub "ੱਚ", "cca"
182
+ sub "ੱਛ", "ccha"
183
+ sub "ੱਜ", "jja"
184
+ sub "ੱਜ਼", "zza"
185
+ sub "ੱਝ", "jjha"
186
+ sub "ੱਞ", "ñña"
187
+
188
+ # Cerebrals
189
+ sub "ੱਟ", "ṭṭa"
190
+ sub "ੱਠ", "ṭṭha"
191
+ sub "ੱਡ", "ḍḍa"
192
+ sub "ੱਢ", "ḍḍha"
193
+ sub "ੱਣ", "ṇṇa"
194
+
195
+ # Dentals
196
+ sub "ੱਤ", "tta"
197
+ sub "ੱਥ", "ttha"
198
+ sub "ੱਦ", "dda"
199
+ sub "ੱਧ", "ddha"
200
+ sub "ੱਨ", "nna"
201
+
202
+ # Labials
203
+ sub "ੱਪ", "ppa"
204
+ sub "ੱਫ", "ppha"
205
+ sub "ੱਫ਼", "ffa"
206
+ sub "ੱਬ", "bba"
207
+ sub "ੱਭ", "bbha"
208
+ sub "ੱਮ", "mma"
209
+
210
+ # Semivowels
211
+ sub "ੱਯ", "yya"
212
+ sub "ੱਰ", "rra"
213
+ sub "ੱਲ", "lla"
214
+ sub "ੱਲੵ", "ḷḷa"
215
+ sub "ੱਵ", "wwa"
216
+ sub "ੱੜ", "ṛṛa"
217
+
218
+ # Sibilants
219
+ sub "ੱਸ", "ssa"
220
+ sub "ੱਸ਼", "ssha"
221
+
222
+ # Aspirate
223
+ sub "ੱਹ", "hha"
224
+
225
+
226
+ # digits
227
+
228
+ sub "੦", "0"
229
+ sub "੧", "1"
230
+ sub "੨", "2"
231
+ sub "੩", "3"
232
+ sub "੪", "4"
233
+ sub "੫", "5"
234
+ sub "੬", "6"
235
+ sub "੭", "7"
236
+ sub "੮", "8"
237
+ sub "੯", "9"
238
+ }
239
+
240
+ compose
241
+ }
@@ -0,0 +1,71 @@
1
+ metadata {
2
+ authority_id: alalc
3
+ id: 1997
4
+ language: iso-639-2:pan
5
+ source_script: Guru
6
+ destination_script: Latn
7
+ name: Panjabi Romanization, 2011
8
+ url: https://www.loc.gov/catdir/cpso/romanization/panjabi.pdf
9
+ creation_date: 2011
10
+ description: |
11
+ ALA-LC Romanization table for Panjabi
12
+
13
+ notes:
14
+
15
+ - Only the vowel forms that appear at the beginning of a syllable are listed; the forms used for
16
+ vowels following a consonant can be found in grammars; no distinction between the two is
17
+ made in transliteration.
18
+
19
+ - |
20
+ The vowel a is implicit after consonant clusters and may be implicit after consonants except
21
+ when they are final or when another vowel is indicated by its appropriate sign. The cases in
22
+ which the vowel a is implicit, however, can be determined only from a knowledge of the
23
+ language or from suitable reference sources. In such cases the a is supplied in transliteration.
24
+
25
+ - The dotted letters (ਸ਼ ਖ਼ ਗ਼ ਜ਼ ਫ਼ ਲ਼) are used in Urdu words.
26
+
27
+ - |
28
+ Exception: Bindī is transliterated by:
29
+
30
+ a) ṅ before gutturals,
31
+ b) ñ before palatals,
32
+ c) ṇ before cerebrals,
33
+ d) n before dentals, and
34
+ e) m before labials.
35
+
36
+ - |
37
+ Exception: Ṭippī is transliterated by:
38
+
39
+ a) ṅ before gutturals,
40
+ b) ñ before palatals,
41
+ c) ṇ before cerebrals,
42
+ d) n before dentals, and
43
+ e) m before labials.
44
+
45
+ - |
46
+ Exception: When adhik implies the combination of a non-aspirated and an aspirated
47
+ consonant, the combination is transliterated as a non-aspirated, followed by an aspirated
48
+ consonant.
49
+ }
50
+
51
+ tests {
52
+ test "ਸਵਾਮਿਤਵ ਯੋਜਨਾ ਤਹਿਤ ਜਾਇਦਾਦ ਕਾਰਡ ਵੰਡੇ", "sawaāmaitawa yaojanaā tahaita jaāidaāda kaāraḍa waṇḍae"
53
+ test "ਕੇਂਦਰ ਸਰਕਾਰ ਨੇ ਕਿਸਾਨ ਜਥੇਬੰਦੀਆਂ ਨੂੰ ਮੁੜ ਦਿੱਤਾ ਗੱਲਬਾਤ ਦਾ ਸੱਦਾ", "kaendara sarakaāra nae kaisaāna jathaebandaīāṃ naūm̆̐ mauṛa daittaā gallabaāta daā saddaā"
54
+ test "ਦੁਸਹਿਰੇ ਮੌਕੇ ਕਿਸਾਨਾਂ ਵਲੋਂ ਮੋਦੀ ਦੇ ਪੁਤਲੇ ਫੂਕਣ ਦਾ ਫ਼ੈਸਲਾ", "dausahairae maaukae kaisaānaāṃ walaoṃ maodaī dae pautalae phaūkaṇa daā faaisalaā"
55
+ test "ਸੁਮੇਧ ਸੈਣੀ ਕੋਟਕਪੂਰਾ ਗੋਲੀਕਾਂਡ 'ਚ ਵੀ ਨਾਮਜ਼ਦ", "saumaedha saaiṇaī kaoṭakapaūraā gaolaīkaāṇḍa 'ca waī naāmazada"
56
+ test "ਕੋਰੋਨਾ ਟੀਕੇ ਦੀ ਹੰਗਾਮੀ ਵਰਤੋਂ 'ਤੇ ਵਿਚਾਰ ਨਹੀਂ-ਹਰਸ਼ ਵਰਧਨ", "kaoraonaā ṭaīkae daī haṅgaāmaī warataoṃ 'tae waicaāra nahaīṃ-harasha waradhana"
57
+ test "ਪੂਰਬੀ ਲੱਦਾਖ ਤਣਾਅ ਸਬੰਧੀ ਭਾਰਤ ਤੇ ਚੀਨ ਵਿਚਕਾਰ ੭ ਵੇਂ ਪੱਧਰ ਦੀ ਸੈਨਿਕ ਗੱਲਬਾਤ ਅੱਜ", "paūrabaī laddaākha taṇaāa sabandhaī bhaārata tae caīna waicakaāra 7 waeṃ paddhara daī saainaika gallabaāta ajja"
58
+ test "ਸਾਖਰਤਾ ਦੇ ਮਾਮਲੇ 'ਚ ਦੇਸ਼ 'ਚ ੭ਵੇਂ ਨੰਬਰ 'ਤੇ ਪੰਜਾਬ", "saākharataā dae maāmalae 'ca daesha 'ca 7waeṃ nam̆̐bara 'tae pañjaāba"
59
+ test "ਪਾਕਿ ਡਰੋਨ ਵਲੋਂ ਘੁਸਪੈਠ ਦੀ ਕੋਸ਼ਿਸ਼", "paākai ḍaraona walaoṃ ghausapaaiṭha daī kaoshaisha"
60
+ test "ਪਾਵਰਕਾਮ ਵਲੋਂ ਵਿੱਤੀ ਘਾਟੇ ਨੂੰ ਘਟਾਉਣ ਲਈ ਸਖ਼ਤ ਪੇਸ਼ਬੰਦੀਆਂ ਲਾਗੂ", "paāwarakaāma walaoṃ waittaī ghaāṭae naūm̆̐ ghaṭaāuṇa laī sakhata paeshabandaīāṃ laāgaū"
61
+ test "ਪੰਜਾਬ 'ਚ ਕੋਰੋਨਾ ਦੇ ਐਕਟਿਵ ਕੇਸਾਂ ਦੀ ਗਿਣਤੀ ਘਟੀ", "pañjaāba 'ca kaoraonaā dae aikaṭaiwa kaesaāṃ daī gaiṇataī ghaṭaī"
62
+ }
63
+
64
+ dependency "alalc-pan-Guru-Latn-1997", as: gurulatn
65
+
66
+ stage {
67
+
68
+ run map.gurulatn.stage.main
69
+
70
+ }
71
+
@@ -0,0 +1,318 @@
1
+ metadata {
2
+ authority_id: alalc
3
+ id: 1997
4
+ language: iso-639-3:prs
5
+ source_script: Arab
6
+ destination_script: Latn
7
+ name: ALA-LC Romanization Table -- Persian (1997)
8
+ url: http://catdir.loc.gov/catdir/cpso/romanization/persian.pdf
9
+ creation_date: 1997
10
+ confirmation_date: 1997
11
+ description: |
12
+ ALA-LC Romanization table for Persian
13
+
14
+ notes:
15
+ - 1. For the use of ا (alif) to support ء (hamzah) and ~ (maddah)
16
+ see rule 1(a). For the romanization of ء and see rules 4 and
17
+ respectively. For the use of ا to represent the long vowel
18
+ romanized ā see the table of vowels and diphthongs, and rule 1(b).
19
+
20
+ - 2. Final ک and ‫گ‬ may have the form ك, without the distinguishing
21
+ upper stroke or strokes. The two letters are always distinguished in romanization.
22
+
23
+ - 3. For other values of »5 and ,s see the table of vowels and diphthongs,
24
+ and rules 2, 3, and 7.
25
+
26
+ - 4. ة (dotted ه) when used as an alternative to ت is romanized t.
27
+
28
+ - 5. Vowel points are not printed on Library of Congress cards.
29
+
30
+ - 6. See rules 1(b) and 5.
31
+
32
+ - 7. See rule 3(d).
33
+
34
+ - Rule 1.(a) As a support for ء (hamzah) and ~ (maddah). In these cases it is
35
+ not represented in romanization. See rules 4 and 5.
36
+ (b) To indicate the long vowel romanized G. Forthe use of| in tanvin
37
+ see rule 6 dānā دَانَا
38
+
39
+ - Rule 2.و is used to represent
40
+ (a) the consonant romanized v Silent و following خ is retained in romanization.
41
+ (b) the long u-vowel (and short u-vowel in some monosyllables) is romanized ū
42
+ (c) the diphthong romanized aw.
43
+ Whenthe diphthong precedes a consonantal و, the combination is romanized avv. See
44
+ rule 7.
45
+ و may be used as a support for ء (hamzah); in this case it is not represented in
46
+ romanization. See rule 4.
47
+
48
+ - Rule 3. ي is used to represent
49
+ (a) the consonant romanized y.
50
+ (b) the long vowel romanized ī.
51
+ (c) the diphthong romanized ay.
52
+ (d) the final long vowel romanized á.
53
+ For the use of ى as a mark of izafah see rule 8(c)
54
+ ى in the medial form ىـ without dots, may be used as a support
55
+ for ء (hamzah); in this case ى is not represented in romanization.
56
+ See rule 4 below.
57
+
58
+ - Rule 4. ء (hamzah)
59
+ (a)When initial, ء is not represented in romanization.
60
+ When medial orfinal, ء is romanized ’ (alif) except as noted
61
+ in (c) and (d) below.
62
+ (c)When used as a mark of izafah, ء is romanized -’i.
63
+ (d)When used to mark the indefinite article i
64
+
65
+ - Rule 5. ~(maddah)
66
+ (a) initial آ is romanized ā
67
+ (b) Medial آ, whenit represents the phonetic combination ’ā,
68
+ is so romanized.
69
+ (c) is otherwise not represented in romanization.
70
+
71
+ - Rule 6. Tanvin (written ٌ, ٍ , ً , ـًا), which occurs chiefly in Arabic words,
72
+ is romanized un, in, an, and an, respectively.
73
+
74
+ - Rule 7. ّ (shaddah or tashdid) is represented by doubling the letter or
75
+ digraph concerned. Note the exceptional case where 4 is written over و and ي
76
+ to represent the combination of long vowel plus consonant.
77
+
78
+ - Rule 8.Izafah. When two wordsareassociated in the relation known as
79
+ izGfah,the first (the muzaf) is followed by an additional letter or
80
+ syllable in romanization. This is added according to the following rules
81
+ (a)When the muzaf bears no special mark of izafah, it is followed by-i.
82
+ (b)When the muzaf is marked by the addition ofء, it is followed by-’i.
83
+ (c)Whenthe muzaf is marked by the addition ofcs, it is followed by -yi.
84
+ (d)Izafah is represented in romanization of personal names only when
85
+ expressly indicated in the Persian script.
86
+
87
+ - Rule 9.(a) When the affix and the word with which it is connected
88
+ grammatically are written separately in Persian, the two are separated
89
+ in romanization bya single prime (’). See also 12(b) below.
90
+ (b) The Arabic article al is separated by a hyphen, in romanization,
91
+ from the word to which it is prefixed.
92
+
93
+ - Rule 10. Compounds. When the elements of a compound (except a
94
+ compound personal name) are written separately in Persian, they are
95
+ separated in romanization by a single prime (’). See also 12(b) below.
96
+
97
+ - Rule 11. Capitalization.
98
+ (a) Rules for the capitalization of English are followed, except that
99
+ the Arabic article al is lowercased in all positions.
100
+ (b) Diacritics are used with both capital and lowercaseletters.
101
+
102
+ - Rule 12. The single prime (’) is used
103
+ (a) To separate two letters representing two distinct consonantal
104
+ sounds, when the combination might otherwise be read as a digraph.
105
+ (b) To mark theuse ofa letterin its final form whenit occurs in the
106
+ middle of a word. See also rules 9(a) and 10 above.
107
+
108
+ - Rule 13. Foreign words in a Persian context, including Arabic words,
109
+ are romanized accordingto the rules for Persian. For short vowels
110
+ not indicated in the script, the Persian vowels nearest the original
111
+ pronunciation of the word are supplied in romanization.
112
+
113
+ - Rule 14. Dictionaries.
114
+ In romanizing Persian, the Library of Congress has foundit necessary
115
+ to consult dictionaries as an appendage to the romanizationtables,
116
+ primarily for the purpose of supplying vowels. For Persian, the
117
+ principle dictionary consulted is M. Mu’in. Farhang-i Farsi-i mutavassit
118
+ }
119
+
120
+ tests {
121
+ # 1(b)
122
+ test "دَانَا", "Dānā"
123
+ # 2(a)
124
+ test "وَرزِش", "Varzish"
125
+ test "دَوَا", "Davā"
126
+ test "سَرو", "Sarv"
127
+ test "خوَاستَن", "Khvāstan"
128
+ test "خوُد", "Khvud"
129
+ # 2(b)
130
+ test "دُور", "Dūr"
131
+ test "چُون", "Chūn"
132
+ test "تُو", "Tū"
133
+ # 2(c)
134
+ test "فِردَوْسِي", "Firdawsī"
135
+ # 3(a)
136
+ test "يَار", "Yār"
137
+ test "سِيَاه", "Siyāh"
138
+ test "پَاي", "Pāy"
139
+ # 3(b)
140
+ test "اِيرَان", "Īrān"
141
+ test "قَالِي", "Qālī"
142
+ # 3(c)
143
+ test "اَيوَان", "Ayvān"
144
+ test "رَي", "Ray"
145
+ # 3(d)
146
+ test "مُصطَفَى", "Muṣṭafá"
147
+ # 4(a)
148
+ test "مُؤَثِّر", "Mu’as̱s̱ir"
149
+ test "خُلَفَاء", "Khulafā’"
150
+ test "پَائِين", "Pā’īn"
151
+ # 4(c)
152
+ test "اَستَانَهٔ دَر", "Astānah-’i Dar"
153
+ # 5(a)
154
+ test "آب", "Āb"
155
+ test "كُلِّيَّة الآدَاب", "Kullīyat al-Ādāb"
156
+ # 5(b)
157
+ test "مَآثِر", "Ma’ās̱ir"
158
+ test "دَريَاآبَادِي", "Daryā’ābādī"
159
+ # 7
160
+ test "خُرَّم", "Khurram"
161
+ test "اَوَّل", "Avval"
162
+ test "بَچّة", "Bachchah"
163
+ test "خَيَّام", "Khayyām"
164
+ test "نَشرِيَّات", "Nashrīyāt"
165
+ test "قُوَّة", "Qūvah"
166
+ test "قُوَّة", "Qūvah"
167
+ }
168
+
169
+ stage {
170
+
171
+ # CHARACTERS
172
+ parallel {
173
+ # special rules
174
+
175
+ sub space, "", after: "\u0622\u0628\u064E\u0627\u062F" # space followed by abad is removed
176
+ sub "\ufdf2", "Allāh" # See note 5
177
+
178
+ # pointing
179
+ sub "\u064e", "", after: "\u0629" # َ fatha followed by ta' marboota
180
+ sub "\u064e", "", after: "a" + any("h|t") # َ fatha followed by ta' marboota, handling different order of conversion
181
+
182
+ sub "\u064e", "a" # َ fatha
183
+ sub "\u064e\u0627", "ā" # ـَا fatha followed by ا
184
+ sub boundary + "\u0622", "ā" # آ
185
+ sub "\u0622", "’ā" # آ
186
+ sub "\u0622", "ā", before: "\u0644" # added after debugging
187
+
188
+ sub "\u0650", "i" # ِ kasra
189
+ sub "\u0650" + any("\u064a|\u06cc"), "ī" # ـِي kasra followed by ي
190
+ sub "\u0650" + boundary, "-e" # ِ kasra
191
+ sub "\u064e\u0649", "á" # ـَى fatha followed by ى which is ا not ي
192
+ sub "\u064e\u064a\u0652", "ay" # ـَيْ
193
+ sub "\u0650\u064a", "iy", after: any(["\u064e", "u064f"]) # ـِي kasra followed by ي
194
+
195
+ sub "\u064f", "u" # ُ damma
196
+ sub "\u064e\u0648\u0652", "aw" # ـَوْ
197
+ sub "\u064f\u0648", "ū" # ـُو damma followed by و
198
+
199
+ sub "\u0652", "" # ْ sokoon
200
+ sub "\u0659", "ê"
201
+
202
+ sub any("\u0674|\u0654"), "-’i" # ٴ
203
+
204
+ sub "\u0649\u0670", "á" # ىٰ
205
+ # - '-ye'
206
+
207
+ # Tanvin Rule 6
208
+ sub "\u064c", "un" # ٌ
209
+ sub "\u064d", "in" # ٍ
210
+ sub "\u064b", "an" # ً
211
+ sub "\u064b\u0627", "an" # ً
212
+
213
+ # ta' marboota
214
+ sub "\u0629", "at" # ة in the middle of the sentence
215
+ sub "\u0629" + line_end, "ah"
216
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
217
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
218
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
219
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
220
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
221
+ sub "\u0629", "ah", 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")
222
+ sub "\u0629", "ah", 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")
223
+ sub "\u0629", "ah", 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")
224
+ sub "\u0629", "ah", 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")
225
+ sub "\u0629", "ah", 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")
226
+ sub "\u0629", "ah", 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")
227
+ sub "\u0629", "ah", 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")
228
+
229
+ # shadda
230
+
231
+ sub "\u0628\u0651", "bb" # ب
232
+ sub "\u067E\u0651", "pp" # پ
233
+ sub "\u062a\u0651", "tt" # ت
234
+ sub "\u062b\u0651", "s̱s̱" # ث
235
+ sub "\u062c\u0651", "jj" # ج
236
+ sub "\u0686\u0651", "chch" # ‫چ‬
237
+ sub "\u062d\u0651", "ḥḥ" # ح
238
+ sub "\u062e\u0651", "khkh" # خ
239
+ sub "\u062f\u0651", "dd" # د
240
+ sub "\u0630\u0651", "ẕẕ" # ذ
241
+ sub "\u0631\u0651", "rr" # ر
242
+ sub "\u0632\u0651", "zz" # ز
243
+ sub "\u0698\u0651", "zhzh" # ‫ژ‬
244
+ sub "\u0633\u0651", "ss" # س
245
+ sub "\u0634\u0651", "shsh" # ش
246
+ sub "\u0635\u0651", "z̤z̤" # ص
247
+ sub "\u0636\u0651", "ḏḏ" # ض
248
+ sub "\u0637\u0651", "ṭṭ" # ط
249
+ sub "\u0638\u0651", "ẓẓ" # ظ
250
+ sub "\u063a\u0651", "ghgh" # غ
251
+ sub "\u0641\u0651", "ff" # ف
252
+ sub "\u0642\u0651", "qq" # ق
253
+ sub "\u0643\u0651", "kk" # ك
254
+ sub "\u06A9\u0651", "kk" # ک
255
+ sub "\u06AF\u0651", "gg" # ‫گ‬
256
+ sub "\u0644\u0651", "ll" # ل
257
+ sub "\u0645\u0651", "mm" # م
258
+ sub "\u0646\u0651", "nn" # ن
259
+ sub "\u0647\u0651", "hh" # ه
260
+ sub "\u0648\u0651", "vv" # و
261
+ sub any("\u064a|\u0649") + "\u0651", "yy" # ي
262
+ sub "\u0650" + any("\u064a|\u06cc") + "\u0651\u064e", "īy" # ـِيَّ
263
+ sub "\u064f\u0648\u0651", "ūv" # ـُو damma followed by و
264
+
265
+ sub "\u0621", "’" # ء
266
+ sub "\u0624", "’" # ؤ
267
+ sub "\u0626", "’" # ئ
268
+
269
+ sub "\u0623", "" # أ
270
+ sub "\u0625", "" # إ
271
+ sub "\u0627", "ā" # ا
272
+ sub boundary + "\u0627", "" # ا
273
+
274
+ sub boundary + "\u0627\u0644", "al-" # ال
275
+
276
+ # consonant characters
277
+
278
+ sub "\u0628", "b" # ب
279
+ sub "\u067E", "p" # پ
280
+ sub "\u062a", "t" # ت
281
+ sub "\u062B", "s̱" # ث
282
+ sub "\u062c", "j" # ج
283
+ sub "\u0686", "ch" # ‫چ‬
284
+ sub "\u062d", "ḥ" # ح
285
+ sub "\u062e", "kh" # خ
286
+ sub "\u062f", "d" # د
287
+ sub "\u0630", "ẕ" # ذ
288
+ sub "\u0631", "r" # ر
289
+ sub "\u0632", "z" # ز
290
+ sub "\u0698", "zh" # ‫ژ‬
291
+ sub "\u0633", "s" # س
292
+ sub "\u0634", "sh" # ش
293
+ sub "\u0635", "ṣ" # ص
294
+ sub "\u0636", "z̤" # ض
295
+ sub "\u0637", "ṭ" # ط
296
+ sub "\u0638", "ẓ" # ظ
297
+ sub "\u0639", "‘" # ع
298
+ sub "\u063a", "gh" # غ
299
+ sub "\u0641", "f" # ف
300
+ sub "\u0642", "q" # ق
301
+ sub "\u0643", "k" # ك
302
+ sub "\u06A9", "k" # ک
303
+ sub "\u06AF", "g" # ‫گ‬
304
+ sub "\u0644", "l" # ل
305
+ sub "\u0645", "m" # م
306
+ sub "\u0646", "n" # ن
307
+ sub "\u0648", "v" # و
308
+ sub "\u0647", "h" # ه
309
+ sub "\u064a", "y" # ي
310
+ }
311
+
312
+ # POSTRULES
313
+ sub any("\u0061".."\uFFFF"), upcase, before: boundary, not_before: any("‘|’")
314
+ sub "Al-", "al-" # ال
315
+
316
+ compose
317
+ }
318
+