interscript 0.1.2 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (261) hide show
  1. checksums.yaml +4 -4
  2. data/README.adoc +250 -17
  3. data/lib/g2pwrapper.py +34 -0
  4. data/lib/interscript.rb +142 -20
  5. data/lib/interscript/command.rb +28 -0
  6. data/lib/interscript/fs.rb +69 -0
  7. data/lib/interscript/mapping.rb +142 -0
  8. data/lib/interscript/opal.rb +57 -0
  9. data/lib/interscript/opal/entrypoint.rb +12 -0
  10. data/lib/interscript/opal/map_translate.rb +7 -0
  11. data/lib/interscript/opal/maps.js.erb +10 -0
  12. data/lib/interscript/version.rb +1 -1
  13. data/lib/model-7 +0 -0
  14. data/lib/tha-pt-b-7 +0 -0
  15. data/maps/acadsin-zho-Hani-Latn-2002.yaml +38916 -0
  16. data/maps/alalc-amh-Ethi-Latn-1997.yaml +513 -0
  17. data/maps/alalc-amh-Ethi-Latn-2011.yaml +138 -0
  18. data/maps/alalc-ara-Arab-Latn-1997.yaml +1287 -0
  19. data/maps/alalc-asm-Deva-Latn-1997.yaml +165 -0
  20. data/maps/alalc-asm-Deva-Latn-2012.yaml +40 -0
  21. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +145 -0
  22. data/maps/alalc-bel-Cyrl-Latn-1997.yaml +129 -0
  23. data/maps/alalc-ben-Beng-Latn-2017.yaml +130 -0
  24. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +98 -0
  25. data/maps/alalc-ell-Grek-Latn-1997.yaml +628 -0
  26. data/maps/alalc-ell-Grek-Latn-2010.yaml +626 -0
  27. data/maps/alalc-guj-Gujr-Latn-1997.yaml +266 -0
  28. data/maps/alalc-guj-Gujr-Latn-2011.yaml +64 -0
  29. data/maps/alalc-hin-Deva-Latn-1997.yaml +211 -0
  30. data/maps/alalc-hin-Deva-Latn-2011.yaml +47 -0
  31. data/maps/alalc-kat-Geok-Latn-1997.yaml +111 -0
  32. data/maps/alalc-kat-Geor-Latn-1997.yaml +150 -0
  33. data/maps/alalc-kor-Hang-Latn-1997.yaml +98 -0
  34. data/maps/alalc-mal-Mlym-Latn-1997.yaml +303 -0
  35. data/maps/alalc-mal-Mlym-Latn-2012.yaml +73 -0
  36. data/maps/alalc-mar-Deva-Latn-1997.yaml +189 -0
  37. data/maps/alalc-mar-Deva-Latn-2011.yaml +45 -0
  38. data/maps/alalc-mkd-Cyrl-Latn-1997.yaml +114 -0
  39. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +103 -0
  40. data/maps/alalc-mon-Cyrl-Latn-1997.yaml +220 -0
  41. data/maps/alalc-pan-Guru-Latn-1997.yaml +256 -0
  42. data/maps/alalc-pan-Guru-Latn-2011.yaml +78 -0
  43. data/maps/alalc-per-Arab-Latn-1997.yaml +375 -0
  44. data/maps/alalc-pli-Deva-Latn-2012.yaml +144 -0
  45. data/maps/alalc-pra-Deva-Latn-2012.yaml +47 -0
  46. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +225 -0
  47. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +162 -0
  48. data/maps/alalc-san-Deva-Latn-2012.yaml +172 -0
  49. data/maps/alalc-sin-Sinh-Latn-1997.yaml +292 -0
  50. data/maps/alalc-sin-Sinh-Latn-2011.yaml +71 -0
  51. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +118 -0
  52. data/maps/alalc-srp-Cyrl-Latn-2013.yaml +135 -0
  53. data/maps/alalc-tam-Taml-Latn-1997.yaml +62 -0
  54. data/maps/alalc-tam-Taml-Latn-2011.yaml +58 -0
  55. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +145 -0
  56. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +16 -0
  57. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +283 -0
  58. data/maps/{bas-rus-Cyrl-Latn-bss.yaml → bas-rus-Cyrl-Latn-2017-bss.yaml} +58 -33
  59. data/maps/{bas-rus-Cyrl-Latn-oss.yaml → bas-rus-Cyrl-Latn-2017-oss.yaml} +55 -35
  60. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +292 -0
  61. data/maps/bgn-kor-Hang-Latn-1943.yaml +35 -0
  62. data/maps/bgn-kor-Kore-Latn-1943.yaml +31 -0
  63. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +208 -0
  64. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +208 -0
  65. data/maps/bgnpcgn-amh-Ethi-Latn-1967.yaml +532 -0
  66. data/maps/bgnpcgn-ara-Arab-Latn-1956.yaml +596 -0
  67. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +2 -3
  68. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +104 -0
  69. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +188 -0
  70. data/maps/bgnpcgn-bel-Cyrl-Latn-1979.yaml +289 -0
  71. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +119 -0
  72. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +15 -65
  73. data/maps/bgnpcgn-che-Cyrl-Latn-2008.yaml +184 -0
  74. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +705 -0
  75. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +23 -0
  76. data/maps/{bgnpcgn-per-Arab-Latn-1956.yaml → bgnpcgn-fas-Arab-Latn-1956.yaml} +5 -2
  77. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +257 -0
  78. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +131 -0
  79. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +42 -0
  80. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +253 -0
  81. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +48 -0
  82. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +48 -0
  83. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +163 -0
  84. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +190 -0
  85. data/maps/bgnpcgn-mon-Cyrl-Latn-1964.yaml +223 -0
  86. data/maps/bgnpcgn-nep-Deva-Latn-2011.yaml +230 -0
  87. data/maps/bgnpcgn-per-Arab-Latn-1958.yaml +336 -0
  88. data/maps/bgnpcgn-prs-Arab-Latn-2007.yaml +639 -0
  89. data/maps/bgnpcgn-prs-Arab-Latn-yaghoubi.yaml +459 -0
  90. data/maps/bgnpcgn-rue-Cyrl-Latn-2016.yaml +168 -0
  91. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +150 -65
  92. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +170 -0
  93. data/maps/bgnpcgn-tat-Cyrl-Latn-2007.yaml +220 -0
  94. data/maps/bgnpcgn-tgk-Cyrl-Latn-1994.yaml +240 -0
  95. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +80 -4
  96. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +119 -0
  97. data/maps/bgnpcgn-uzb-Cyrl-Latn-1979.yaml +127 -0
  98. data/maps/bgnpcgn-uzb-Cyrl-Latn-2000.yaml +82 -0
  99. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +7456 -0
  100. data/maps/bis-asm-Beng-Latn-13194-1991.yaml +159 -0
  101. data/maps/bis-ben-Beng-Latn-13194-1991.yaml +156 -0
  102. data/maps/bis-dev-Deva-Latn-13194-1991.yaml +184 -0
  103. data/maps/bis-guj-Gujr-Latn-13194-1991.yaml +181 -0
  104. data/maps/bis-knd-Knda-Latn-13194-1991.yaml +173 -0
  105. data/maps/bis-mlm-Mlym-Latn-13194-1991.yaml +176 -0
  106. data/maps/bis-ori-Orya-Latn-13194-1991.yaml +160 -0
  107. data/maps/bis-pnj-Guru-Latn-13194-1991.yaml +175 -0
  108. data/maps/bis-tel-Telu-Latn-13194-1991.yaml +170 -0
  109. data/maps/bis-tml-Taml-Latn-13194-1991.yaml +155 -0
  110. data/maps/by-bel-Cyrl-Latn-1998.yaml +172 -0
  111. data/maps/by-bel-Cyrl-Latn-2007.yaml +115 -0
  112. data/maps/din-grc-Grek-Latn-31634-2011-t1.yaml +899 -0
  113. data/maps/din-hin-Deva-Latn-33904-2018.yaml +100 -0
  114. data/maps/din-kat-Geor-Latn-32707-2010.yaml +145 -0
  115. data/maps/din-mar-Deva-Latn-33904-2018.yaml +84 -0
  116. data/maps/din-nep-Deva-Latn-33904-2018.yaml +119 -0
  117. data/maps/din-pli-Deva-Latn-33904-2018.yaml +75 -0
  118. data/maps/din-pra-Deva-Latn-33904-2018.yaml +63 -0
  119. data/maps/din-san-Deva-Latn-33904-2018.yaml +338 -0
  120. data/maps/din-tam-Taml-Latn-33903-2016.yaml +213 -0
  121. data/maps/dos-nep-Deva-Latn-1997.yaml +47 -0
  122. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +684 -0
  123. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +680 -0
  124. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +19 -0
  125. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +31 -0
  126. data/maps/ggg-kat-Geor-Latn-2002.yaml +92 -0
  127. data/maps/gki-bel-Cyrl-Latn-1992.yaml +33 -0
  128. data/maps/gki-bel-Cyrl-Latn-2000.yaml +201 -0
  129. data/maps/gost-rus-Cyrl-Latn-16876-71-1983.yaml +190 -0
  130. data/maps/gost-rus-Cyrl-Latn-7.79-2000-2002.yaml +157 -0
  131. data/maps/hk-yue-Hani-Latn-1888.yaml +38497 -0
  132. data/maps/icao-bel-Cyrl-Latn-9303.yaml +109 -98
  133. data/maps/icao-bul-Cyrl-Latn-9303.yaml +2 -7
  134. data/maps/{icao-per-Arab-Latn-9303.yaml → icao-fas-Arab-Latn-9303.yaml} +6 -8
  135. data/maps/icao-heb-Hebr-Latn-9303.yaml +119 -125
  136. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +2 -3
  137. data/maps/icao-rus-Cyrl-Latn-9303.yaml +2 -4
  138. data/maps/icao-srp-Cyrl-Latn-9303.yaml +2 -3
  139. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +2 -4
  140. data/maps/iso-ara-Arab-Latn-233-1984.yaml +323 -0
  141. data/maps/iso-asm-Beng-Latn-15919-2001.yaml +75 -0
  142. data/maps/iso-ben-Beng-Latn-15919-2001.yaml +175 -0
  143. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +613 -0
  144. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +44 -0
  145. data/maps/iso-guj-Gujr-Latn-15919-2001.yaml +220 -0
  146. data/maps/iso-hin-Deva-Latn-15919-2001.yaml +87 -0
  147. data/maps/iso-inc-Deva-Latn-15919-2001.yaml +61 -0
  148. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +66 -0
  149. data/maps/iso-kan-Knda-Latn-15919-2001.yaml +220 -0
  150. data/maps/iso-kat-Geor-Latn-9984-1996.yaml +145 -0
  151. data/maps/iso-kor-Hang-Latn-1996-method1.yaml +240 -0
  152. data/maps/iso-kor-Hang-Latn-1996-method2.yaml +226 -0
  153. data/maps/iso-mal-Mlym-Latn-15919-2001.yaml +281 -0
  154. data/maps/iso-mar-Deva-Latn-15919-2001.yaml +75 -0
  155. data/maps/iso-nep-Deva-Latn-15919-2001.yaml +87 -0
  156. data/maps/iso-ori-Orya-Latn-15919-2001.yaml +193 -0
  157. data/maps/iso-pan-Guru-Latn-15919-2001.yaml +222 -0
  158. data/maps/iso-pli-Beng-Latn-15919-2001.yaml +73 -0
  159. data/maps/iso-pli-Deva-Latn-15919-2001.yaml +74 -0
  160. data/maps/iso-pli-Sinh-Latn-15919-2001.yaml +219 -0
  161. data/maps/iso-pli-Thai-Latn-15919-2001.yaml +55 -0
  162. data/maps/iso-pra-Deva-Latn-15919-2001.yaml +59 -0
  163. data/maps/iso-prs-Arab-Latn-233-3-1999.yaml +366 -0
  164. data/maps/{iso-rus-Cyrl-Latn-iso9.yaml → iso-rus-Cyrl-Latn-9-1995.yaml} +4 -6
  165. data/maps/iso-san-Deva-Latn-15919-2001.yaml +220 -0
  166. data/maps/iso-tam-Taml-Latn-15919-2001.yaml +159 -0
  167. data/maps/iso-tel-Telu-Latn-15919-2001.yaml +220 -0
  168. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +109 -0
  169. data/maps/kp-kor-Hang-Latn-2002.yaml +909 -0
  170. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +44820 -0
  171. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +411 -0
  172. data/maps/mns-mon-Cyrl-Latn-5217-2012.yaml +163 -0
  173. data/maps/mns-mon-Latn-Cyrl-5217-2012.yaml +200 -0
  174. data/maps/moct-kor-Hang-Latn-2000.yaml +807 -0
  175. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +541 -0
  176. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +225 -0
  177. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +63 -0
  178. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +109 -0
  179. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +37 -0
  180. data/maps/odni-ara-Arab-Latn-2015.yaml +425 -0
  181. data/maps/odni-aze-Cyrl-Latn-2015.yaml +144 -0
  182. data/maps/odni-bel-Cyrl-Latn-2015.yaml +148 -0
  183. data/maps/odni-bul-Cyrl-Latn-2015.yaml +96 -0
  184. data/maps/odni-che-Cyrl-Latn-2015.yaml +169 -0
  185. data/maps/odni-fas-Arab-Latn-2015.yaml +406 -0
  186. data/maps/odni-hin-Deva-Latn-2015.yaml +258 -0
  187. data/maps/odni-kat-Geor-Latn-2015.yaml +87 -0
  188. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +148 -0
  189. data/maps/odni-kir-Cyrl-Latn-2015.yaml +136 -0
  190. data/maps/odni-kor-Hang-Latn-2015.yaml +375 -0
  191. data/maps/odni-mkd-Cyrl-Latn-2015.yaml +122 -0
  192. data/maps/odni-per-Arab-Latn-2015.yaml +228 -0
  193. data/maps/odni-rus-Cyrl-Latn-2015.yaml +77 -0
  194. data/maps/odni-srp-Cyrl-Latn-2015.yaml +129 -0
  195. data/maps/odni-tat-Cyrl-Latn-2015.yaml +142 -0
  196. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +148 -0
  197. data/maps/odni-uig-Cyrl-Latn-2015.yaml +138 -0
  198. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +157 -0
  199. data/maps/odni-urd-Arab-Latn-2015.yaml +221 -0
  200. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +166 -0
  201. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +90 -0
  202. data/maps/royin-tha-Thai-Latn-1968.yaml +183 -0
  203. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +180 -0
  204. data/maps/royin-tha-Thai-Latn-1999.yaml +80 -0
  205. data/maps/{cn-chn-Hans-Latn-pinyin.yaml → sac-zho-Hans-Latn-1979.yaml} +11 -8
  206. data/maps/sasm-mon-Mong-Latn-general-1978.yaml +389 -0
  207. data/maps/sasm-mon-Mong-Latn-phonetic-1978.yaml +354 -0
  208. data/maps/ses-ara-Arab-Latn-1930.yaml +283 -0
  209. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +222 -0
  210. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +197 -0
  211. data/maps/ua-ukr-Cyrl-Latn-2007.yaml +75 -0
  212. data/maps/ua-ukr-Cyrl-Latn-2010.yaml +192 -0
  213. data/maps/un-amh-Ethi-Latn-2016.yaml +602 -0
  214. data/maps/un-ara-Arab-Latn-1971.yaml +139 -0
  215. data/maps/un-ara-Arab-Latn-1972.yaml +159 -0
  216. data/maps/un-ara-Arab-Latn-2017.yaml +420 -0
  217. data/maps/un-bel-Cyrl-Latn-2007.yaml +114 -0
  218. data/maps/un-ben-Beng-Latn-2016.yaml +534 -0
  219. data/maps/un-ell-Grek-Latn-1987-phonetic.yaml +780 -0
  220. data/maps/un-ell-Grek-Latn-1987-tl.yaml +31 -0
  221. data/maps/un-ell-Grek-Latn-1987-ts.yaml +19 -0
  222. data/maps/un-hin-Deva-Latn-2016.yaml +222 -0
  223. data/maps/un-mar-Deva-Latn-2016.yaml +91 -0
  224. data/maps/un-mon-Mong-Latn-general-2013.yaml +264 -0
  225. data/maps/un-mon-Mong-Latn-phonetic-2013.yaml +264 -0
  226. data/maps/un-nep-Deva-Latn-1972.yaml +350 -0
  227. data/maps/un-nep-Deva-Latn-2013.yaml +74 -0
  228. data/maps/un-rus-Cyrl-Latn-1987.yaml +166 -0
  229. data/maps/un-ukr-Cyrl-Latn-1998.yaml +53 -0
  230. data/maps/un-ukr-Cyrl-Latn-2012.yaml +162 -0
  231. data/maps/var-hin-Deva-Latn-hunterian-1872.yaml +221 -0
  232. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +406 -0
  233. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +386 -0
  234. data/maps/var-kor-Hang-Hang-jamo.yaml +11193 -0
  235. data/maps/var-kor-Hang-Latn-mr-1939.yaml +1054 -0
  236. data/maps/var-kor-Kore-Hang-2013.yaml +59754 -0
  237. data/maps/var-kor-Kore-Latn-mr-1939.yaml +36 -0
  238. data/maps/var-mar-Deva-Latn-hunterian-1872.yaml +43 -0
  239. data/maps/var-mon-Mong-Latn-1930.yaml +102 -0
  240. data/maps/var-mon-Mong-Latn-lessing.yaml +272 -0
  241. data/maps/var-mon-Mong-Latn-vpmc.yaml +274 -0
  242. data/maps/var-pra-Deva-Latn-iast-1912.yaml +30 -0
  243. data/maps/var-san-Deva-Latn-iast-1912.yaml +149 -0
  244. data/maps/var-tha-Thai-Thai-phonemic.yaml +59 -0
  245. data/maps/var-tha-Thai-Zsym-ipa.yaml +301 -0
  246. data/maps/var-zho-Hani-Latn-wd-1979.yaml +38912 -0
  247. data/spec/interscript/filenames_spec.rb +384 -0
  248. data/spec/interscript/mapping_spec.rb +42 -0
  249. data/spec/interscript_spec.rb +23 -5
  250. data/spec/spec_helper.rb +3 -1
  251. metadata +364 -34
  252. data/bin/interscript +0 -20
  253. data/bin/rspec +0 -29
  254. data/maps/bgnpcgn-chn-Hans-Latn-pinyin.yaml +0 -7503
  255. data/maps/historic-jpn-Hrkt-Latn-hepburn.yaml +0 -336
  256. data/maps/icao-gre-Grek-Latn-9303.yaml +0 -101
  257. data/maps/mext-jpn-Hrkt-Latn-hepburn.yaml +0 -330
  258. data/maps/mext-jpn-Hrkt-Latn-kunrei.yaml +0 -308
  259. data/maps/un-jpn-Hrkt-Latn-hepburn.yaml +0 -313
  260. data/maps/un-jpn-Hrkt-Latn-kunrei.yaml +0 -354
  261. data/maps/un-mon-Mong-Latn-2013.yaml +0 -80
@@ -0,0 +1,168 @@
1
+ ---
2
+ authority_id: bgnpcgn
3
+ id: 2016
4
+ language: iso-639-2:rue
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: ROMANIZATION OF RUSYN, BGN/PCGN 2016 System
8
+ alias:
9
+ ogc11122:
10
+ code: rue_Cyrl2Latn_BGN_2016
11
+ description: The BGN/PCGN system for Rusyn was designed for use in romanizing names written in the Rusyn alphabet.
12
+ url: https://geonames.nga.mil/gns/html/Romanization/ROMANIZATION%20OF%20RUSYN.pdf
13
+ creation_date: 2016
14
+ confirmation_date: 2017
15
+ description: |
16
+ The BGN/PCGN system for Rusyn was designed for use in romanizing names written in the Rusyn
17
+ alphabet. There are two primary dialects of the Rusyn language: Carpatho‐Rusyn and Pannonian Rusyn.
18
+ The Rusyn alphabet is almost identical to the Ukrainian alphabet, but contains three characters not
19
+ present in the Ukrainian alphabet: ё, ы, and ъ. These letters are also absent from the alphabet used by
20
+ Pannonian Rusyn. This table applies to both dialects of Rusyn.
21
+
22
+ notes:
23
+ - |
24
+ The letters ё, ы, and ъ are present in the orthography of the Carpatho‐Rusyn variant of the Rusyn
25
+ language. This variant is predominant among Rusyn speakers in Ukraine, Poland, Slovakia, Hungary, and
26
+ Romania. The letters are absent from the orthography of Pannonian Rusyn, which is predominant in
27
+ Serbia and Croatia.
28
+
29
+ - |
30
+ Unicode for Latin‐script characters: Ž/ž (017D, 017E); Č/č (010C, 010D); Š/š (0160, 0161); ’ (0027).
31
+
32
+ - |
33
+ The Romanization columns show only lowercase forms but, when romanizing, uppercase and
34
+ lowercase Roman letters as appropriate should be used.
35
+
36
+ tests:
37
+ # Based on https://ru.wikipedia.org/wiki/Русинский_язык#Примеры_текста
38
+ - source: русиньскый язык
39
+ expected: rusyn'skyj yazyk
40
+ - source: руська бисіда
41
+ expected: rus'ka bysida
42
+ - source: руснацькый язык
43
+ expected: rusnac'kyj yazyk
44
+ - source: руски язик
45
+ expected: rusky yazyk
46
+ - source: |
47
+ Чоловік найчастїше споминать на молоды часы. Є то цалком нормалне.
48
+ Тадь то рокы, кідь зазнаме всякого. І доброго, і планого. В тім часї ся чоловік находить, як кібы в скаралущі.
49
+ Розвивать ся, як цвіт на черешни. Выпхати ся мож з того обалу лем тогды, як прийде час, кідь цалком дозріє.
50
+ Даколи стачіть ся неограбаным способом дотулити білого домику, такой ся пораниш, што ті буде тякнути на цілый жывот.
51
+ А кідь ся народиш в теплї, обколесеный ласков, розвиваш ся в добрых условіях, выпадеш із скаралущі, як міцна істота.
52
+ Такым потім буде і твій далшый жывот. Із добрї заложеным фундаментом. Было бы смішно сі робити надїй, же жывот є лем єдна рівна путь…
53
+ Кібы то так чоловік знав… Кібы ся міг іщі раз народити і піти по тій істій пути…
54
+ expected: |
55
+ Čolovik najčastjiše spomynat' na molody časy. Je to calkom normalne.
56
+ Tad' to roky, kid' zazname vsyakogo. I dobrogo, i planogo. V tim časji sya čolovik nachodyt', yak kiby v skaralušči.
57
+ Rozvyvat' sya, yak cvit na čerešny. Vypchaty sya mož z togo obalu lem togdy, yak pryjde čas, kid' calkom dozrije.
58
+ Dakoly stačit' sya neograbanym sposobom dotulyty bilogo domyku, takoj sya poranyš, što ti bude tyaknuty na cilyj žyvot.
59
+ A kid' sya narodyš v teplji, obkolesenyj laskov, rozvyvaš sya v dobrych usloviyach, vypadeš iz skaralušči, yak micna istota.
60
+ Takym potim bude i tvij dalšyj žyvot. Iz dobrji založenym fundamentom. Bylo by smišno si robyty nadjij, že žyvot je lem jedna rivna put'…
61
+ Kiby to tak čolovik znav… Kiby sya mig išči raz narodyty i pity po tij istij puty…
62
+ # Based on http://www.philology.ru/linguistics3/suprun-89.htm
63
+ - source: |
64
+ Вишло слунко красне, ясне,
65
+ и цму швета розогнало -
66
+ жем желену, били хмарки
67
+ як зоз златом да обцагло.
68
+ expected: |
69
+ Vyšlo slunko krasne, yasne,
70
+ y cmu šveta rozognalo -
71
+ žem želenu, byly chmarky
72
+ yak zoz zlatom da obcaglo.
73
+ - source: шнїг
74
+ expected: šnjig
75
+ - source: жем
76
+ expected: žem
77
+ - source: дзень
78
+ expected: dzen'
79
+ - source: спомнуц
80
+ expected: spomnuc
81
+ - source: крава
82
+ expected: krava
83
+ # Based on https://lingvoforum.net/index.php?topic=43545.0
84
+ - source: дївка
85
+ expected: djivka
86
+ - source: дрыв
87
+ expected: dryv
88
+ - source: фёрд
89
+ expected: fjord
90
+ - source: Ёзеф
91
+ expected: Jozef
92
+ - source: пастырї
93
+ expected: pastyrji
94
+
95
+
96
+ map:
97
+ characters:
98
+ "\u0410": "A" # А
99
+ "\u0411": "B" # Б
100
+ "\u0412": "V" # В
101
+ "\u0413": "H" # Г
102
+ "\u0414": "D" # Д
103
+ "\u0415": "E" # Е
104
+ "\u0404": "Je" # Є
105
+ "\u0401": "Jo" # Ё
106
+ "\u0416": "\u017D" # Ж => Ž note[2]
107
+ "\u0417": "Z" # З
108
+ "\u0418": "Y" # И
109
+ "\u0406": "I" # І
110
+ "\u042b": "Y" # Ы
111
+ "\u0407": "Ji" # Ї
112
+ "\u0419": "J" # Й
113
+ "\u041a": "K" # К
114
+ "\u041b": "L" # Л
115
+ "\u041c": "M" # М
116
+ "\u041d": "N" # Н
117
+ "\u041e": "O" # О
118
+ "\u041f": "P" # П
119
+ "\u0420": "R" # Р
120
+ "\u0421": "S" # С
121
+ "\u0422": "T" # Т
122
+ "\u0423": "U" # У
123
+ "\u0424": "F" # Ф
124
+ "\u0425": "Ch" # Х
125
+ "\u0426": "C" # Ц
126
+ "\u0427": "\u010C" # Ч => Č note[2]
127
+ "\u0428": "\u0160" # Ш => Š note[2]
128
+ "\u0429": "\u0160\u010C" # Щ => ŠČ
129
+ "\u042e": "Yu" # Ю
130
+ "\u042f": "Ya" # Я
131
+ "\u042c": "\u0027" # Ь => '
132
+ "\u042a": "\u0027" # Ъ => '
133
+
134
+ "\u0430": "a" # а
135
+ "\u0431": "b" # б
136
+ "\u0432": "v" # в
137
+ "\u0433": "g" # г
138
+ "\u0434": "d" # д
139
+ "\u0435": "e" # е
140
+ "\u0454": "je" # є
141
+ "\u0451": "jo" # ё
142
+ "\u0436": "\u017E" # ж => ž note[2]
143
+ "\u0437": "z" # з
144
+ "\u0438": "y" # и
145
+ "\u0456": "i" # і
146
+ "\u044b": "y" # ы
147
+ "\u0457": "ji" # ї
148
+ "\u0439": "j" # й
149
+ "\u043a": "k" # к
150
+ "\u043b": "l" # л
151
+ "\u043c": "m" # м
152
+ "\u043d": "n" # н
153
+ "\u043e": "o" # о
154
+ "\u043f": "p" # п
155
+ "\u0440": "r" # р
156
+ "\u0441": "s" # с
157
+ "\u0442": "t" # т
158
+ "\u0443": "u" # у
159
+ "\u0444": "f" # ф
160
+ "\u0445": "ch" # х
161
+ "\u0446": "c" # ц
162
+ "\u0447": "\u010D" # ч => č note[2]
163
+ "\u0448": "\u0161" # ш => š note[2]
164
+ "\u0449": "\u0161\u010D" # щ => šč
165
+ "\u044e": "yu" # ю
166
+ "\u044f": "ya" # я
167
+ "\u044c": "\u0027" # ь => '
168
+ "\u044a": "\u0027" # ъ => '
@@ -1,10 +1,14 @@
1
1
  ---
2
2
  authority_id: bgnpcgn
3
3
  id: 1947
4
- language: rus
4
+ language: iso-639-2:rus
5
5
  source_script: Cyrl
6
6
  destination_script: Latn
7
7
  name: ROMANIZATION OF RUSSIAN, BGN/PCGN 1947 System
8
+ alias:
9
+ ogc11122:
10
+ code: rus_Cyrl2Latn_BGN_1947
11
+ description: Russian US Board on Geographic Names(BGN)/Permanent Committee on Geographical Names for British Official Use(PCGN) 1947 System
8
12
  url: https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/807920/ROMANIZATION_OF_RUSSIAN.pdf
9
13
  creation_date: 1947
10
14
  confirmation_date: 2019-06
@@ -102,69 +106,148 @@ tests:
102
106
  Число открепительных удостоверений, утраченных в окружной избирательной комиссии
103
107
 
104
108
  expected: |
105
- VYBORY DEPUTATOV GOSUDARSTVENNOY DUMY FEDERALNOGO SOBRANIYA ROSSIYSKOY FEDERATSII SEDMOGO SOZYVA
106
- DATA GOLOSOVANIYA: 18.09.2016
107
-
108
- NAIMENOVANIE IZBIRATELNOY KOMISSII: TSIK ROSSII
109
-
110
- SVODNAYA TABLITSA REZULTATOV VYBOROV PO FEDERALNOMU IZBIRATELNOMU OKRUGU
111
-
112
-
113
- CHISLO IZBIRATELEY, VNESENNYKH V SPISOK IZBIRATELEY NA MOMENT OKONCHANIYA GOLOSOVANIYA
114
- CHISLO IZBIRATELNYKH BYULLETENEY, POLUCHENNYKH UCHASTKOVOY IZBIRATELNOY KOMISSIEY
115
- CHISLO IZBIRATELNYKH BYULLETENEY, VYDANNYKH IZBIRATELYAM, PROGOLOSOVAVSHIM DOSROCHNO
116
- CHISLO IZBIRATELNYKH BYULLETENEY, VYDANNYKH V POMESHCHENII DLYA GOLOSOVANIYA V DENGOLOSOVANIYA
117
- CHISLO IZBIRATELNYKH BYULLETENEY, VYDANNYKH VNE POMESHCHENIYA DLYA GOLOSOVANIYA V DENGOLOSOVANIYA
118
- CHISLO POGASHENNYKH IZBIRATELNYKH BYULLETENEY
119
- CHISLO IZBIRATELNYKH BYULLETENEY, SODERZHASHCHIKHSYA V PERENOSNYKH YASHCHIKAKH DLYA GOLOSOVANIYA
120
- CHISLO IZBIRATELNYKH BYULLETENEY, SODERZHASHCHIKHSYA V STATSIONARNYKH YASHCHIKAKH DLYA GOLOSOVANIYA
121
- CHISLO NEDEYSTVITELNYKH IZBIRATELNYKH BYULLETENEY
122
- CHISLO DEYSTVITELNYKH IZBIRATELNYKH BYULLETENEY
123
- CHISLO OTKREPITELNYKH UDOSTOVERENIY, POLUCHENNYKH UCHASTKOVOY IZBIRATELNOY KOMISSIEY
124
- CHISLO OTKREPITELNYKH UDOSTOVERENIY, VYDANNYKH NA IZBIRATELNOM UCHASTKE DO DNYA GOLOSOVANIYA
125
- CHISLO IZBIRATELEY, PROGOLOSOVAVSHIKH PO OTKREPITELNYM UDOSTOVERENIYAM NA IZBIRATELNOM UCHASTKE
126
- CHISLO POGASHENNYKH NEISPOLZOVANNYKH OTKREPITELNYKH UDOSTOVERENIY
127
- CHISLO OTKREPITELNYKH UDOSTOVERENIY, VYDANNYKH IZBIRATELYAM TERRITORIALNOY IZBIRATELNOY KOMISSIEY
128
- CHISLO UTRACHENNYKH OTKREPITELNYKH UDOSTOVERENIY
129
- CHISLO UTRACHENNYKH IZBIRATELNYKH BYULLETENEY
130
- CHISLO IZBIRATELNYKH BYULLETENEY, NE UCHTENNYKH PRI POLUCHENII
109
+ Vybory deputatov Gosudarstvennoy Dumy Federalnogo Sobraniya Rossiyskoy Federatsii sedmogo sozyva
110
+ Data golosovaniya: 18.09.2016
111
+
112
+ Naimenovaniye Izbiratelnoy komissii: TSIK Rossii
113
+
114
+ Svodnaya tablitsa rezultatov vyborov po federalnomu izbiratelnomu okrugu
115
+
116
+
117
+ Chislo izbirateley, vnesennykh v spisok izbirateley na moment okonchaniya golosovaniya
118
+ Chislo izbiratelnykh byulleteney, poluchennykh uchastkovoy izbiratelnoy komissiyey
119
+ Chislo izbiratelnykh byulleteney, vydannykh izbiratelyam, progolosovavshim dosrochno
120
+ Chislo izbiratelnykh byulleteney, vydannykh v pomeshchenii dlya golosovaniya v dengolosovaniya
121
+ Chislo izbiratelnykh byulleteney, vydannykh vne pomeshcheniya dlya golosovaniya v dengolosovaniya
122
+ Chislo pogashennykh izbiratelnykh byulleteney
123
+ Chislo izbiratelnykh byulleteney, soderzhashchikhsya v perenosnykh yashchikakh dlya golosovaniya
124
+ Chislo izbiratelnykh byulleteney, soderzhashchikhsya v statsionarnykh yashchikakh dlya golosovaniya
125
+ Chislo nedeystvitelnykh izbiratelnykh byulleteney
126
+ Chislo deystvitelnykh izbiratelnykh byulleteney
127
+ Chislo otkrepitelnykh udostovereniy, poluchennykh uchastkovoy izbiratelnoy komissiyey
128
+ Chislo otkrepitelnykh udostovereniy, vydannykh na izbiratelnom uchastke do dnya golosovaniya
129
+ Chislo izbirateley, progolosovavshikh po otkrepitelnym udostovereniyam na izbiratelnom uchastke
130
+ Chislo pogashennykh neispolzovannykh otkrepitelnykh udostovereniy
131
+ Chislo otkrepitelnykh udostovereniy, vydannykh izbiratelyam territorialnoy izbiratelnoy komissiyey
132
+ Chislo utrachennykh otkrepitelnykh udostovereniy
133
+ Chislo utrachennykh izbiratelnykh byulleteney
134
+ Chislo izbiratelnykh byulleteney, ne uchtennykh pri poluchenii
131
135
  1. VSEROSSIYSKAYA POLITICHESKAYA PARTIYA "RODINA"
132
- 2. POLITICHESKAYA PARTIYA KOMMUNISTICHESKAYA PARTIYA KOMMUNISTY ROSSII
133
- 3. POLITICHESKAYA PARTIYA "ROSSIYSKAYA PARTIYA PENSIONEROV ZA SPRAVEDLIVOST’"
134
- 4. VSEROSSIYSKAYA POLITICHESKAYA PARTIYA "EDINAYA ROSSIYA"
135
- 5. POLITICHESKAYA PARTIYA "ROSSIYSKAYA EKOLOGICHESKAYA PARTIYA "ZELENYE"
136
- 6. POLITICHESKAYA PARTIYA "GRAZHDANSKAYA PLATFORMA"
137
- 7. POLITICHESKAYA PARTIYA LDPR - LIBERALNO-DEMOKRATICHESKAYA PARTIYA ROSSII
138
- 8. POLITICHESKAYA PARTIYA "PARTIYA NARODNOY SVOBODY" (PARNAS)
139
- 9. VSEROSSIYSKAYA POLITICHESKAYA PARTIYA "PARTIYA ROSTA"
140
- 10. OBSHCHESTVENNAYA ORGANIZATSIYA VSEROSSIYSKAYA POLITICHESKAYA PARTIYA "GRAZHDANSKAYA SILA"
141
- 11. POLITICHESKAYA PARTIYA "ROSSIYSKAYA OBEDINENNAYA DEMOKRATICHESKAYA PARTIYA ""YABLOKO"""
142
- 12. POLITICHESKAYA PARTIYA "KOMMUNISTICHESKAYA PARTIYA ROSSIYSKOY FEDERATSII"
143
- 13. POLITICHESKAYA PARTIYA "PATRIOTY ROSSII"
144
- 14. POLITICHESKAYA PARTIYA SPRAVEDLIVAYA ROSSIYA
145
-
146
- DANNYYE OKRUZHNYKH IZBIRATYELNYKH KOMISSIY O CHISLYE OTKRYEPITYELNYKH UDOSTOVYERYENIY
147
-
148
-
149
- CHISLO OTKREPITELNYKH UDOSTOVERENIY, POLUCHENNYKH OKRUZHNOY IZBIRATELNOY KOMISSIEY
150
- CHISLO OTKREPITELNYKH UDOSTOVERENIY, VYDANNYKH TERRITORIALNYM IZBIRATELNYM KOMISSIYAM
151
- CHISLO NEISPOLZOVANNYKH OTKREPITELNYKH UDOSTOVERENIY, POGASHENNYKH OKRUZHNOY IZBIRATELNOY KOMISSIEY
152
- CHISLO OTKREPITELNYKH UDOSTOVERENIY, UTRACHENNYKH V OKRUZHNOY IZBIRATELNOY KOMISSII
136
+ 2. Politicheskaya partiya KOMMUNISTICHESKAYA PARTIYA KOMMUNISTY ROSSII
137
+ 3. Politicheskaya partiya "Rossiyskaya partiya pensionerov za spravedlivost’"
138
+ 4. Vserossiyskaya politicheskaya partiya "YEDINAYA ROSSIYA"
139
+ 5. Politicheskaya partiya "Rossiyskaya ekologicheskaya partiya "Zelenyye"
140
+ 6. Politicheskaya partiya "Grazhdanskaya Platforma"
141
+ 7. Politicheskaya partiya LDPR - Liberalno-demokraticheskaya partiya Rossii
142
+ 8. Politicheskaya partiya "Partiya narodnoy svobody" (PARNAS)
143
+ 9. Vserossiyskaya politicheskaya partiya "PARTIYA ROSTA"
144
+ 10. Obshchestvennaya organizatsiya Vserossiyskaya politicheskaya partiya "Grazhdanskaya Sila"
145
+ 11. Politicheskaya partiya "Rossiyskaya ob"yedinennaya demokraticheskaya partiya "YABLOKO"
146
+ 12. Politicheskaya partiya "KOMMUNISTICHESKAYA PARTIYA ROSSIYSKOY FEDERATSII"
147
+ 13. Politicheskaya partiya "PATRIOTY ROSSII"
148
+ 14. Politicheskaya partiya SPRAVEDLIVAYA ROSSIYA
149
+
150
+ Dannyye okruzhnykh izbiratelnykh komissiy o chisle otkrepitelnykh udostovereniy
151
+
152
+
153
+ Chislo otkrepitelnykh udostovereniy, poluchennykh okruzhnoy izbiratelnoy komissiyey
154
+ Chislo otkrepitelnykh udostovereniy, vydannykh territorialnym izbiratelnym komissiyam
155
+ Chislo neispolzovannykh otkrepitelnykh udostovereniy, pogashennykh okruzhnoy izbiratelnoy komissiyey
156
+ Chislo otkrepitelnykh udostovereniy, utrachennykh v okruzhnoy izbiratelnoy komissii
157
+ - source: ДЛИННОЕ ПОКРЫВАЛО
158
+ expected: DLINNOYE POKRYVALO
159
+ - source: Еловая шишка
160
+ expected: Yelovaya shishka
161
+ - source: ЕЛОВАЯ ШИШКА
162
+ expected: YELOVAYA SHISHKA
163
+ - source: Длинное покрывало
164
+ expected: Dlinnoye pokryvalo
165
+ - source: В лесу еловые шишки
166
+ expected: V lesu yelovyye shishki
167
+ - source: OН ВИДЕЛ ЕЁ В ПЕРВЫЙ РАЗ
168
+ expected: ON VIDEL YEYË V PERVYY RAZ
169
+ - source: Ёж колючий
170
+ expected: Yëzh kolyuchiy
171
+ - source: ЁЖ КОЛЮЧИЙ
172
+ expected: YËZH KOLYUCHIY
173
+ - source: Он видел её в первый раз
174
+ expected: On videl yeyë v pervyy raz
175
+ - source: У ёжа колючки
176
+ expected: U yëzha kolyuchki
177
+ - source: ЙА Йа йа
178
+ expected: Y·A Y·a y·a
179
+ - source: ЫУ Ыу ыу
180
+ expected: Y·U Y·u y·u
181
+ - source: ОЫ Оы оы
182
+ expected: O·Y O·y o·y
183
+ - source: ОЫУ Оыу оыу
184
+ expected: O·Y·U O·y·u o·y·u
185
+ - source: СЭ Сэ сэ
186
+ expected: S·E S·e s·e
187
+ - source: ТС тс Тс тС
188
+ expected: T·S t·s T·s t·S
189
+ - source: ШЧ шч Шч шЧ
190
+ expected: SH·CH sh·ch Sh·ch sh·Ch
153
191
 
154
192
  map:
155
193
  rules:
156
- - pattern: ([ЄФІЦАаЕеИиЙйОоУуЫыЮюЯяії])\u0415
157
- result: "\\1YE"
158
- - pattern: \b\u0415
159
- result: YE
160
- - pattern: ([йьъ])\u0415
161
- result: "\\1YE"
162
- - pattern: ([ЄФІЦАаЕеИиЙйОоУуЫыЮюЯяії])\u0435
163
- result: "\\1ye"
164
- - pattern: \b\u0435
165
- result: ye
166
- - pattern: ([йьъ])\u0435
167
- result: "\\1ye"
194
+ - pattern: (?<=[АаЕеЁёИиОоУуЫыЭэЮюЯяЙйЪъЬь])\u0401 # Ё after a, e, ё, и, о, у, ы, э, ю, я, й, ъ, ь
195
+ result: "Y\u00eb"
196
+ - pattern: (?<=[АаЕеЁёИиОоУуЫыЭэЮюЯяЙйЪъЬь])\u0451 # ё after a, e, ё, и, о, у, ы, э, ю, я, й, ъ, ь
197
+ result: "y\u00eb"
198
+ - pattern: (?<=[АаЕеЁёИиОоУуЫыЭэЮюЯяЙйЪъЬь])\u0415 # Е after a, e, ё, и, о, у, ы, э, ю, я, й, ъ, ь
199
+ result: "Y\u0415"
200
+ - pattern: \b\u0415 # Е initially
201
+ result: "Y\u0435"
202
+ - pattern: (?<=[АаЕеЁёИиОоУуЫыЭэЮюЯяЙйЪъЬь])\u0435 # е after a, e, ё, и, о, у, ы, э, ю, я, й, ъ, ь
203
+ result: "y\u0435"
204
+ - pattern: \b\u0435 # е initially
205
+ result: "y\u0435"
206
+ - pattern: (?<=[АаЕеЁёИиОоУуЫыЭэЮюЯяЙйЪъЬь])\u0401 # Ё after a, e, ё, и, о, у, ы, э, ю, я, й, ъ, ь
207
+ result: "Y\u00eb"
208
+ - pattern: \b\u0401
209
+ result: "Y\u00eb"
210
+ - pattern: (?<=[АаЕеЁёИиОоУуЫыЭэЮюЯяЙйЪъЬь])\u0451 # ё after a, e, ё, и, о, у, ы, э, ю, я, й, ъ, ь
211
+ result: "y\u00eb"
212
+ - pattern: \b\u0451
213
+ result: "y\u00eb"
214
+ - pattern: \u0419(?=[АаУуЫыЭэ]) # Й before а, у, ы, or э
215
+ result: "Y\u00b7"
216
+ - pattern: \u0439(?=[АаУуЫыЭэ]) # й before а, у, ы, or э
217
+ result: "y\u00b7"
218
+ - pattern: (?<=[АаЕеЁёИиОоУуЫыЭэЮюЯя])\u042b(?=[АаУуЫыЭэ]) # Ы after any vowel character and before а, у, ы, or э
219
+ result: "\u00b7Y\u00b7"
220
+ - pattern: (?<=[АаЕеЁёИиОоУуЫыЭэЮюЯя])\u044b(?=[АаУуЫыЭэ]) # ы after any vowel character and before а, у, ы, or э
221
+ result: "\u00b7y\u00b7"
222
+ - pattern: \u042b(?=[АаУуЫыЭэ]) # Ы before а, у, ы, or э
223
+ result: "Ы\u00b7"
224
+ - pattern: \u044b(?=[АаУуЫыЭэ]) # ы before а, у, ы, or э
225
+ result: "ы\u00b7"
226
+ - pattern: (?<=[Оо])\u042b # Ы after о
227
+ result: "\u00b7Y"
228
+ - pattern: (?<=[Оо])\u044b # ы after о
229
+ result: "\u00b7y"
230
+ - pattern: \b\u0401
231
+ result: "Y\u00eb"
232
+ - pattern: \b\u0451
233
+ result: "y\u00eb"
234
+ - pattern: (?<=[БбВвГгДдЖжЗзКкЛлМмНнПпРрСсТтФфХхЦцЧчШшЩщ])\u042d # Э after any consonant character except й
235
+ result: "\u00b7E"
236
+ - pattern: (?<=[БбВвГгДдЖжЗзКкЛлМмНнПпРрСсТтФфХхЦцЧчШшЩщ])\u044d # э after any consonant character except й
237
+ result: "\u00b7e"
238
+ - pattern: (Т|т)(С|с) # тс => t·s
239
+ result: "\\1\u00b7\\2"
240
+ - pattern: (Ш|ш)(Ч|ч) # шч => sh·ch
241
+ result: "\\1\u00b7\\2"
242
+
243
+ postrules:
244
+
245
+ #YE
246
+ - pattern: "((?<=[[:upper:]])Ye(?=[[:upper:]])?|(?<=[[:upper:]])?Ye(?=[[:upper:]]))"
247
+ result: "YE"
248
+ #YË
249
+ - pattern: "((?<=[[:upper:]])Yë(?=[[:upper:]])?|(?<=[[:upper:]])?Yë(?=[[:upper:]]))"
250
+ result: "YË"
168
251
 
169
252
  characters:
170
253
  "\u0410": "A"
@@ -173,7 +256,7 @@ map:
173
256
  "\u0413": "G"
174
257
  "\u0414": "D"
175
258
  "\u0415": "E"
176
- "\u0435": "e"
259
+ "\u0401": "\u00cb" # Ё
177
260
  "\u0416": "Zh"
178
261
  "\u0417": "Z"
179
262
  "\u0418": "I"
@@ -194,9 +277,9 @@ map:
194
277
  "\u0427": "Ch"
195
278
  "\u0428": "Sh"
196
279
  "\u0429": "Shch"
197
- "\u042a": "\""
280
+ "\u042a": "\"" # Ъ
198
281
  "\u042b": "Y"
199
- "\u042c": "\u2019"
282
+ "\u042c": "\u2019" # Ь => ’
200
283
  "\u042d": "E"
201
284
  "\u042e": "Yu"
202
285
  "\u042f": "Ya"
@@ -205,6 +288,8 @@ map:
205
288
  "\u0432": "v"
206
289
  "\u0433": "g"
207
290
  "\u0434": "d"
291
+ "\u0435": "e"
292
+ "\u0451": "\u00eb" # ё
208
293
  "\u0436": "zh"
209
294
  "\u0437": "z"
210
295
  "\u0438": "i"
@@ -225,9 +310,9 @@ map:
225
310
  "\u0447": "ch"
226
311
  "\u0448": "sh"
227
312
  "\u0449": "shch"
228
- "\u044a": "\""
313
+ "\u044a": "\"" # ъ
229
314
  "\u044b": "y"
230
- "\u044c": "\u2019"
315
+ "\u044c": "\u2019" # ь => ’
231
316
  "\u044d": "e"
232
317
  "\u044e": "yu"
233
318
  "\u044f": "ya"
@@ -0,0 +1,170 @@
1
+ ---
2
+ authority_id: bgnpcgn
3
+ id: 2005
4
+ language: iso-639-2:srp
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: ROMANIZATION OF SERBIAN, BGN/PCGN 2005 System
8
+ alias:
9
+ ogc11122:
10
+ code: srp_Cyrl2Latn_BGN_2005
11
+ description: Serbian Cyrillic Table of Correspondences US Board on Geographic Names(BGN)/Permanent Committee on Geographical Names for British Official Use(PCGN) 2005
12
+ url: https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/816783/TABLE_OF_CORRESPONDENCES_FOR_SERBIAN.pdf
13
+ creation_date: 2005
14
+ confirmation_date: 2019-06
15
+ description: |
16
+ The tabulation below reflects the Serbian Cyrillic alphabet and the standard Roman script equivalents
17
+ used in both Serbia and Montenegro.
18
+
19
+ notes:
20
+ - The Serbian Cyrillic lowercase italic Д may sometimes be seen as g.
21
+ There is no specific Unicode encoding for this variant form so a comparable character
22
+ has been used here for illustrative purposes.
23
+
24
+ - The digraph dj(Dj) will occasionally be found as an alternative form of đ(Đ).
25
+
26
+ - The Serbian Cyrillic lowercase italic П may sometimes be seen as ӣ.
27
+ There is no specific Unicode encoding for this variant form so a comparable character
28
+ has been used here for illustrative purposes.
29
+
30
+ - The Serbian Cyrillic lowercase italic Т may sometimes be seen as w.
31
+ There is no specific Unicode encoding for this variant form so a comparable character
32
+ has been used here for illustrative purposes.
33
+
34
+ - |
35
+ An inventory of letter-diacritic combinations, with their Unicode encoding,
36
+ in addition to the unmodified letters of the basic Roman script is:
37
+ | Đ (U+0110) | đ (U+0111) |
38
+ | Ž (U+017D) | ž (U+017E) |
39
+ | Lj (U+01C8)* | lj (U+01C9)* |
40
+ | Ć (U+0106) | ć (U+0107) |
41
+ | Dž (U+01C5)* | dž (U+01C6)* |
42
+ | Š (U+0160) | š (U+0161) |
43
+ * Note that these characters can also be reproduced with individual letters (e.g. l+j).
44
+
45
+ - The Roman-script columns show only lowercase forms but, when applying the table,
46
+ uppercase and lowercase Roman letters as appropriate should be used.
47
+
48
+ tests:
49
+ - source: Шупља Стена
50
+ expected: Šuplja Stena
51
+ - source: Чукарица
52
+ expected: Čukarica
53
+ - source: Црна Трава
54
+ expected: Crna Trava
55
+ - source: Херцег Нови
56
+ expected: Herceg Novi
57
+ - source: Улцињ
58
+ expected: Ulcinj
59
+ - source: Ужице
60
+ expected: Užice
61
+ - source: Тресаначка Река
62
+ expected: Tresanačka Reka
63
+ - source: Сјеница
64
+ expected: Sjenica
65
+ - source: Рожаје
66
+ expected: Rožaje
67
+ - source: Пљевља
68
+ expected: Pljevlja
69
+ - source: Оџаци
70
+ expected: Odžaci
71
+ - source: Никшић
72
+ expected: Nikšić
73
+ - source: Медвеђа
74
+ expected: Medveđa
75
+ - source: Лозница
76
+ expected: Loznica
77
+ - source: Књажевац
78
+ expected: Knjaževac
79
+ - source: Зрењанин
80
+ expected: Zrenjanin
81
+ - source: Житорађа
82
+ expected: Žitorađa
83
+ - source: Ервеник
84
+ expected: Ervenik
85
+ - source: Доње Љупче
86
+ expected: Donje Ljupče
87
+ - source: Гусиње
88
+ expected: Gusinje
89
+ - source: ГУСИЊЕ
90
+ expected: GUSINJE
91
+ - source: Врњачка Бања
92
+ expected: Vrnjačka Banja
93
+ - source: Бијело Поље
94
+ expected: Bijelo Polje
95
+ - source: Алибунар
96
+ expected: Alibunar
97
+
98
+ map:
99
+ postrules:
100
+ #LJ
101
+ - pattern: "((?<=[[:upper:]])Lj(?=[[:upper:]])?|(?<=[[:upper:]])?Lj(?=[[:upper:]]))"
102
+ result: "LJ"
103
+ #NJ
104
+ - pattern: "((?<=[[:upper:]])Nj(?=[[:upper:]])?|(?<=[[:upper:]])?Nj(?=[[:upper:]]))"
105
+ result: "NJ"
106
+ #DŽ
107
+ - pattern: "((?<=[[:upper:]])Dž(?=[[:upper:]])?|(?<=[[:upper:]])?Dž(?=[[:upper:]]))"
108
+ result: "DŽ"
109
+
110
+ characters:
111
+ "\u0410": "A"
112
+ "\u0411": "B"
113
+ "\u0412": "V"
114
+ "\u0413": "G"
115
+ "\u0414": "D"
116
+ "\u0402": "\u0110" # Đ
117
+ "\u0415": "E"
118
+ "\u0416": "\u005a\u030c" # Ž
119
+ "\u0417": "Z"
120
+ "\u0418": "I"
121
+ "\u0408": "J"
122
+ "\u041A": "K"
123
+ "\u041B": "L"
124
+ "\u0409": "Lj"
125
+ "\u041C": "M"
126
+ "\u041D": "N"
127
+ "\u040A": "Nj"
128
+ "\u041E": "O"
129
+ "\u041F": "P"
130
+ "\u0420": "R"
131
+ "\u0421": "S"
132
+ "\u0422": "T"
133
+ "\u040B": "\u0043\u0301" # Ć
134
+ "\u0423": "U"
135
+ "\u0424": "F"
136
+ "\u0425": "H"
137
+ "\u0426": "C"
138
+ "\u0427": "\u0043\u030c" # Č
139
+ "\u040F": "D\u007a\u030c" # Dž
140
+ "\u0428": "\u0053\u030c" # Š
141
+ "\u0430": "a"
142
+ "\u0431": "b"
143
+ "\u0432": "v"
144
+ "\u0433": "g"
145
+ "\u0434": "d"
146
+ "\u0452": "\u0111" # đ
147
+ "\u0435": "e"
148
+ "\u0436": "\u007a\u030c" # ž
149
+ "\u0437": "z"
150
+ "\u0438": "i"
151
+ "\u0458": "j"
152
+ "\u043A": "k"
153
+ "\u043B": "l"
154
+ "\u0459": "lj"
155
+ "\u043C": "m"
156
+ "\u043D": "n"
157
+ "\u045A": "nj"
158
+ "\u043E": "o"
159
+ "\u043F": "p"
160
+ "\u0440": "r"
161
+ "\u0441": "s"
162
+ "\u0442": "t"
163
+ "\u045B": "\u0063\u0301" # ć́
164
+ "\u0443": "u"
165
+ "\u0444": "f"
166
+ "\u0445": "h"
167
+ "\u0446": "c"
168
+ "\u0447": "\u0063\u030c" # č
169
+ "\u045F": "d\u007a\u030c" # dž
170
+ "\u0448": "\u0073\u030c" # š