interscript-maps 2.0.5

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 (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,445 @@
1
+ metadata {
2
+ authority_id: bgnpcgn
3
+ id: yaghoubi
4
+ language: iso-639-3:prs
5
+ # prs stands for Dari (https://iso639-3.sil.org/code/prs&_ga=GA1.2.2054538372.1574092823)
6
+ source_script: Arab
7
+ destination_script: Latn
8
+ name: BGN/PCGN NATIONAL ROMANIZATION SYSTEM FOR AFGHANISTAN -- BGN/PCGN 2007 System (Yaghoubi)
9
+ url: https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/693661/ROMANIZATION_FOR_AFGHANISTAN.pdf
10
+ creation_date: 2007
11
+ confirmation_date: 2017-11
12
+ description: |
13
+ This romanization system agreed by BGN and PCGN in November 2007,
14
+ accommodates the linguistic complexity of Afghanistan as manifest in
15
+ its geographical names.
16
+
17
+ The following tabulation shows the original Perso-Arabic script with
18
+ accompanying Unicode value (columns 1a and b), the Yaghoubi
19
+ romanization (column 2), the BGN/PCGN romanization with accompanying
20
+ Unicode value (columns 3a and b), an English phonetic example (column
21
+ 4), and an example toponym (columns 5b and c).
22
+
23
+ [The Yaghoubi romanization system was developed in 1959 by
24
+ Muzaffarud Din Yaqubi (commonly seen as Yaghoubi). It is a native
25
+ official system designed to reflect Afghan names, both Dari and Pashto,
26
+ and both pronunciation and genuine linguistic truth.]
27
+
28
+ The tables function as both a romanization system for Afghanistan (i.e.
29
+ with access to the original script, these tables can be applied to get
30
+ a standardized Roman result - moving from columns 1 to 3) and as a
31
+ means of converting the available Yaghoubi Roman-script spellings, as
32
+ appear on the Fairchild Aerial Surveys map series, to standard BGN/PCGN
33
+ spellings (moving from columns 2 to 3).
34
+
35
+ The points used in Arabic to mark short vowels and certain other
36
+ diacritical marks are infrequently written in Afghanistan.
37
+ Consequently, a reference source may sometimes be required to aid
38
+ correct identification of the standard spellings and proper vowels and
39
+ elimination of dialectal and idiosyncratic variations. In the interests
40
+ of clarity, the example columns show script with vowel pointing from
41
+ Arabic to indicate the short vowels that are included alongside the
42
+ unpointed form that will usually be encountered. However it should be
43
+ noted that the pronunciation of short vowels will vary.
44
+
45
+ Note: it is recommended that a font such as Scheherazade, available
46
+ from www.sil.org, which includes the Unicode extended Arabic sub-range,
47
+ be used to view this system. [Please note that the identification of a
48
+ particular font does not represent an endorsement of any specific
49
+ product or manufacturer.]
50
+
51
+ notes:
52
+ - |
53
+ Alif (ا) should be romanized as follows:
54
+
55
+ a. Initially, it indicates that the word begins with a vowel or
56
+ diphthong; the alif itself is not romanized, but rather the short vowel
57
+ it “carr es” is romanized; e.g., ميړ أَسَلم ژرَندَه → Mī Aslam Zhrandah
58
+ b. When it carries a maddah (آ) (see vowel table, row 6), it
59
+ represents ā; e.g., آب بَند → Āb Band.
60
+ c. Medially and finally it represents ā (see vowel table, row 5);
61
+ e.g., ماڼۍ → Māṉêy
62
+ d. Medially and finally in words of Arabic origin, alif may serve
63
+ as the bearer of hamzah, e.g. رأس → ra’s.
64
+
65
+ - Occasionally the letter sequences سه ,زه ,که, and گه occur without
66
+ intervening vowels. They may be romanized k·h, z·h, s·h, and g·h in
67
+ order to differentiate these romanizations from the digraphs kh, zh,
68
+ sh, and gh, which are used to represent the letters ش ,ژ ,خ, and غ.
69
+ Additionally, the Pashto letters څ and ځ, routinely romanized ts and
70
+ dz, may be alternatively romanized s and z تس when for special reasons
71
+ it is desired that confusion be avoided with the character sequences
72
+ (ts) and دز (dz), respectively.
73
+
74
+ - "The vagaries of written Afghan languages, as pertains to spacing
75
+ and word division, are addressed as follows:
76
+ Spaces may be added to or subtracted from Afghan words written in
77
+ Arabic script, for the purposes of standardization. This is
78
+ particularly relevant when the words are hand-written, are rendered
79
+ “art st cally”, or express other s ch non-standard flourishes, as long
80
+ as the sense of the toponym, word, or phrase is not compromised.
81
+ Romanized toponyms are typically divided into constituent words
82
+ (spaces and other grammatical rules applied) when those words can stand
83
+ independently, for purposes of standardization and minimization of
84
+ confusion, particularly in situations where Afghan writers are
85
+ inconsistent in their application of spacing and word breaks. When the
86
+ Afghan word or suffix is only used in combination with other nouns or
87
+ adjectives, then it should be appended to the preceding word in its
88
+ romanization. This includes (but is not limited to) - ābā , -zaī, -zā
89
+ ah, - ū, -wand, -gaī, -kaī, -pūr, - ēsh, -lar, -lī, -lū and ullāh, as,
90
+ for example, seen in Raḩmatābād (رحمت آباد) and Raḩmatullāh (رحمت االله),
91
+ but Raḩmat Khēl (رحمتخيل) and Raḩmat Shahr (رحمتشهر)."
92
+
93
+ - The one-letter words د (Pashto) and و (Dari) are romanized dê and
94
+ wa, respectively.
95
+
96
+ - The word الله, meaning God, should always be romanized Allāh,
97
+ except as specified in note 3. Note that the Unicode value FDF2 spells
98
+ Allāh, but omits the alif in some common fonts, including Times New
99
+ Roman. If in doubt, try in Arial Unicode MS to verify. Also note that
100
+ the “dagger al f” ( ) above the second ل (lām) n the ord الله, is not
101
+ written but should be romanized ā, like a full-size alif.
102
+
103
+ - In names of Arabic origin, the l of the definite article al s ass m
104
+ lated before the ‘s n letters’ , , , , r, z, s, sh, ş, ẕ, , z, l and n.
105
+ In its romanization, the article should be separated from the name it
106
+ precedes and should not be capitalized except at the beginning of a
107
+ name, e.g. جبل السراج→ Jabal
108
+ as Sarāj
109
+
110
+ - In Arabic names, a shaddah, ّ is used to denote the doubling of a
111
+ particular consonant character, e.g. ُم َح َمد → Muḩammad. Ho ever, n
112
+ Pashto th s ‘do bl ng’ s freq ently om tted n both Perso- Arabic script
113
+ and the resulting romanization. Guidance on doubling may be taken from
114
+ an authoritative names source, such as an Afghan government source or
115
+ Pashto dictionary; for example, it is usual to see Ḩājī without and
116
+ ‘Abbās with the doubled consonant. The doubled y consonant is almost
117
+ always retained, as in Sayyid or Qayyūm.
118
+
119
+ - In Afghan names which contain an iẕāfah, it should be romanized as
120
+ -e or –ye according to
121
+ common pronunciation, but generally, -e is used if the preceding word
122
+ ends with a consonant other
123
+ than silent heh, and -ye if the preceding word ends with a vowel
124
+ sound e.g. غر ِحصار → Ghar-e ِ
125
+ Ḩ şār; َقل َع ٔه َنو → Qal‘ah-ye Now. Scholarly sources indicate that
126
+ heh is silent in darah and qal‘ah (thus darah-ye, qal‘ah-ye), but
127
+ lightly spoken in kōh and chāh (thus kōh-e, chāh-e).
128
+
129
+ - The character sequence خو, where followed by ا or ی should be
130
+ romanized khwā or khwī, although the w is either not pronounced, or
131
+ only weakly so, as in خواجه → khwājah.
132
+
133
+ - Plural nouns ending in -hā or -ān should always be romanized as a
134
+ single word, regardless of whether a space appears in a Perso-Arabic
135
+ script source.
136
+
137
+ - Unicode values listed in the tables above are required to ensure
138
+ standardization and to minimize confusion from competing
139
+ representations of a given character. It should be noted that the
140
+ Persian Unicode value 0643 or FEDA( ك Unicode value 06A9) is
141
+ recommended rather than the Arabic( ک or FED9), the Persian گ (Unicode
142
+ value 06AF) is recommended rather than ګ (Unicode value 06AB) or ڰ
143
+ (Unicode value 06B0) or ك (Unicode value 0643 or FEDA or FED9), and the
144
+ Pashto character ځ (Unicode value 0681) is recommended rather than the
145
+ heh with a dot above and a dot below (no Unicode value). For the letter ی
146
+ in its many variations, care must be exercised to follow this romanization
147
+ guide's recommendations to eliminate confusion for search engines
148
+ and software. BGN/PCGN does not use the Unicode encoding FEEF for the
149
+ character ی in any Afghan word.
150
+
151
+ - |
152
+ An inventory of letter-diacritic combinations in addition to the
153
+ unmodified letters of the basic Roman script is:
154
+
155
+ ‘ (U+2018)
156
+ Ā (U+0100)
157
+ Á (U+00C1)
158
+ Ḏ (U+0044+0031)
159
+ Ē (U+9112)
160
+ Ê (U+00CA)
161
+ Ḩ (U+1E28)
162
+ Ī (U+012A)
163
+ N-bar-top (U+004E+0304)
164
+ Ō (U+014C)
165
+ R-bar-bottom (U+0052+0031)
166
+ Ş (U+015E)
167
+ S-bar-top (U+0053+0304)
168
+ Ṯ (U+0054+0031)
169
+ Ţ (U+0162)
170
+ Ū (U+918A)
171
+ Z-comma-bottom (U+005A+0327)
172
+ Z-bar-top (U+005A+0304)
173
+ Ẕ (U+005A+0331)
174
+ ẔH (U+005A+0048+035F)
175
+
176
+
177
+ ʼ (U+2019)
178
+ ā (U+0101)
179
+ á (U+00E1)
180
+ ḏ (U+0064+00031)
181
+ ē (U+0113)
182
+ ê (U+00EA)
183
+ ḩ (U+1E29)
184
+ ī (U+912B)
185
+ n-bar-top (U+004E+0304)
186
+ ō (U+014D)
187
+ r-bar-bottom (U+0072+0031)
188
+ ş (U+015F)
189
+ s-bar-top (U+0073+0304)
190
+ ṯ (U+0074+0031)
191
+ ţ (U+0163)
192
+ ū (U+918B)
193
+ z-comma-bottom (U+007A+0327)
194
+ z-bar-top (U+007A+0304)
195
+ ẕ (U+007A+0331)
196
+ zh-under-bar (U+007A+0068+035F)
197
+
198
+ - The Romanization columns show only lowercase forms but, when
199
+ romanizing, uppercase and lowercase Roman letters as appropriate should
200
+ be used.
201
+ }
202
+
203
+ tests {
204
+ test "بَغْلَان", "baghlān"
205
+ test "پُوټَكَى", "pōtakay"
206
+ test "شِيرِين تَگَاب", "šīṟīn t̄agāb"
207
+ test "کُوْټ", "kōt"
208
+ test "ثَابِر", "s̄ābiṟ"
209
+ test "جَبَل السَرَاج", "jabal as saṟāj"
210
+ }
211
+
212
+ stage {
213
+
214
+ # CHARACTERS
215
+ parallel {
216
+
217
+ # Vowel, Diphthong and Diacritical Characters
218
+
219
+ # Or 'ē'. The character ی should be romanized ay or ē according to
220
+ # its root language or local pronunciation. In case of uncertainty a
221
+ # reference source (such as the Fairchild Aerial Surveys map series, or a
222
+ # BGN/PCGN approved policy document/list of recommended spellings) should
223
+ # be consulted.
224
+ sub "\u06CC", "ay"
225
+
226
+ sub "\u06D0", "ē" # Or 'ay'
227
+ sub "\u06CC", "ay" # Or 'āy'.
228
+
229
+ # Both the combination ay and aī are available to romanize this
230
+ # character according to its root language or local pronunciation. In
231
+ # cases where the sound is uncertain ay is the default romanization in
232
+ # BGN/PCGN standardization procedures
233
+ sub "\u06CC", "ā"
234
+
235
+ sub "\u06CD", "əy" # Or 'ay'
236
+ sub "\u0621", "’"
237
+ sub "\u0674", any(["-i-", "e", "ī"])
238
+
239
+ # Other Diacritical Marks and Language Conventions
240
+
241
+ sub "\u0627", "ay" # Or 'āy'
242
+ sub "\u06CC", "ya" # Or 'yā'
243
+
244
+ sub "\u0648", "w"
245
+ sub "\u06C0", '. . .h-e'
246
+
247
+
248
+
249
+ # special rules
250
+
251
+ sub space, "", after: "\u0622\u0628\u064E\u0627\u062F" # space followed by abad is removed
252
+ sub "\ufdf2", "Allāh" # See note 5
253
+
254
+ # pointing
255
+
256
+ sub "\u064E", any(["a", "â"]) # fatha
257
+
258
+ sub "\u064e", "", after: "\u0629" # َ fatha followed by ta' marboota
259
+ sub "\u064e", "", after: "a" + any("h|t") # َ fatha followed by ta' marboota, handling different order of conversion
260
+
261
+ # Both e and i are available to romanize this short vowel,
262
+ # depending on local usage and/or root language. In cases where the sound
263
+ # is uncertain, i is the default romanization in BGN/PCGN standardization
264
+ # procedures.
265
+ sub "\u0650", any(["i", "e"])
266
+
267
+ sub "\u0650" + boundary, "-e" # ِ kasra at the end of a word
268
+
269
+ # Both o and u are available to romanize this short vowel,
270
+ # depending on local usage and/or root language. In cases where the sound
271
+ # is uncertain, u is the default romanization in BGN/PCGN standardization
272
+ # procedures.
273
+ sub "\u064f", any(["u", "o"]) # ُ damma
274
+
275
+ # An alif with mad ( آ ) is written only in the initial position by
276
+ # BGN/PCGN standardization procedures, in keeping with Persian language
277
+ # family standards of use of the Arabic alphabet. The same letter written
278
+ # in a medial or final position is written . . .
279
+ sub "\u064e\u0627", "ā" # ـَا fatha followed by ا
280
+ sub "\u0622", "ā" # آ
281
+
282
+ sub "\u0659", any(["ə", "ê"]) # ٙ madda
283
+
284
+ sub "\u0648", "ō"
285
+
286
+ sub "\u0648", any(["u", "ū"])
287
+
288
+ sub "\u064e\u0648", any(["aw", "āw"]) # ـَو
289
+
290
+ sub "\u06CC", "i" # Or 'ī'
291
+
292
+ sub "\u0649\u0670", "ā" # ىٰ
293
+
294
+
295
+ sub "\u0652", "" # ْ sokoon
296
+
297
+ # special pointed letters
298
+ sub "\u0639\u064e", "‘a" # عَ
299
+ sub "\u0639\u0650", "‘i" # عِ
300
+ sub "\u0639\u064f", "‘ū" # عُ
301
+ # handle MacOS regex difference
302
+ sub "\u0639\u064f\u0648", "‘ū" # عُو damma followed by و
303
+
304
+ sub "\u0650\u064a", "ī" # ـِي kasra followed by ي
305
+ sub "\u0650\u06cc", "ī" # ـِي kasra followed by ي
306
+ sub "\u0650\u064a\u0651\u064e", "īy" # ـِيَّ
307
+ sub "\u0650\u064a", "iy", after: any(["\u064e", "u064f"]) # ـِي kasra followed by ي
308
+ sub "\u064f\u0648", "ō" # ـُو damma followed by و
309
+ sub "\u064e\u0649", "ay" # ـَى fatha followed by ى which is ا not ي
310
+ sub "\u064e\u0648\u0652", "aw" # ـَوْ
311
+ sub "\u064e\u0648", "ow" # ـَو
312
+ sub "\u064e\u064a\u0652", "ay" # ـَيْ
313
+ sub "\u0650\u06cc\u0651\u064e", "īy" # ـِيَّ
314
+ sub "\u064e\u064a", "aī" # ـَي
315
+ sub "\u064e\u06cc", "aī" # ـَي
316
+ sub "\u0674", "-e" # ٴ
317
+ sub "\u0654", "-e" # ٔ
318
+ # - '-ye'
319
+
320
+
321
+
322
+ # ta' marboota
323
+ sub "\u0629", "at" # ة in the middle of the sentence
324
+ sub "\u0629" + line_end, "ah"
325
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
326
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
327
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
328
+ sub "\u0629", "ah", before: boundary + "\u0627\u0644" + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff") + any("\u0600".."\u06ff")
329
+ 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")
330
+ 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")
331
+ 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")
332
+ 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")
333
+ 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")
334
+ 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")
335
+ 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")
336
+ 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")
337
+
338
+
339
+ # shadda
340
+
341
+ sub "\u0628\u0651", "bb" # ب
342
+ sub "\u062a\u0651", "tt" # ت
343
+ sub "\u062b\u0651", "thth" # ث
344
+ sub "\u062c\u0651", "jj" # ج
345
+ sub "\u062d\u0651", "ẖẖ" # ح
346
+ sub "\u062e\u0651", "khkh" # خ
347
+ sub "\u062f\u0651", "dd" # د
348
+ sub "\u0630\u0651", "z̄z̄" # ذ
349
+ sub "\u0631\u0651", "rr" # ر
350
+ sub "\u0632\u0651", "zz" # ز
351
+ sub "\u0633\u0651", "ss" # س
352
+ sub "\u0634\u0651", "sh" # ش
353
+ sub "\u0635\u0651", "şş" # ص
354
+ sub "\u0636\u0651", "ḏḏ" # ض
355
+ sub "\u0637\u0651", "ţţ" # ط
356
+ sub "\u0638\u0651", "z̧z̧" # ظ
357
+ sub "\u063a\u0651", "ghgh" # غ
358
+ sub "\u0641\u0651", "ff" # ف
359
+ sub "\u0642\u0651", "qq" # ق
360
+ sub "\u0643\u0651", "kk" # ك
361
+ sub "\u0644\u0651", "ll" # ل
362
+ sub "\u0645\u0651", "mm" # م
363
+ sub "\u0646\u0651", "nn" # ن
364
+ sub "\u0647\u0651", "hh" # ه
365
+ sub "\u0648\u0651", "ww" # و
366
+ sub "\u064a\u0651", "yy" # ي
367
+
368
+
369
+ sub "\u0621", "’" # ء
370
+ sub "\u0626", "’" # ئ
371
+
372
+ sub "\u0623", "" # أ
373
+ sub "\u0625", "" # إ
374
+ sub "\u0627", "ā" # ا
375
+
376
+ # See note B
377
+ sub boundary + "\u0627\u0644", "al " # ال
378
+ # '\uFE8E' : '' # ﺎ
379
+
380
+
381
+ # Sun letters
382
+ sub boundary + "\u0627\u0644\u062a", "at̄ t̄" # الت
383
+ sub boundary + "\u0627\u0644\u062b", "as̄ s̄" # الث
384
+ sub boundary + "\u0627\u0644\u062f", "aḏ ḏ" # الد
385
+ sub boundary + "\u0627\u0644\u0630", "az̄ z̄" # الذ
386
+ sub boundary + "\u0627\u0644\u0631", "aṟ ṟ" # الر
387
+ sub boundary + "\u0627\u0644\u0632", "az z" # الز
388
+ sub boundary + "\u0627\u0644\u0633", "as s" # الس
389
+ sub boundary + "\u0627\u0644\u0634", "aš š" # الش
390
+ sub boundary + "\u0627\u0644\u0635", "as̱ s̱" # الص
391
+ sub boundary + "\u0627\u0644\u0636", "ad͟z d͟z" # الض
392
+ sub boundary + "\u0627\u0644\u0637", "aṯ ṯ" # الط
393
+ sub boundary + "\u0627\u0644\u0638", "aẕ ẕ" # الظ
394
+ sub boundary + "\u0627\u0644\u0644", "al l" # الل
395
+ sub boundary + "\u0627\u0644\u0646", "an n" # الن
396
+
397
+ # consonant characters
398
+
399
+ sub "\u0628", "b" # ب
400
+ sub "\u067E", "p" # پ
401
+ sub "\u062A", "t̄" # ت
402
+ sub "\u067C", "t" # ټ
403
+ sub "\u062B", "s̄" # ث
404
+ sub "\u062C", "j" # ج
405
+ sub "\u0686", "č" # ‫چ‬
406
+
407
+ # The variant form ج is seen infrequently and does not have a single Unicode encoding.
408
+ sub "\u0681", "j̄" # Note 2 # ‫ځ
409
+ sub "\u0685", "c" # Note 2 # ‫څ
410
+
411
+ sub "\u062D", "ẖ" # ح
412
+ sub "\u062E", "kh" # خ
413
+ sub "\u062F", "ḏ" # د
414
+ sub "\u0689", "d" # ‫ډ‬
415
+ sub "\u0630", "z̄" # ذ
416
+ sub "\u0631", "ṟ" # ر
417
+ sub "\u0693", "r" # ړ
418
+ sub "\u0632", "z" # ز
419
+ sub "\u0698", "ž" # ‫ژ‬
420
+ sub "\u0696", "ž̲" # ږ
421
+ sub "\u0633", "s" # س
422
+ sub "\u0634", "š" # ش
423
+ sub "\u069A", "š̱" # ښ
424
+ sub "\u0635", "s̱" # ص
425
+ sub "\u0636", "d͟z" # ض
426
+ sub "\u0637", "ṯ" # ط
427
+ sub "\u0638", "ẕ" # ظ
428
+ sub "\u0639", "’" # ع
429
+ sub "\u063A", "gh" # غ
430
+ sub "\u0641", "f" # ف
431
+ sub "\u0642", "q" # ق
432
+ sub "\u0643", "k" # ك
433
+ sub "\u06A9", "k" # ک
434
+ sub "\u06AF", "g" # گ
435
+ sub "\u0644", "l" # ل‫‬
436
+ sub "\u0645", "m" # م
437
+ sub "\u0646", "n" # ن
438
+ sub "\u06BC", "ṉ" # ڼ
439
+ sub "\u0648", "w" # و
440
+ sub "\u0647", "h" # ه
441
+ sub "\u0649", "y" # ي
442
+ sub "\u064a", "y" # ي
443
+ }
444
+
445
+ }
@@ -0,0 +1,289 @@
1
+ metadata {
2
+ authority_id: bgnpcgn
3
+ id: 2007
4
+ language: iso-639-3:prs
5
+ source_script: Arab
6
+ destination_script: Latn
7
+ name: BGN/PCGN Romanization System -- Pashto (1968)
8
+ url: https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/693760/ROMANIZATION_OF_PASHTO.pdf
9
+ creation_date: 1968
10
+ confirmation_date: 2017-11
11
+ description: |
12
+ Pashto is an Indo-Iranian language and is one of two
13
+ nationally official languages in Afghanistan and one of
14
+ five regionally recognised languages in Pakistan. The
15
+ romanization system presented here may be applied to all
16
+ Pashto geographical names. Although the BGN/PCGN policy for
17
+ geographical names in Afghanistan is to apply the BGN/PCGN
18
+ national system of romanization for Afghanistan (2007),
19
+ which incorporates Dari elements, when applied to a Pashto
20
+ geographical name, the romanized results of the BGN/PCGN
21
+ national system for Afghanistan are the same as those of
22
+ this Pashto romanization system1 . The Pashto alphabet uses
23
+ a modified form of the Perso-Arabic script, and contains
24
+ twelve additional consonants not present in standard
25
+ Arabic, as well as three additional vowel characters and an
26
+ additional vowel point. ڼ گ ښ ژ ږ ړ ډ ځ څ چ ټ پ :Consonants
27
+ ٙ :Point Vowel; ې ۍ ى :Vowels The points used in Arabic to
28
+ mark short vowels and certain other diacritical marks are
29
+ not written in Pashto. Consequently, a reference source may
30
+ sometimes be required to aid correct identification of the
31
+ standard spellings and proper vowels and elimination of
32
+ dialectal and idiosyncratic variations. In the interests of
33
+ clarity, a column showing vowel pointing from Arabic to
34
+ indicate short vowels has been included in the examples
35
+ below, alongside the unpointed form that will usually be
36
+ encountered. However it should be noted that the
37
+ pronunciation of short vowels will vary. (Note: it is
38
+ recommended that a font such as Scheherazade, available
39
+ from www.sil.org, which includes the Unicode extended
40
+ Arabic sub-range, be used to view this system2 .)
41
+
42
+ notes:
43
+ - 1. Alif ( ‫ا‬ ) should be romanized as follows
44
+ a. Initially,it indicates that the word begins with a vowel or
45
+ diphthong; the alif itself is not romanized, but rather the
46
+ short vowel it “carries” is romanized; e.g., Aslam Zhrandah
47
+ ‫ه‬ َ‫د‬ ‫ن‬ ‫ژر‬ ‫سلَم‬ َ‫أ‬ ‫ميړ‬ → b. When it carries a
48
+ maddah (‫)آ‬ (see vowel table, row 3), it represents ā;
49
+ e.g., Band. Mīṟ ‫د‬ ‫ن‬ ‫ب‬ َ ‫آب‬ → Āb c. Medially and
50
+ finally it represents ā (see table 2, row 2); e.g., ‫ۍ‬
51
+ ‫ماڼ‬ → Māṉêy d. Medially and finally in words of Arabic
52
+ origin, alif may serve as the bearer of hamzah, e.g.
53
+ ‫رأس‬ → ra’s. See also note 4.
54
+
55
+ - 2. The characters tsē ( ‫څ‬ ) and dzē ( ‫ځ‬ ) may be
56
+ romanized t͡ s and d͡ z (the combining double breve (
57
+ Unicode 0361) appearing over the digraph) when for special
58
+ reasons it is desired that confusion be avoided between
59
+ ‫ت‬ (t) plus ‫س‬ (s) and between ‫د‬ (d) plus ‫ز‬ (z),
60
+ respectively.
61
+
62
+ - 3. Occasionally the character sequences ‫ه‬ ‫ك‬ , ‫ه‬ ‫ز‬ ,
63
+ ‫ه‬ ‫س‬ , and ‫ه‬ ‫گ‬ occur . They may be romanized k·h, z·
64
+ h, s·h, and g·h in order to differentiate these
65
+ romanizations from the digraphs kh, zh, sh, and gh, which
66
+ are used to represent the characters ‫خ‬ , ‫ژ‬, ‫ش‬ , and
67
+ ‫غ‬ respectively .
68
+
69
+ - 4. Hamzah ( ‫ء‬ ) should be romanized as follows a. In
70
+ word-initial position, where it will appear either above or
71
+ below alif ( indicates a short vowel and should not itself
72
+ be romanized. romanized by an apostrophe, e.g. ‫أ‬ or
73
+ ‫إ‬ ), it In other positions it should be ‫جُزء‬ → juz’. b.
74
+ Yeh with hamzah ( ‫ئ‬ ) should be romanized êy, unless it
75
+ represents the compound (iẕāfah) morpheme, in which case it
76
+ is romanized according to note 9 below.
77
+
78
+ - 5. The division of words utilized in Pashto writing is
79
+ followed in romanization, except that the elements –ābād, -
80
+ khwā, -shahr, -zādah, -zay and -ullāh are always romanized
81
+ as part of the preceding word, e.g. ‫آباد‬ ‫ت‬ ‫م‬ َ ْ‫ح‬
82
+ ‫ر‬ َ → Raḩmatābād and ‫الله‬ ‫ت‬ ‫م‬ َ ْ‫ح‬ ‫ر‬ َ →
83
+ Raḩmatullāh. However, when the word for God ( ‫الله‬ )
84
+ appears as a standalone word it should be written Allāh.
85
+ Note also the “dagger alif” ( ٙ) above the second ‫ل‬ (lām)
86
+ in the word ‫الله‬ ; this, like the short vowels, is not
87
+ written in Pashto but should be romanized ā, like a full-
88
+ size alif. Persian derivational endings such as –vand and
89
+ endings of Turkish origin such as –lar, -lī, -lū, -i, -u, -
90
+ si, and –su, should be written together with the preceding
91
+ word.
92
+
93
+ - 6. The Pashto preposition ‫د‬ should be romanized dê in
94
+ agreement with its pronunciation, despite the fact that
95
+ it is sometimes pointed with kasrah ( ٙ ).
96
+
97
+ - 7. In names of Arabic origin, the l of the definite article
98
+ al/ul is assimilated before the ‘sun letters’ t, s̄ , d,
99
+ z̄ , r, z, s, sh, ş, ẕ, ţ, z̧ , l and n. In romanization,
100
+ the article will be written al or its assimilated
101
+ equivalent in name-initial position but ul or its
102
+ assimilated equivalent elsewhere; the article should be
103
+ separated from the name it precedes and should not be
104
+ capitalized, except at the beginning of a name, e.g. جَبَل
105
+ السَرَاج → Jabal us Sarāj
106
+
107
+ - 8. In Arabic names, a shaddah, ٙ is used to denote the
108
+ doubling of a particular consonant character, e.g. ‫مَّد‬
109
+ َ‫ح‬ ‫م‬ ُ → Muḩammad. However, in Pashto this ‘doubling’
110
+ is frequently omitted in both Perso-Arabic script and the
111
+ resulting romanization. Guidance on doubling may be taken
112
+ from an authoritative names source, such as an Afghan
113
+ government source or Pashto dictionary; for example, it is
114
+ usual to see Ḩājī without and ‘Abbās with the doubled
115
+ consonant. The doubled y consonant is almost always
116
+ retained, as in Sayyid or Qayyūm
117
+
118
+ - 9. The iẕāfah morpheme is not a grammatical feature of
119
+ Pashto and, if encountered in a linguistically hybrid
120
+ geographical name (i.e. combining features of both Pashto
121
+ and Dari), it should be treated according to the BGN/PCGN
122
+ national system of romanization for Afghanistan, 2007, as –
123
+ e, unless the preceding word ends with a silent heh (‫)ه‬
124
+ or a vowel when it should be shown – ye, e.g. 10. The
125
+ character sequence ‫خو‬ , ‫صار‬ ‫ح‬ ِ ‫غر‬ → Ghar-e Ḩişār;
126
+ ‫و‬ ‫ن‬ َ ‫ه‬ ٔ ‫لع‬ َ ‫ق‬ َ → when followed by ‫ا‬ or
127
+ ‫ی‬ , Qal‘ah-ye Now.
128
+
129
+
130
+ - 10. The character sequence خو when followed by ‫ا‬ or
131
+ ‫ی‬ ,should be romanized khw, although the w is either not
132
+ pronounced, or only weakly pronounced; e.g. ‫خواجه‬ →
133
+ khwājah.
134
+
135
+ - 11. An inventory of letter-diacritic combinations in addition to the unmodified letters of the
136
+ basic Roman script is
137
+ ‘ (U+2018)
138
+ ʼ (U+2019)
139
+ Ā (U+0100)
140
+ ā (U+0101)
141
+ Á (U+00C1)
142
+ á (U+00E1)
143
+ Ḏ (U+0044+0031)
144
+ ḏ (U+0064+00031)
145
+ Ē (U+0112)
146
+ ē (U+0113)
147
+ Ê (U+00CA)
148
+ ê (U+00EA)
149
+ Ḩ (U+1E28)
150
+ ḩ (U+1E29)
151
+ Ī (U+012A)
152
+ ī (U+012B)
153
+ N̄ (U+004E+0304)
154
+ n̄ (U+004E+0304)
155
+ Ō (U+014C)
156
+ ō (U+014D)
157
+ Ṟ (U+0052+0031)
158
+ ṟ (U+0072+0031)
159
+ Ş (U+015E)
160
+ ş (U+015F)
161
+ S̄ (U+0053+0304)
162
+ s̄ (U+0073+0304)
163
+ Ṯ (U+0054+0031)
164
+ ṯ (U+0074+0031)
165
+ Ţ (U+0162)
166
+ ţ (U+0163)
167
+ Ū (U+016A)
168
+ ū (U+016B)
169
+ Z̧ (U+005A+0327)
170
+ z̧ (U+007A+0327)
171
+ Z̄ (U+005A+0304)
172
+ z̄ (U+007A+0304)
173
+ Ẕ (U+005A+0331)
174
+ ẕ (U+007A+0331)
175
+ Z͟ H (U+005A+0048+035F)
176
+ z͟ h (U+007A+0068+035F)
177
+ }
178
+
179
+ tests {
180
+ test "بَغْلان", "Baghlān"
181
+ test "پُوټَكَى", "Pōṯakay"
182
+ test "شِيرِين تَگَاب", "Shīrīn Tagāb"
183
+ test "کُوْټ", "Kōṯ"
184
+ test "ثَابِر", "S̄ābir"
185
+ test "جَلال آبَاد", "Jalālābād"
186
+ test "چَارِيكَار", "Chārīkār"
187
+ test "ځَدْرَاڼ", "Dzadrāṉ"
188
+ test "څَوکۍ", "Tsowkêy"
189
+ test "حَضْرَتِ إِمَام", "Ḩaẕrat-e Imām"
190
+ test "خُوْسْت", "Khōst"
191
+ test "سْپِين بُوْلْدَک", "Spīn Bōldak"
192
+ test "ډَنْډ وَ پَتَان", "Ḏanḏ Wa Patān"
193
+ test "كَنْدَهَار", "Kandahār"
194
+ test "أَنْدَړ", "Andaṟ"
195
+ test "كُنْدُز", "Kunduz"
196
+ test "مِير أَسْلَم ژْرَنْدَه", "Mīr Aslam Zhrandah"
197
+ test "ږِيرَه", "Z͟hīrah"
198
+ test "سَمَنْگَان", "Samangān"
199
+ test "كښٙتَه كَلا", "Ks͟hêtah Kalā"
200
+ test "قَيْصَار", "Qayşār"
201
+ test "فَيض آبَاد", "Faīẕābād"
202
+ test "حَضْرَتِ سُلْطَان", "Ḩaẕrat-e Sulţān"
203
+ test "ظَاهِر كَلا", "Z̧āhir Kalā"
204
+ test "پُلِ عَلَم", "Pul-e ‘Alam"
205
+ test "غَزْنِي", "Ghaznī"
206
+ test "مَزَارِ شَرِيف", "Mazār-e Sharīf"
207
+ test "قَيْصَار", "Qayşār"
208
+ test "كَنْدَهَار", "Kandahār"
209
+ test "گَرْدېز", "Gardēz"
210
+ test "کَابُل", "Kābul"
211
+ test "مَيمَنَه", "Maīmanah"
212
+ test "خَان آبَاد", "Khānābād"
213
+ test "مَاڼۍ", "Māṉêy"
214
+ test "وَاخَان", "Wākhān"
215
+ test "يَنْگِي قَلعَه", "Yangī Qal‘ah"
216
+ test "جَلال آبَاد", "Jalālābād"
217
+ test "مُرْغَاب کَابُل", "Murghāb Kābul"
218
+ test "گٙردُون", "Gêrdōn"
219
+ test "آب بَنْد", "Āb Band"
220
+ test "سْپِين بُوْلْدَک", "Spīn Bōldak"
221
+ test "جَوزجَان", "Jowzjān"
222
+ test "گَرْدېز", "Gardēz"
223
+ test "مَیدان شَهْر", "Maīdān Shahr"
224
+ test "ډَنْډِ سُفْلىٰ", "Ḏanḏ-e Suflá"
225
+ test "جَبَل السَرَاج", "Jabal us Sarāj"
226
+ }
227
+
228
+ dependency "bgnpcgn-prs-Arab-Latn-2007", as: arablatn
229
+
230
+ stage {
231
+
232
+ run map.arablatn.stage.main
233
+
234
+ # CHARACTERS
235
+ parallel {
236
+
237
+ sub "\u0650", "i" # ِ kasra
238
+ sub "\u064f", "u" # ُ damma
239
+
240
+ sub "\u0650" + boundary, "-e" # ِ kasra
241
+
242
+ sub space + "\u0627\u0644\u0644\u0651\u064e\u0647", "ullāh" # Note5
243
+ sub space + "\u062E\u0648\u0627", "khwā" # Note5
244
+ sub space + "\u0634\u064E\u0647\u0631", "shahr" # Note5
245
+ sub space + "\u0632\u0627\u062F\u0629", "zādah" # Note5
246
+ sub space + "\u0632\u064E\u064a", "zay" # Note5
247
+ sub "\u0652", "" # ْ sokoon
248
+ sub "\u0659", "ê"
249
+
250
+ # Sun letters
251
+ sub boundary + "\u0627\u0644\u062a", "ut t" # الت
252
+ sub boundary + "\u0627\u0644\u062b", "us̄ s̄" # الث
253
+ sub boundary + "\u0627\u0644\u062f", "ud d" # الد
254
+ sub boundary + "\u0627\u0644\u0630", "uz̄ z̄" # الذ
255
+ sub boundary + "\u0627\u0644\u0631", "ur r" # الر
256
+ sub boundary + "\u0627\u0644\u0632", "uz z" # الز
257
+ sub boundary + "\u0627\u0644\u0633", "us s" # الس
258
+ sub boundary + "\u0627\u0644\u0634", "ush sh" # الش
259
+ sub boundary + "\u0627\u0644\u0635", "uş ş" # الص
260
+ sub boundary + "\u0627\u0644\u0636", "uẕ ẕ" # الض
261
+ sub boundary + "\u0627\u0644\u0637", "uţ ţ" # الط
262
+ sub boundary + "\u0627\u0644\u0638", "uz̧ z̧" # الظ
263
+ sub boundary + "\u0627\u0644\u0644", "ul l" # الل
264
+ sub boundary + "\u0627\u0644\u0646", "un n" # الن
265
+
266
+ sub "\u0626", "êy" # ئ
267
+ }
268
+
269
+ # POSTRULES
270
+ sub any("\u0061".."\uFFFF"), upcase, before: boundary, not_before: boundary + any("‘’'-")
271
+ # don't capitalize defined article in the middle of a sentence
272
+ sub " Ut T", " ut T" # الت
273
+ sub " Us̄ S̄", " us̄ S̄" # الث
274
+ sub " Ud D", " ud D" # الد
275
+ sub " Uz̄ Z̄", " uz̄ Z̄" # الذ
276
+ sub " Ur R", " ur R" # الر
277
+ sub " Uz Z", " uz Z" # الز
278
+ sub " Us S", " us S" # الس
279
+ sub " As S", " us S" # needed to add it after porting, why?
280
+ sub " Ush Sh", " ush Sh" # الش
281
+ sub " Uş Ş", " uş Ş" # الص
282
+ sub " Uẕ Ẕ", " uẕ Ẕ" # الض
283
+ sub " Uţ Ţ", " uţ Ţ" # الط
284
+ sub " Uz̧ Z̧", " uz̧ Z̧" # الظ
285
+ sub " Ul L", " ul L" # الل
286
+ sub " Un n", " un N" # الن
287
+
288
+ compose
289
+ }