cldr-transforms 46.0.0-BETA2

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 (753) hide show
  1. package/LICENSE +41 -0
  2. package/README.md +27 -0
  3. package/bower.json +13 -0
  4. package/package.json +29 -0
  5. package/transforms/Amharic-Latin-BGN.json +9 -0
  6. package/transforms/Amharic-Latin-BGN.txt +441 -0
  7. package/transforms/Any-Accents.json +9 -0
  8. package/transforms/Any-Accents.txt +270 -0
  9. package/transforms/Any-Publishing.json +9 -0
  10. package/transforms/Any-Publishing.txt +63 -0
  11. package/transforms/Arabic-Latin-BGN.json +9 -0
  12. package/transforms/Arabic-Latin-BGN.txt +205 -0
  13. package/transforms/Arabic-Latin.json +11 -0
  14. package/transforms/Arabic-Latin.txt +181 -0
  15. package/transforms/Armenian-Latin-BGN.json +9 -0
  16. package/transforms/Armenian-Latin-BGN.txt +165 -0
  17. package/transforms/Azerbaijani-Latin-BGN.json +9 -0
  18. package/transforms/Azerbaijani-Latin-BGN.txt +183 -0
  19. package/transforms/Belarusian-Latin-BGN.json +9 -0
  20. package/transforms/Belarusian-Latin-BGN.txt +194 -0
  21. package/transforms/Bengali-Arabic.json +9 -0
  22. package/transforms/Bengali-Arabic.txt +7 -0
  23. package/transforms/Bengali-Devanagari.json +9 -0
  24. package/transforms/Bengali-Devanagari.txt +7 -0
  25. package/transforms/Bengali-Gujarati.json +9 -0
  26. package/transforms/Bengali-Gujarati.txt +7 -0
  27. package/transforms/Bengali-Gurmukhi.json +9 -0
  28. package/transforms/Bengali-Gurmukhi.txt +7 -0
  29. package/transforms/Bengali-InterIndic.json +7 -0
  30. package/transforms/Bengali-InterIndic.txt +99 -0
  31. package/transforms/Bengali-Kannada.json +9 -0
  32. package/transforms/Bengali-Kannada.txt +7 -0
  33. package/transforms/Bengali-Latin.json +9 -0
  34. package/transforms/Bengali-Latin.txt +7 -0
  35. package/transforms/Bengali-Malayalam.json +9 -0
  36. package/transforms/Bengali-Malayalam.txt +7 -0
  37. package/transforms/Bengali-Oriya.json +9 -0
  38. package/transforms/Bengali-Oriya.txt +7 -0
  39. package/transforms/Bengali-Tamil.json +9 -0
  40. package/transforms/Bengali-Tamil.txt +7 -0
  41. package/transforms/Bengali-Telugu.json +9 -0
  42. package/transforms/Bengali-Telugu.txt +7 -0
  43. package/transforms/Bengali-ur.json +8 -0
  44. package/transforms/Bengali-ur.txt +7 -0
  45. package/transforms/Bulgarian-Latin-BGN.json +9 -0
  46. package/transforms/Bulgarian-Latin-BGN.txt +237 -0
  47. package/transforms/CanadianAboriginal-Latin.json +11 -0
  48. package/transforms/CanadianAboriginal-Latin.txt +184 -0
  49. package/transforms/Cyrillic-Latin.json +11 -0
  50. package/transforms/Cyrillic-Latin.txt +280 -0
  51. package/transforms/Devanagari-Arabic.json +9 -0
  52. package/transforms/Devanagari-Arabic.txt +7 -0
  53. package/transforms/Devanagari-Bengali.json +9 -0
  54. package/transforms/Devanagari-Bengali.txt +7 -0
  55. package/transforms/Devanagari-Gujarati.json +9 -0
  56. package/transforms/Devanagari-Gujarati.txt +7 -0
  57. package/transforms/Devanagari-Gurmukhi.json +9 -0
  58. package/transforms/Devanagari-Gurmukhi.txt +7 -0
  59. package/transforms/Devanagari-InterIndic.json +7 -0
  60. package/transforms/Devanagari-InterIndic.txt +113 -0
  61. package/transforms/Devanagari-Kannada.json +9 -0
  62. package/transforms/Devanagari-Kannada.txt +7 -0
  63. package/transforms/Devanagari-Latin.json +9 -0
  64. package/transforms/Devanagari-Latin.txt +7 -0
  65. package/transforms/Devanagari-Malayalam.json +9 -0
  66. package/transforms/Devanagari-Malayalam.txt +7 -0
  67. package/transforms/Devanagari-Oriya.json +9 -0
  68. package/transforms/Devanagari-Oriya.txt +7 -0
  69. package/transforms/Devanagari-Tamil.json +9 -0
  70. package/transforms/Devanagari-Tamil.txt +7 -0
  71. package/transforms/Devanagari-Telugu.json +9 -0
  72. package/transforms/Devanagari-Telugu.txt +7 -0
  73. package/transforms/Devanagari-ur.json +8 -0
  74. package/transforms/Devanagari-ur.txt +7 -0
  75. package/transforms/Fullwidth-Halfwidth.json +9 -0
  76. package/transforms/Fullwidth-Halfwidth.txt +261 -0
  77. package/transforms/Georgian-Latin-BGN.json +9 -0
  78. package/transforms/Georgian-Latin-BGN.txt +43 -0
  79. package/transforms/Georgian-Latin-BGN_1981.json +8 -0
  80. package/transforms/Georgian-Latin-BGN_1981.txt +54 -0
  81. package/transforms/Georgian-Latin.json +11 -0
  82. package/transforms/Georgian-Latin.txt +53 -0
  83. package/transforms/Greek-Latin-BGN.json +9 -0
  84. package/transforms/Greek-Latin-BGN.txt +419 -0
  85. package/transforms/Greek-Latin.json +11 -0
  86. package/transforms/Greek-Latin.txt +251 -0
  87. package/transforms/Greek_Latin_UNGEGN.json +11 -0
  88. package/transforms/Greek_Latin_UNGEGN.txt +179 -0
  89. package/transforms/Gujarati-Arabic.json +9 -0
  90. package/transforms/Gujarati-Arabic.txt +7 -0
  91. package/transforms/Gujarati-Bengali.json +9 -0
  92. package/transforms/Gujarati-Bengali.txt +7 -0
  93. package/transforms/Gujarati-Devanagari.json +9 -0
  94. package/transforms/Gujarati-Devanagari.txt +7 -0
  95. package/transforms/Gujarati-Gurmukhi.json +9 -0
  96. package/transforms/Gujarati-Gurmukhi.txt +7 -0
  97. package/transforms/Gujarati-InterIndic.json +7 -0
  98. package/transforms/Gujarati-InterIndic.txt +89 -0
  99. package/transforms/Gujarati-Kannada.json +9 -0
  100. package/transforms/Gujarati-Kannada.txt +7 -0
  101. package/transforms/Gujarati-Latin.json +9 -0
  102. package/transforms/Gujarati-Latin.txt +7 -0
  103. package/transforms/Gujarati-Malayalam.json +9 -0
  104. package/transforms/Gujarati-Malayalam.txt +7 -0
  105. package/transforms/Gujarati-Oriya.json +9 -0
  106. package/transforms/Gujarati-Oriya.txt +7 -0
  107. package/transforms/Gujarati-Tamil.json +9 -0
  108. package/transforms/Gujarati-Tamil.txt +7 -0
  109. package/transforms/Gujarati-Telugu.json +9 -0
  110. package/transforms/Gujarati-Telugu.txt +7 -0
  111. package/transforms/Gujarati-ur.json +8 -0
  112. package/transforms/Gujarati-ur.txt +7 -0
  113. package/transforms/Gurmukhi-Arabic.json +9 -0
  114. package/transforms/Gurmukhi-Arabic.txt +7 -0
  115. package/transforms/Gurmukhi-Bengali.json +9 -0
  116. package/transforms/Gurmukhi-Bengali.txt +7 -0
  117. package/transforms/Gurmukhi-Devanagari.json +9 -0
  118. package/transforms/Gurmukhi-Devanagari.txt +7 -0
  119. package/transforms/Gurmukhi-Gujarati.json +9 -0
  120. package/transforms/Gurmukhi-Gujarati.txt +7 -0
  121. package/transforms/Gurmukhi-InterIndic.json +7 -0
  122. package/transforms/Gurmukhi-InterIndic.txt +88 -0
  123. package/transforms/Gurmukhi-Kannada.json +9 -0
  124. package/transforms/Gurmukhi-Kannada.txt +7 -0
  125. package/transforms/Gurmukhi-Latin.json +9 -0
  126. package/transforms/Gurmukhi-Latin.txt +7 -0
  127. package/transforms/Gurmukhi-Malayalam.json +9 -0
  128. package/transforms/Gurmukhi-Malayalam.txt +7 -0
  129. package/transforms/Gurmukhi-Oriya.json +9 -0
  130. package/transforms/Gurmukhi-Oriya.txt +7 -0
  131. package/transforms/Gurmukhi-Tamil.json +9 -0
  132. package/transforms/Gurmukhi-Tamil.txt +7 -0
  133. package/transforms/Gurmukhi-Telugu.json +9 -0
  134. package/transforms/Gurmukhi-Telugu.txt +7 -0
  135. package/transforms/Gurmukhi-ur.json +8 -0
  136. package/transforms/Gurmukhi-ur.txt +7 -0
  137. package/transforms/Han-Latin-Names.json +8 -0
  138. package/transforms/Han-Latin-Names.txt +65 -0
  139. package/transforms/Han-Latin.json +9 -0
  140. package/transforms/Han-Latin.txt +1501 -0
  141. package/transforms/Han-Spacedhan.json +7 -0
  142. package/transforms/Han-Spacedhan.txt +35 -0
  143. package/transforms/Hangul-Latin.json +9 -0
  144. package/transforms/Hangul-Latin.txt +6 -0
  145. package/transforms/Hebrew-Latin-BGN.json +9 -0
  146. package/transforms/Hebrew-Latin-BGN.txt +113 -0
  147. package/transforms/Hebrew-Latin.json +11 -0
  148. package/transforms/Hebrew-Latin.txt +91 -0
  149. package/transforms/Hiragana-Katakana.json +11 -0
  150. package/transforms/Hiragana-Katakana.txt +179 -0
  151. package/transforms/Hiragana-Latin.json +11 -0
  152. package/transforms/Hiragana-Latin.txt +9 -0
  153. package/transforms/IPA-XSampa.json +11 -0
  154. package/transforms/IPA-XSampa.txt +228 -0
  155. package/transforms/InterIndic-Arabic.json +7 -0
  156. package/transforms/InterIndic-Arabic.txt +128 -0
  157. package/transforms/InterIndic-Bengali.json +7 -0
  158. package/transforms/InterIndic-Bengali.txt +135 -0
  159. package/transforms/InterIndic-Devanagari.json +7 -0
  160. package/transforms/InterIndic-Devanagari.txt +151 -0
  161. package/transforms/InterIndic-Gujarati.json +7 -0
  162. package/transforms/InterIndic-Gujarati.txt +136 -0
  163. package/transforms/InterIndic-Gurmukhi.json +7 -0
  164. package/transforms/InterIndic-Gurmukhi.txt +142 -0
  165. package/transforms/InterIndic-Kannada.json +7 -0
  166. package/transforms/InterIndic-Kannada.txt +137 -0
  167. package/transforms/InterIndic-Latin.json +7 -0
  168. package/transforms/InterIndic-Latin.txt +492 -0
  169. package/transforms/InterIndic-Malayalam.json +7 -0
  170. package/transforms/InterIndic-Malayalam.txt +137 -0
  171. package/transforms/InterIndic-Oriya.json +7 -0
  172. package/transforms/InterIndic-Oriya.txt +135 -0
  173. package/transforms/InterIndic-Tamil.json +7 -0
  174. package/transforms/InterIndic-Tamil.txt +136 -0
  175. package/transforms/InterIndic-Telugu.json +7 -0
  176. package/transforms/InterIndic-Telugu.txt +136 -0
  177. package/transforms/InterIndic-ur.json +7 -0
  178. package/transforms/InterIndic-ur.txt +119 -0
  179. package/transforms/Jamo-Latin.json +9 -0
  180. package/transforms/Jamo-Latin.txt +6 -0
  181. package/transforms/Kannada-Arabic.json +9 -0
  182. package/transforms/Kannada-Arabic.txt +7 -0
  183. package/transforms/Kannada-Bengali.json +9 -0
  184. package/transforms/Kannada-Bengali.txt +7 -0
  185. package/transforms/Kannada-Devanagari.json +9 -0
  186. package/transforms/Kannada-Devanagari.txt +7 -0
  187. package/transforms/Kannada-Gujarati.json +9 -0
  188. package/transforms/Kannada-Gujarati.txt +7 -0
  189. package/transforms/Kannada-Gurmukhi.json +9 -0
  190. package/transforms/Kannada-Gurmukhi.txt +7 -0
  191. package/transforms/Kannada-InterIndic.json +7 -0
  192. package/transforms/Kannada-InterIndic.txt +87 -0
  193. package/transforms/Kannada-Latin.json +9 -0
  194. package/transforms/Kannada-Latin.txt +7 -0
  195. package/transforms/Kannada-Malayalam.json +9 -0
  196. package/transforms/Kannada-Malayalam.txt +7 -0
  197. package/transforms/Kannada-Oriya.json +9 -0
  198. package/transforms/Kannada-Oriya.txt +7 -0
  199. package/transforms/Kannada-Tamil.json +9 -0
  200. package/transforms/Kannada-Tamil.txt +7 -0
  201. package/transforms/Kannada-Telugu.json +9 -0
  202. package/transforms/Kannada-Telugu.txt +7 -0
  203. package/transforms/Kannada-ur.json +8 -0
  204. package/transforms/Kannada-ur.txt +7 -0
  205. package/transforms/Katakana-Latin-BGN.json +9 -0
  206. package/transforms/Katakana-Latin-BGN.txt +335 -0
  207. package/transforms/Kazakh-Latin-BGN.json +9 -0
  208. package/transforms/Kazakh-Latin-BGN.txt +332 -0
  209. package/transforms/Kirghiz-Latin-BGN.json +9 -0
  210. package/transforms/Kirghiz-Latin-BGN.txt +211 -0
  211. package/transforms/Korean-Latin-BGN.json +9 -0
  212. package/transforms/Korean-Latin-BGN.txt +345 -0
  213. package/transforms/Latin-ASCII.json +9 -0
  214. package/transforms/Latin-ASCII.txt +909 -0
  215. package/transforms/Latin-Armenian.json +11 -0
  216. package/transforms/Latin-Armenian.txt +88 -0
  217. package/transforms/Latin-Bengali.json +9 -0
  218. package/transforms/Latin-Bengali.txt +8 -0
  219. package/transforms/Latin-Bopomofo.json +11 -0
  220. package/transforms/Latin-Bopomofo.txt +1445 -0
  221. package/transforms/Latin-ConjoiningJamo.json +7 -0
  222. package/transforms/Latin-ConjoiningJamo.txt +477 -0
  223. package/transforms/Latin-Devanagari.json +9 -0
  224. package/transforms/Latin-Devanagari.txt +8 -0
  225. package/transforms/Latin-Ethiopic.json +11 -0
  226. package/transforms/Latin-Ethiopic.txt +277 -0
  227. package/transforms/Latin-Gujarati.json +9 -0
  228. package/transforms/Latin-Gujarati.txt +8 -0
  229. package/transforms/Latin-Gurmukhi.json +9 -0
  230. package/transforms/Latin-Gurmukhi.txt +8 -0
  231. package/transforms/Latin-Hangul.json +9 -0
  232. package/transforms/Latin-Hangul.txt +7 -0
  233. package/transforms/Latin-InterIndic.json +7 -0
  234. package/transforms/Latin-InterIndic.txt +377 -0
  235. package/transforms/Latin-Jamo.json +9 -0
  236. package/transforms/Latin-Jamo.txt +7 -0
  237. package/transforms/Latin-Kannada.json +9 -0
  238. package/transforms/Latin-Kannada.txt +8 -0
  239. package/transforms/Latin-Katakana.json +11 -0
  240. package/transforms/Latin-Katakana.txt +382 -0
  241. package/transforms/Latin-Malayalam.json +9 -0
  242. package/transforms/Latin-Malayalam.txt +8 -0
  243. package/transforms/Latin-NumericPinyin.json +9 -0
  244. package/transforms/Latin-NumericPinyin.txt +29 -0
  245. package/transforms/Latin-Oriya.json +9 -0
  246. package/transforms/Latin-Oriya.txt +8 -0
  247. package/transforms/Latin-Tamil.json +9 -0
  248. package/transforms/Latin-Tamil.txt +8 -0
  249. package/transforms/Latin-Telugu.json +9 -0
  250. package/transforms/Latin-Telugu.txt +8 -0
  251. package/transforms/Latin-Thai.json +9 -0
  252. package/transforms/Latin-Thai.txt +7 -0
  253. package/transforms/Macedonian-Latin-BGN.json +9 -0
  254. package/transforms/Macedonian-Latin-BGN.txt +176 -0
  255. package/transforms/Malayalam-Arabic.json +9 -0
  256. package/transforms/Malayalam-Arabic.txt +7 -0
  257. package/transforms/Malayalam-Bengali.json +9 -0
  258. package/transforms/Malayalam-Bengali.txt +7 -0
  259. package/transforms/Malayalam-Devanagari.json +9 -0
  260. package/transforms/Malayalam-Devanagari.txt +7 -0
  261. package/transforms/Malayalam-Gujarati.json +9 -0
  262. package/transforms/Malayalam-Gujarati.txt +7 -0
  263. package/transforms/Malayalam-Gurmukhi.json +9 -0
  264. package/transforms/Malayalam-Gurmukhi.txt +7 -0
  265. package/transforms/Malayalam-InterIndic.json +7 -0
  266. package/transforms/Malayalam-InterIndic.txt +87 -0
  267. package/transforms/Malayalam-Kannada.json +9 -0
  268. package/transforms/Malayalam-Kannada.txt +7 -0
  269. package/transforms/Malayalam-Latin.json +9 -0
  270. package/transforms/Malayalam-Latin.txt +7 -0
  271. package/transforms/Malayalam-Oriya.json +9 -0
  272. package/transforms/Malayalam-Oriya.txt +7 -0
  273. package/transforms/Malayalam-Tamil.json +9 -0
  274. package/transforms/Malayalam-Tamil.txt +7 -0
  275. package/transforms/Malayalam-Telugu.json +9 -0
  276. package/transforms/Malayalam-Telugu.txt +7 -0
  277. package/transforms/Malayalam-ur.json +8 -0
  278. package/transforms/Malayalam-ur.txt +7 -0
  279. package/transforms/Maldivian-Latin-BGN.json +9 -0
  280. package/transforms/Maldivian-Latin-BGN.txt +171 -0
  281. package/transforms/Mongolian-Latin-BGN.json +9 -0
  282. package/transforms/Mongolian-Latin-BGN.txt +151 -0
  283. package/transforms/Myanmar-Latin.json +9 -0
  284. package/transforms/Myanmar-Latin.txt +367 -0
  285. package/transforms/Oriya-Arabic.json +9 -0
  286. package/transforms/Oriya-Arabic.txt +7 -0
  287. package/transforms/Oriya-Bengali.json +9 -0
  288. package/transforms/Oriya-Bengali.txt +7 -0
  289. package/transforms/Oriya-Devanagari.json +9 -0
  290. package/transforms/Oriya-Devanagari.txt +7 -0
  291. package/transforms/Oriya-Gujarati.json +9 -0
  292. package/transforms/Oriya-Gujarati.txt +7 -0
  293. package/transforms/Oriya-Gurmukhi.json +9 -0
  294. package/transforms/Oriya-Gurmukhi.txt +7 -0
  295. package/transforms/Oriya-InterIndic.json +7 -0
  296. package/transforms/Oriya-InterIndic.txt +91 -0
  297. package/transforms/Oriya-Kannada.json +9 -0
  298. package/transforms/Oriya-Kannada.txt +7 -0
  299. package/transforms/Oriya-Latin.json +9 -0
  300. package/transforms/Oriya-Latin.txt +7 -0
  301. package/transforms/Oriya-Malayalam.json +9 -0
  302. package/transforms/Oriya-Malayalam.txt +7 -0
  303. package/transforms/Oriya-Tamil.json +9 -0
  304. package/transforms/Oriya-Tamil.txt +7 -0
  305. package/transforms/Oriya-Telugu.json +9 -0
  306. package/transforms/Oriya-Telugu.txt +7 -0
  307. package/transforms/Oriya-ur.json +8 -0
  308. package/transforms/Oriya-ur.txt +7 -0
  309. package/transforms/Pashto-Latin-BGN.json +9 -0
  310. package/transforms/Pashto-Latin-BGN.txt +231 -0
  311. package/transforms/Persian-Latin-BGN.json +9 -0
  312. package/transforms/Persian-Latin-BGN.txt +203 -0
  313. package/transforms/Pinyin-NumericPinyin.json +7 -0
  314. package/transforms/Pinyin-NumericPinyin.txt +8 -0
  315. package/transforms/Russian-Latin-BGN.json +9 -0
  316. package/transforms/Russian-Latin-BGN.txt +235 -0
  317. package/transforms/Serbian-Latin-BGN.json +9 -0
  318. package/transforms/Serbian-Latin-BGN.txt +119 -0
  319. package/transforms/Simplified-Traditional.json +11 -0
  320. package/transforms/Simplified-Traditional.txt +4393 -0
  321. package/transforms/Syriac-Latin.json +11 -0
  322. package/transforms/Syriac-Latin.txt +52 -0
  323. package/transforms/Tamil-Arabic.json +9 -0
  324. package/transforms/Tamil-Arabic.txt +7 -0
  325. package/transforms/Tamil-Bengali.json +9 -0
  326. package/transforms/Tamil-Bengali.txt +7 -0
  327. package/transforms/Tamil-Devanagari.json +9 -0
  328. package/transforms/Tamil-Devanagari.txt +7 -0
  329. package/transforms/Tamil-Gujarati.json +9 -0
  330. package/transforms/Tamil-Gujarati.txt +7 -0
  331. package/transforms/Tamil-Gurmukhi.json +9 -0
  332. package/transforms/Tamil-Gurmukhi.txt +7 -0
  333. package/transforms/Tamil-InterIndic.json +7 -0
  334. package/transforms/Tamil-InterIndic.txt +70 -0
  335. package/transforms/Tamil-Kannada.json +9 -0
  336. package/transforms/Tamil-Kannada.txt +7 -0
  337. package/transforms/Tamil-Latin.json +9 -0
  338. package/transforms/Tamil-Latin.txt +7 -0
  339. package/transforms/Tamil-Malayalam.json +9 -0
  340. package/transforms/Tamil-Malayalam.txt +7 -0
  341. package/transforms/Tamil-Oriya.json +9 -0
  342. package/transforms/Tamil-Oriya.txt +7 -0
  343. package/transforms/Tamil-Telugu.json +9 -0
  344. package/transforms/Tamil-Telugu.txt +7 -0
  345. package/transforms/Tamil-ur.json +8 -0
  346. package/transforms/Tamil-ur.txt +7 -0
  347. package/transforms/Telugu-Arabic.json +9 -0
  348. package/transforms/Telugu-Arabic.txt +7 -0
  349. package/transforms/Telugu-Bengali.json +9 -0
  350. package/transforms/Telugu-Bengali.txt +7 -0
  351. package/transforms/Telugu-Devanagari.json +9 -0
  352. package/transforms/Telugu-Devanagari.txt +7 -0
  353. package/transforms/Telugu-Gujarati.json +9 -0
  354. package/transforms/Telugu-Gujarati.txt +7 -0
  355. package/transforms/Telugu-Gurmukhi.json +9 -0
  356. package/transforms/Telugu-Gurmukhi.txt +7 -0
  357. package/transforms/Telugu-InterIndic.json +7 -0
  358. package/transforms/Telugu-InterIndic.txt +87 -0
  359. package/transforms/Telugu-Kannada.json +9 -0
  360. package/transforms/Telugu-Kannada.txt +7 -0
  361. package/transforms/Telugu-Latin.json +9 -0
  362. package/transforms/Telugu-Latin.txt +7 -0
  363. package/transforms/Telugu-Malayalam.json +9 -0
  364. package/transforms/Telugu-Malayalam.txt +7 -0
  365. package/transforms/Telugu-Oriya.json +9 -0
  366. package/transforms/Telugu-Oriya.txt +7 -0
  367. package/transforms/Telugu-Tamil.json +9 -0
  368. package/transforms/Telugu-Tamil.txt +7 -0
  369. package/transforms/Telugu-ur.json +8 -0
  370. package/transforms/Telugu-ur.txt +7 -0
  371. package/transforms/Thaana-Latin.json +11 -0
  372. package/transforms/Thaana-Latin.txt +433 -0
  373. package/transforms/Thai-Latin.json +9 -0
  374. package/transforms/Thai-Latin.txt +9 -0
  375. package/transforms/Thai-ThaiLogical.json +7 -0
  376. package/transforms/Thai-ThaiLogical.txt +16 -0
  377. package/transforms/Thai-ThaiSemi.json +7 -0
  378. package/transforms/Thai-ThaiSemi.txt +6 -0
  379. package/transforms/ThaiLogical-Latin.json +7 -0
  380. package/transforms/ThaiLogical-Latin.txt +147 -0
  381. package/transforms/Turkmen-Latin-BGN.json +9 -0
  382. package/transforms/Turkmen-Latin-BGN.txt +302 -0
  383. package/transforms/Ukrainian-Latin-BGN.json +9 -0
  384. package/transforms/Ukrainian-Latin-BGN.txt +283 -0
  385. package/transforms/Uzbek-Latin-BGN.json +9 -0
  386. package/transforms/Uzbek-Latin-BGN.txt +261 -0
  387. package/transforms/am-Ethi-t-am-brai.json +11 -0
  388. package/transforms/am-Ethi-t-am-brai.txt +652 -0
  389. package/transforms/am-Ethi-t-am-ethi-m0-geminate.json +9 -0
  390. package/transforms/am-Ethi-t-am-ethi-m0-geminate.txt +6925 -0
  391. package/transforms/am-Ethi-t-d0-morse.json +9 -0
  392. package/transforms/am-Ethi-t-d0-morse.txt +657 -0
  393. package/transforms/am-am_FONIPA.json +9 -0
  394. package/transforms/am-am_FONIPA.txt +694 -0
  395. package/transforms/am-ar.json +8 -0
  396. package/transforms/am-ar.txt +5 -0
  397. package/transforms/am-chr.json +8 -0
  398. package/transforms/am-chr.txt +4 -0
  399. package/transforms/am-fa.json +8 -0
  400. package/transforms/am-fa.txt +4 -0
  401. package/transforms/az-Lower.json +8 -0
  402. package/transforms/az-Lower.txt +13 -0
  403. package/transforms/az-Title.json +8 -0
  404. package/transforms/az-Title.txt +11 -0
  405. package/transforms/az-Upper.json +8 -0
  406. package/transforms/az-Upper.txt +5 -0
  407. package/transforms/blt-fonipa-t-blt.json +8 -0
  408. package/transforms/blt-fonipa-t-blt.txt +132 -0
  409. package/transforms/byn-Ethi-t-byn-latn-m0-tekie-alibekit.json +11 -0
  410. package/transforms/byn-Ethi-t-byn-latn-m0-tekie-alibekit.txt +537 -0
  411. package/transforms/byn-Ethi-t-byn-latn-m0-xaleget.json +11 -0
  412. package/transforms/byn-Ethi-t-byn-latn-m0-xaleget.txt +773 -0
  413. package/transforms/ch-am.json +8 -0
  414. package/transforms/ch-am.txt +4 -0
  415. package/transforms/ch-ar.json +8 -0
  416. package/transforms/ch-ar.txt +4 -0
  417. package/transforms/ch-ch_FONIPA.json +8 -0
  418. package/transforms/ch-ch_FONIPA.txt +79 -0
  419. package/transforms/ch-chr.json +8 -0
  420. package/transforms/ch-chr.txt +4 -0
  421. package/transforms/ch-fa.json +8 -0
  422. package/transforms/ch-fa.txt +4 -0
  423. package/transforms/chr-chr_FONIPA.json +8 -0
  424. package/transforms/chr-chr_FONIPA.txt +111 -0
  425. package/transforms/cs-am.json +8 -0
  426. package/transforms/cs-am.txt +4 -0
  427. package/transforms/cs-ar.json +8 -0
  428. package/transforms/cs-ar.txt +4 -0
  429. package/transforms/cs-chr.json +8 -0
  430. package/transforms/cs-chr.txt +4 -0
  431. package/transforms/cs-cs_FONIPA.json +8 -0
  432. package/transforms/cs-cs_FONIPA.txt +74 -0
  433. package/transforms/cs-fa.json +8 -0
  434. package/transforms/cs-fa.txt +4 -0
  435. package/transforms/cs-ja.json +8 -0
  436. package/transforms/cs-ja.txt +4 -0
  437. package/transforms/cs-ko.json +8 -0
  438. package/transforms/cs-ko.txt +4 -0
  439. package/transforms/cs_FONIPA-ja.json +8 -0
  440. package/transforms/cs_FONIPA-ja.txt +228 -0
  441. package/transforms/cs_FONIPA-ko.json +8 -0
  442. package/transforms/cs_FONIPA-ko.txt +88 -0
  443. package/transforms/cy-fonipa-t-cy.json +8 -0
  444. package/transforms/cy-fonipa-t-cy.txt +189 -0
  445. package/transforms/de-ASCII.json +8 -0
  446. package/transforms/de-ASCII.txt +15 -0
  447. package/transforms/dsb-dsb_FONIPA.json +8 -0
  448. package/transforms/dsb-dsb_FONIPA.txt +67 -0
  449. package/transforms/el-Lower.json +8 -0
  450. package/transforms/el-Lower.txt +12 -0
  451. package/transforms/el-Title.json +8 -0
  452. package/transforms/el-Title.txt +12 -0
  453. package/transforms/el-Upper.json +8 -0
  454. package/transforms/el-Upper.txt +11 -0
  455. package/transforms/eo-am.json +8 -0
  456. package/transforms/eo-am.txt +4 -0
  457. package/transforms/eo-ar.json +8 -0
  458. package/transforms/eo-ar.txt +4 -0
  459. package/transforms/eo-chr.json +8 -0
  460. package/transforms/eo-chr.txt +4 -0
  461. package/transforms/eo-eo_FONIPA.json +8 -0
  462. package/transforms/eo-eo_FONIPA.txt +47 -0
  463. package/transforms/eo-fa.json +8 -0
  464. package/transforms/eo-fa.txt +4 -0
  465. package/transforms/es-am.json +8 -0
  466. package/transforms/es-am.txt +4 -0
  467. package/transforms/es-ar.json +8 -0
  468. package/transforms/es-ar.txt +13 -0
  469. package/transforms/es-chr.json +8 -0
  470. package/transforms/es-chr.txt +4 -0
  471. package/transforms/es-es_FONIPA.json +8 -0
  472. package/transforms/es-es_FONIPA.txt +139 -0
  473. package/transforms/es-fa.json +8 -0
  474. package/transforms/es-fa.txt +13 -0
  475. package/transforms/es-ja.json +8 -0
  476. package/transforms/es-ja.txt +4 -0
  477. package/transforms/es-zh.json +8 -0
  478. package/transforms/es-zh.txt +4 -0
  479. package/transforms/es_419-am.json +8 -0
  480. package/transforms/es_419-am.txt +5 -0
  481. package/transforms/es_419-ar.json +8 -0
  482. package/transforms/es_419-ar.txt +14 -0
  483. package/transforms/es_419-chr.json +8 -0
  484. package/transforms/es_419-chr.txt +5 -0
  485. package/transforms/es_419-fa.json +8 -0
  486. package/transforms/es_419-fa.txt +14 -0
  487. package/transforms/es_419-ja.json +8 -0
  488. package/transforms/es_419-ja.txt +5 -0
  489. package/transforms/es_419-zh.json +8 -0
  490. package/transforms/es_419-zh.txt +5 -0
  491. package/transforms/es_FONIPA-am.json +8 -0
  492. package/transforms/es_FONIPA-am.txt +230 -0
  493. package/transforms/es_FONIPA-es_419_FONIPA.json +8 -0
  494. package/transforms/es_FONIPA-es_419_FONIPA.txt +6 -0
  495. package/transforms/es_FONIPA-ja.json +8 -0
  496. package/transforms/es_FONIPA-ja.txt +155 -0
  497. package/transforms/es_FONIPA-zh.json +8 -0
  498. package/transforms/es_FONIPA-zh.txt +522 -0
  499. package/transforms/fa-fa_FONIPA.json +8 -0
  500. package/transforms/fa-fa_FONIPA.txt +107 -0
  501. package/transforms/gz-Ethi-t-und-sarb.json +11 -0
  502. package/transforms/gz-Ethi-t-und-sarb.txt +180 -0
  503. package/transforms/ha-ha_NE.json +8 -0
  504. package/transforms/ha-ha_NE.txt +6 -0
  505. package/transforms/hy-am.json +8 -0
  506. package/transforms/hy-am.txt +4 -0
  507. package/transforms/hy-ar.json +8 -0
  508. package/transforms/hy-ar.txt +4 -0
  509. package/transforms/hy-chr.json +8 -0
  510. package/transforms/hy-chr.txt +4 -0
  511. package/transforms/hy-fa.json +8 -0
  512. package/transforms/hy-fa.txt +4 -0
  513. package/transforms/hy-hy_FONIPA.json +8 -0
  514. package/transforms/hy-hy_FONIPA.txt +52 -0
  515. package/transforms/hy_AREVMDA-am.json +8 -0
  516. package/transforms/hy_AREVMDA-am.txt +4 -0
  517. package/transforms/hy_AREVMDA-ar.json +8 -0
  518. package/transforms/hy_AREVMDA-ar.txt +4 -0
  519. package/transforms/hy_AREVMDA-chr.json +8 -0
  520. package/transforms/hy_AREVMDA-chr.txt +4 -0
  521. package/transforms/hy_AREVMDA-fa.json +8 -0
  522. package/transforms/hy_AREVMDA-fa.txt +4 -0
  523. package/transforms/hy_AREVMDA-hy_AREVMDA_FONIPA.json +8 -0
  524. package/transforms/hy_AREVMDA-hy_AREVMDA_FONIPA.txt +80 -0
  525. package/transforms/ia-am.json +8 -0
  526. package/transforms/ia-am.txt +4 -0
  527. package/transforms/ia-ar.json +8 -0
  528. package/transforms/ia-ar.txt +4 -0
  529. package/transforms/ia-chr.json +8 -0
  530. package/transforms/ia-chr.txt +4 -0
  531. package/transforms/ia-fa.json +8 -0
  532. package/transforms/ia-fa.txt +4 -0
  533. package/transforms/ia-ia_FONIPA.json +8 -0
  534. package/transforms/ia-ia_FONIPA.txt +71 -0
  535. package/transforms/it-am.json +8 -0
  536. package/transforms/it-am.txt +257 -0
  537. package/transforms/it-ja.json +8 -0
  538. package/transforms/it-ja.txt +259 -0
  539. package/transforms/ja_Latn-ko.json +8 -0
  540. package/transforms/ja_Latn-ko.txt +141 -0
  541. package/transforms/ja_Latn-ru.json +8 -0
  542. package/transforms/ja_Latn-ru.txt +123 -0
  543. package/transforms/kk-am.json +8 -0
  544. package/transforms/kk-am.txt +4 -0
  545. package/transforms/kk-ar.json +8 -0
  546. package/transforms/kk-ar.txt +4 -0
  547. package/transforms/kk-chr.json +8 -0
  548. package/transforms/kk-chr.txt +4 -0
  549. package/transforms/kk-fa.json +8 -0
  550. package/transforms/kk-fa.txt +4 -0
  551. package/transforms/kk-kk_FONIPA.json +8 -0
  552. package/transforms/kk-kk_FONIPA.txt +59 -0
  553. package/transforms/ky-am.json +8 -0
  554. package/transforms/ky-am.txt +4 -0
  555. package/transforms/ky-ar.json +8 -0
  556. package/transforms/ky-ar.txt +4 -0
  557. package/transforms/ky-chr.json +8 -0
  558. package/transforms/ky-chr.txt +4 -0
  559. package/transforms/ky-fa.json +8 -0
  560. package/transforms/ky-fa.txt +4 -0
  561. package/transforms/ky-ky_FONIPA.json +8 -0
  562. package/transforms/ky-ky_FONIPA.txt +71 -0
  563. package/transforms/la-la_FONIPA.json +8 -0
  564. package/transforms/la-la_FONIPA.txt +79 -0
  565. package/transforms/lt-Lower.json +8 -0
  566. package/transforms/lt-Lower.txt +20 -0
  567. package/transforms/lt-Title.json +8 -0
  568. package/transforms/lt-Title.txt +15 -0
  569. package/transforms/lt-Upper.json +8 -0
  570. package/transforms/lt-Upper.txt +8 -0
  571. package/transforms/mn-mn_Latn-MNS.json +8 -0
  572. package/transforms/mn-mn_Latn-MNS.txt +86 -0
  573. package/transforms/my-am.json +8 -0
  574. package/transforms/my-am.txt +4 -0
  575. package/transforms/my-ar.json +8 -0
  576. package/transforms/my-ar.txt +4 -0
  577. package/transforms/my-chr.json +8 -0
  578. package/transforms/my-chr.txt +4 -0
  579. package/transforms/my-fa.json +8 -0
  580. package/transforms/my-fa.txt +4 -0
  581. package/transforms/my-my_FONIPA.json +8 -0
  582. package/transforms/my-my_FONIPA.txt +325 -0
  583. package/transforms/my-t-my-d0-zawgyi.json +8 -0
  584. package/transforms/my-t-my-d0-zawgyi.txt +222 -0
  585. package/transforms/my-t-my-s0-zawgyi.json +8 -0
  586. package/transforms/my-t-my-s0-zawgyi.txt +231 -0
  587. package/transforms/nl-Title.json +8 -0
  588. package/transforms/nl-Title.txt +7 -0
  589. package/transforms/nv-nv_FONIPA.json +8 -0
  590. package/transforms/nv-nv_FONIPA.txt +74 -0
  591. package/transforms/pl-am.json +8 -0
  592. package/transforms/pl-am.txt +4 -0
  593. package/transforms/pl-ar.json +8 -0
  594. package/transforms/pl-ar.txt +4 -0
  595. package/transforms/pl-chr.json +8 -0
  596. package/transforms/pl-chr.txt +4 -0
  597. package/transforms/pl-fa.json +8 -0
  598. package/transforms/pl-fa.txt +4 -0
  599. package/transforms/pl-ja.json +8 -0
  600. package/transforms/pl-ja.txt +4 -0
  601. package/transforms/pl-pl_FONIPA.json +8 -0
  602. package/transforms/pl-pl_FONIPA.txt +113 -0
  603. package/transforms/pl_FONIPA-ja.json +8 -0
  604. package/transforms/pl_FONIPA-ja.txt +301 -0
  605. package/transforms/rm_SURSILV-am.json +8 -0
  606. package/transforms/rm_SURSILV-am.txt +4 -0
  607. package/transforms/rm_SURSILV-ar.json +8 -0
  608. package/transforms/rm_SURSILV-ar.txt +4 -0
  609. package/transforms/rm_SURSILV-chr.json +8 -0
  610. package/transforms/rm_SURSILV-chr.txt +4 -0
  611. package/transforms/rm_SURSILV-fa.json +8 -0
  612. package/transforms/rm_SURSILV-fa.txt +4 -0
  613. package/transforms/rm_SURSILV-rm_FONIPA_SURSILV.json +8 -0
  614. package/transforms/rm_SURSILV-rm_FONIPA_SURSILV.txt +96 -0
  615. package/transforms/ro-am.json +8 -0
  616. package/transforms/ro-am.txt +4 -0
  617. package/transforms/ro-ar.json +8 -0
  618. package/transforms/ro-ar.txt +4 -0
  619. package/transforms/ro-chr.json +8 -0
  620. package/transforms/ro-chr.txt +4 -0
  621. package/transforms/ro-fa.json +8 -0
  622. package/transforms/ro-fa.txt +4 -0
  623. package/transforms/ro-ja.json +8 -0
  624. package/transforms/ro-ja.txt +4 -0
  625. package/transforms/ro-ro_FONIPA.json +8 -0
  626. package/transforms/ro-ro_FONIPA.txt +121 -0
  627. package/transforms/ro_FONIPA-ja.json +8 -0
  628. package/transforms/ro_FONIPA-ja.txt +211 -0
  629. package/transforms/ru-ja.json +8 -0
  630. package/transforms/ru-ja.txt +444 -0
  631. package/transforms/ru-zh.json +8 -0
  632. package/transforms/ru-zh.txt +996 -0
  633. package/transforms/ru_Latn-ru-BGN.json +9 -0
  634. package/transforms/ru_Latn-ru-BGN.txt +97 -0
  635. package/transforms/sat-am.json +8 -0
  636. package/transforms/sat-am.txt +6 -0
  637. package/transforms/sat-ar.json +8 -0
  638. package/transforms/sat-ar.txt +6 -0
  639. package/transforms/sat-chr.json +8 -0
  640. package/transforms/sat-chr.txt +6 -0
  641. package/transforms/sat-fa.json +8 -0
  642. package/transforms/sat-fa.txt +6 -0
  643. package/transforms/sat_Olck-sat_FONIPA.json +8 -0
  644. package/transforms/sat_Olck-sat_FONIPA.txt +174 -0
  645. package/transforms/sgw-Ethi-t-und-ethi.json +11 -0
  646. package/transforms/sgw-Ethi-t-und-ethi.txt +138 -0
  647. package/transforms/si-am.json +8 -0
  648. package/transforms/si-am.txt +4 -0
  649. package/transforms/si-ar.json +8 -0
  650. package/transforms/si-ar.txt +4 -0
  651. package/transforms/si-chr.json +8 -0
  652. package/transforms/si-chr.txt +4 -0
  653. package/transforms/si-fa.json +8 -0
  654. package/transforms/si-fa.txt +4 -0
  655. package/transforms/si-si_FONIPA.json +8 -0
  656. package/transforms/si-si_FONIPA.txt +157 -0
  657. package/transforms/si-si_Latn.json +8 -0
  658. package/transforms/si-si_Latn.txt +94 -0
  659. package/transforms/sk-am.json +8 -0
  660. package/transforms/sk-am.txt +4 -0
  661. package/transforms/sk-ar.json +8 -0
  662. package/transforms/sk-ar.txt +4 -0
  663. package/transforms/sk-chr.json +8 -0
  664. package/transforms/sk-chr.txt +4 -0
  665. package/transforms/sk-fa.json +8 -0
  666. package/transforms/sk-fa.txt +4 -0
  667. package/transforms/sk-ja.json +8 -0
  668. package/transforms/sk-ja.txt +4 -0
  669. package/transforms/sk-sk_FONIPA.json +8 -0
  670. package/transforms/sk-sk_FONIPA.txt +101 -0
  671. package/transforms/sk_FONIPA-ja.json +8 -0
  672. package/transforms/sk_FONIPA-ja.txt +252 -0
  673. package/transforms/ta-ta_FONIPA.json +8 -0
  674. package/transforms/ta-ta_FONIPA.txt +73 -0
  675. package/transforms/tlh-am.json +8 -0
  676. package/transforms/tlh-am.txt +4 -0
  677. package/transforms/tlh-ar.json +8 -0
  678. package/transforms/tlh-ar.txt +4 -0
  679. package/transforms/tlh-chr.json +8 -0
  680. package/transforms/tlh-chr.txt +4 -0
  681. package/transforms/tlh-fa.json +8 -0
  682. package/transforms/tlh-fa.txt +4 -0
  683. package/transforms/tlh-tlh_FONIPA.json +8 -0
  684. package/transforms/tlh-tlh_FONIPA.txt +46 -0
  685. package/transforms/tr-Lower.json +8 -0
  686. package/transforms/tr-Lower.txt +13 -0
  687. package/transforms/tr-Title.json +8 -0
  688. package/transforms/tr-Title.txt +11 -0
  689. package/transforms/tr-Upper.json +8 -0
  690. package/transforms/tr-Upper.txt +8 -0
  691. package/transforms/ug-ug_FONIPA.json +8 -0
  692. package/transforms/ug-ug_FONIPA.txt +69 -0
  693. package/transforms/und-Ethi-t-und-cyrl-m0-gutgarts.json +11 -0
  694. package/transforms/und-Ethi-t-und-cyrl-m0-gutgarts.txt +747 -0
  695. package/transforms/und-Ethi-t-und-latn-m0-aethiopi-geminate.json +9 -0
  696. package/transforms/und-Ethi-t-und-latn-m0-aethiopi-geminate.txt +19 -0
  697. package/transforms/und-Ethi-t-und-latn-m0-aethiopi.json +11 -0
  698. package/transforms/und-Ethi-t-und-latn-m0-aethiopi.txt +633 -0
  699. package/transforms/und-Ethi-t-und-latn-m0-alaloc-geminate.json +9 -0
  700. package/transforms/und-Ethi-t-und-latn-m0-alaloc-geminate.txt +19 -0
  701. package/transforms/und-Ethi-t-und-latn-m0-alaloc.json +11 -0
  702. package/transforms/und-Ethi-t-und-latn-m0-alaloc.txt +757 -0
  703. package/transforms/und-Ethi-t-und-latn-m0-beta_metsehaf-geminate.json +9 -0
  704. package/transforms/und-Ethi-t-und-latn-m0-beta_metsehaf-geminate.txt +19 -0
  705. package/transforms/und-Ethi-t-und-latn-m0-beta_metsehaf.json +11 -0
  706. package/transforms/und-Ethi-t-und-latn-m0-beta_metsehaf.txt +585 -0
  707. package/transforms/und-Ethi-t-und-latn-m0-es3842.json +9 -0
  708. package/transforms/und-Ethi-t-und-latn-m0-es3842.txt +640 -0
  709. package/transforms/und-Ethi-t-und-latn-m0-ies-jes-1964-geminate.json +9 -0
  710. package/transforms/und-Ethi-t-und-latn-m0-ies-jes-1964-geminate.txt +19 -0
  711. package/transforms/und-Ethi-t-und-latn-m0-ies-jes-1964.json +11 -0
  712. package/transforms/und-Ethi-t-und-latn-m0-ies-jes-1964.txt +619 -0
  713. package/transforms/und-Ethi-t-und-latn-m0-lambdin.json +11 -0
  714. package/transforms/und-Ethi-t-und-latn-m0-lambdin.txt +627 -0
  715. package/transforms/und-Ethi-t-und-latn-m0-sera.json +11 -0
  716. package/transforms/und-Ethi-t-und-latn-m0-sera.txt +695 -0
  717. package/transforms/und-Ethi-t-und-latn.json +11 -0
  718. package/transforms/und-Ethi-t-und-latn.txt +16 -0
  719. package/transforms/und_FONIPA-ar.json +8 -0
  720. package/transforms/und_FONIPA-ar.txt +114 -0
  721. package/transforms/und_FONIPA-chr.json +8 -0
  722. package/transforms/und_FONIPA-chr.txt +172 -0
  723. package/transforms/und_FONIPA-fa.json +8 -0
  724. package/transforms/und_FONIPA-fa.txt +109 -0
  725. package/transforms/uz_Cyrl-uz_Latn.json +9 -0
  726. package/transforms/uz_Cyrl-uz_Latn.txt +103 -0
  727. package/transforms/vec-vec_FONIPA.json +8 -0
  728. package/transforms/vec-vec_FONIPA.txt +85 -0
  729. package/transforms/xh-am.json +8 -0
  730. package/transforms/xh-am.txt +4 -0
  731. package/transforms/xh-ar.json +8 -0
  732. package/transforms/xh-ar.txt +4 -0
  733. package/transforms/xh-chr.json +8 -0
  734. package/transforms/xh-chr.txt +4 -0
  735. package/transforms/xh-fa.json +8 -0
  736. package/transforms/xh-fa.txt +4 -0
  737. package/transforms/xh-xh_FONIPA.json +8 -0
  738. package/transforms/xh-xh_FONIPA.txt +85 -0
  739. package/transforms/yo-yo_BJ.json +8 -0
  740. package/transforms/yo-yo_BJ.txt +36 -0
  741. package/transforms/zh_Latn_PINYIN-ru.json +8 -0
  742. package/transforms/zh_Latn_PINYIN-ru.txt +148 -0
  743. package/transforms/zu-am.json +8 -0
  744. package/transforms/zu-am.txt +4 -0
  745. package/transforms/zu-ar.json +8 -0
  746. package/transforms/zu-ar.txt +4 -0
  747. package/transforms/zu-chr.json +8 -0
  748. package/transforms/zu-chr.txt +4 -0
  749. package/transforms/zu-fa.json +8 -0
  750. package/transforms/zu-fa.txt +4 -0
  751. package/transforms/zu-zu_FONIPA.json +8 -0
  752. package/transforms/zu-zu_FONIPA.txt +72 -0
  753. package/transforms.json +385 -0
@@ -0,0 +1,419 @@
1
+
2
+ #
3
+ ########################################################################
4
+ # BGN/PCGN 1962 System
5
+ #
6
+ # This system is a simplified version of the system devised by the PCGN
7
+ # in 1941 and later adopted by the BGN. In 1962 the two organizations
8
+ # agreed to joint adoption of certain changes in the original system,
9
+ # specifically the omission of special rules for the treatment of Greek
10
+ # geographic names of Albanian, Bulgarian, Italian, Macedonian, and
11
+ # Turkish origin. That revision eliminated the need to consider the
12
+ # origin of names and removed ambiguity from the romanization of Greek
13
+ # expressions of possible non-Greek origin. This system is based on
14
+ # the pronunciation of modern Greek and is not intended for use in
15
+ # the romanization of classical Greek.
16
+ #
17
+ # The Greek Alphabet as defined by the BGN (Pages 29-31):
18
+ #
19
+ # ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ
20
+ # αβγδεζηθικλμνξοπρσςτυφχψω
21
+ #
22
+ # Originally prepared by Michael Everson <everson@evertype.com>
23
+ ########################################################################
24
+ #
25
+ # MINIMAL FILTER: Greek-Latin
26
+ #
27
+ :: [ΆΈΉΊΌΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώἀἁἂἃἄἅἆἇἈἉἊἋἌἍἎἏἐἑἒἓἔἕἘἙἚἛἜἝἠἡἢἣἤἥἦἧἨἩἪἫἬἭἮἯἰἱἲἳἴἵἶἷἸἹἺἻἼἽἾἿὀὁὂὃὄὅὈὉὊὋὌὍὐὑὒὓὔὕὖὗὙὛὝὟὠὡὢὣὤὥὦὧὨὩὫὬὭὮὯὰάὲέὴήὶίὸόὺύὼώᾀᾁᾂᾃᾄᾅᾆᾇᾈᾉᾊᾋᾌᾍᾎᾏᾐᾑᾒᾓᾔᾕᾖᾗᾘᾙᾚᾛᾜᾝᾞᾟᾠᾡᾢᾣᾤᾥᾦᾧᾨᾩᾪᾫᾬᾭᾮᾯᾲᾳᾴᾶᾷᾺΆᾼῂῃῄῆῇῈΈῊΉῌῖῚΊῤῥῦῪΎῲῳῴῶῷῸΌῺΏῼ῾] ;
28
+ :: NFD (NFC) ;
29
+ #
30
+ #
31
+ ########################################################################
32
+ #
33
+ ########################################################################
34
+ #
35
+ # Define All Transformation Variables
36
+ #
37
+ ########################################################################
38
+ #
39
+ $upperConsonants = [ΒΓΔΖΘΚΛΜΝΞΠΡΣΤΦΧΨ] ;
40
+ $lowerConsonants = [βγδζθκλμνξπρσςτφχψ] ;
41
+ $consonants = [$upperConsonants $lowerConsonants] ;
42
+ $upperVowels = [ΑΕΗΙΟΥΩ] ;
43
+ $lowerVowels = [αεηιουω] ;
44
+ $vowels = [$upperVowels $lowerVowels] ;
45
+ $lower = [$lowerConsonants $lowerVowels] ;
46
+ #
47
+ #
48
+ # Use this $wordBoundary until bug 2034 is fixed in ICU:
49
+ # http://bugs.icu-project.org/cgi-bin/icu-bugs/transliterate?id=2034;expression=boundary;user=guest
50
+ #
51
+ $wordBoundary = [^[:L:][:M:][:N:]] ;
52
+ #
53
+ #
54
+ ########################################################################
55
+ #
56
+ ########################################################################
57
+ #
58
+ # Rules moved to front to avoid masking
59
+ #
60
+ ########################################################################
61
+ #
62
+ ########################################################################
63
+ #
64
+ # BGN Page 32 Rule 1:
65
+ #
66
+ # The apostrophe and reversed apostrophe, on or the other of which is
67
+ # written in Greek in front of all initial uppercase vowel characters,
68
+ # above all initial lowercase vowel characters, and above the second
69
+ # character of all initial two-vowel character sequences, should not
70
+ # be romanized, e.g., Ἀθῆναι → Athínai, Ἠράκλειον → Iráklion,
71
+ # Οἰνόφυτα → Oinófita. These apostrophes must be distinguished from
72
+ # accent marks hen they occur together, e.g. Ἄβατον → Ávaton,
73
+ # Ἤλια → Ília, Οἴτη → Oíti. The reversed apostrophe is sometimes found
74
+ # also with ρ and should, likewise, not be romanized: ῥέμα → réma.
75
+ #
76
+ # BGN Page 32 Rule 2a:
77
+ #
78
+ # Stress is shown in Greek by the use of the tilde or circumflex,
79
+ # the acute accent, or the grave accent; all of those marks should
80
+ # be represented in romanization by an acute accent, e.g.,
81
+ # Ἀθῆναι → Athínai, Νδία → Día, Ζεμενὸν → Zemenón.
82
+ #
83
+ # BGN Page 32 Rule 4:
84
+ #
85
+ # The character ι (ióta) is sometimes found written under, or,
86
+ # in uppercase, to the right of the vowel characters α, η, and ω.
87
+ # This "subscript iota" should not be romanized, e.g.,
88
+ # Μυρτῷον Πέλαγος or ΜΥΡΤῼΟΝ ΠΕΛΑΓΟΣ [but not ΜΥΡΤΩΙΟΝ ΠΕΛΑΓΟΣ]
89
+ # → Mirtóön Pélagos.
90
+ #
91
+ ########################################################################
92
+ #
93
+ [ἈἉᾼᾈᾉ] → Α ; # GREEK CAPITAL LETTER ALPHA
94
+ [ἀἁᾳᾀᾁ] → α ; # GREEK SMALL LETTER ALPHA
95
+ [ἊἋἌἍἎἏᾊᾋᾌᾍᾎᾏᾺΆ] → Ά ; # GREEK CAPITAL LETTER ALPHA WITH TONOS
96
+ [ἂἃἄἅἆἇὰάᾂᾃᾄᾅᾆᾇᾲᾴᾶᾷ] → ά ; # GREEK SMALL LETTER ALPHA WITH TONOS
97
+ [ἘἙ] → Ε ; # GREEK CAPITAL LETTER EPSILON
98
+ [ἐἑὲέ] → ε ; # GREEK SMALL LETTER EPSILON
99
+ [ἚἛἜἝῈΈ] → Έ ; # GREEK CAPITAL LETTER EPSILON WITH TONOS
100
+ [ἒἓἔἕ] → έ ; # GREEK SMALL LETTER EPSILON WITH TONOS
101
+ [ἨἩᾘᾙῌ] → Η ; # GREEK CAPITAL LETTER ETA
102
+ [ἠἡᾐᾑῃ] → η ; # GREEK SMALL LETTER ETA
103
+ [ἪἫἬἭἮἯᾚᾛᾜᾝᾞᾟῊΉ] → Ή ; # GREEK CAPITAL LETTER ETA WITH TONOS
104
+ [ἢἣἤἥἦἧὴήᾒᾓᾔᾕᾖᾗῂῄῆῇ] → ή ; # GREEK SMALL LETTER ETA WITH TONOS
105
+ [ἸἹ] → Ι ; # GREEK CAPITAL LETTER IOTA
106
+ [ἰἱ] → ι ; # GREEK SMALL LETTER IOTA
107
+ [ἺἻἼἽἾἿῚΊ] → Ί ; # GREEK CAPITAL LETTER IOTA WITH TONOS
108
+ [ἲἳἴἵἶἷὶίῖ] → ί ; # GREEK SMALL LETTER IOTA WITH TONOS
109
+ [ὈὉ] → Ο ; # GREEK CAPITAL LETTER OMICRON
110
+ [ὀὁ] → ο ; # GREEK SMALL LETTER OMICRON
111
+ [ὊὋὌὍῸΌ] → Ό ; # GREEK CAPITAL LETTER OMICRON WITH TONOS
112
+ [ὂὃὄὅὸό] → ό ; # GREEK SMALL LETTER OMICRON WITH TONOS
113
+ Ὑ → Υ ; # GREEK CAPITAL LETTER UPSILON
114
+ [ὐὑ] → υ ; # GREEK SMALL LETTER UPSILON
115
+ [ὛὝὟῪΎ] → Ύ ; # GREEK CAPITAL LETTER UPSILON WITH TONOS
116
+ [ὒὓὔὕὖὗὺύῦ] → ύ ; # GREEK SMALL LETTER UPSILON WITH TONOS
117
+ [ὨὩᾨᾩῼ] → Ω ; # GREEK CAPITAL LETTER OMEGA
118
+ [ὠὡᾠᾡῳ] → ω ; # GREEK SMALL LETTER OMEGA
119
+ [ὬὫὬὭὮὯᾪᾫᾬᾭᾮᾯῺΏ] → Ώ ; # GREEK CAPITAL LETTER OMEGA WITH TONOS
120
+ [ὢὣὤὥὦὧὼώᾢᾣᾤᾥᾦᾧῲῴῶῷ] → ώ ; # GREEK SMALL LETTER OMEGA WITH TONOS
121
+ Ῥ → Ρ ; # GREEK CAPITAL LETTER RHO
122
+ [ῤῥ] → ρ ; # GREEK SMALL LETTER RHO
123
+ #
124
+ #
125
+ ########################################################################
126
+ #
127
+ # End of Rules 1, 2a, and 4
128
+ #
129
+ ########################################################################
130
+ #
131
+ ########################################################################
132
+ #
133
+ # BGN Page 32 Rules 2b and 2c:
134
+ #
135
+ # If the stressed vowel is written as a sequence of two vowel characters
136
+ # in Greek, the # second vowel character should carry the accent;
137
+ # similarly, in Romanization the acute accent should be placed over the
138
+ # second vowel letter, e.g., Οἰνοῦσαι → Oinoúsai, Οἴτη → Oíti,
139
+ # Θεσπιαὶ → Thespiaí.
140
+ #
141
+ # Where a syllable containing on the combinations αυ, ευ, or ηυ
142
+ # carries the stress, this is marked in Greek on the character υ.
143
+ # In romanization it should be shown on the preceding vowel
144
+ # letter, e.g., Πειραιεύς → Piraiévs, Αὔρα → Ávra.
145
+ #
146
+ Αί → Aí ;
147
+ αί → aí ;
148
+ Οί → Oí ;
149
+ οί → Oí ;
150
+ Ού → Oú ;
151
+ ού → oú ;
152
+ Αύ → Άυ ;
153
+ αύ → άυ ;
154
+ Εύ → Έυ ;
155
+ εύ → έυ ;
156
+ Ηύ → Ήυ ;
157
+ ηύ → ήυ ;
158
+ #
159
+ #
160
+ ########################################################################
161
+ #
162
+ # End of Rules 2b and 2c
163
+ #
164
+ ########################################################################
165
+ #
166
+ ########################################################################
167
+ #
168
+ # BGN Page 32 Rule 3:
169
+ #
170
+ # The dieresis should be shown in romanization where it occurs in Greek,
171
+ # e.g., Μαρινέϊκα → Marinéïka, Ἀχαΐα → Akhaḯa; and over the second vowel
172
+ # etter in romanization of the following combinations fo Greek vowel
173
+ # characters: αε, e.g., Ἀετὸς → Aëtos; αη, e.g., Ἀηδὼν → Aïdhon; οη,
174
+ # e.g. Οἰνόη → Oinóï; ωο, e.g., Ἠρῶον → Iróön.
175
+ #
176
+ [ΪΫ] → Ï ;
177
+ [ϊϋ] → ï ;
178
+ [ΐΰ] → ḯ ;
179
+ Αε → Aë ;
180
+ αε → aë ;
181
+ Αη → Aï ;
182
+ αη → aï ;
183
+ Οη → Oï ;
184
+ οη → oï ;
185
+ Ωο → Oö ;
186
+ ωο → oö ;
187
+ Άε → Áë ;
188
+ άε → áë ;
189
+ Άη → Áï ;
190
+ άη → áï ;
191
+ Όη → Óï ;
192
+ όη → óï ;
193
+ Ώο → Óö ;
194
+ ώο → óö ;
195
+ #
196
+ #
197
+ ########################################################################
198
+ #
199
+ # End of Rule 3
200
+ #
201
+ ########################################################################
202
+ #
203
+ ########################################################################
204
+ #
205
+ # Start of Alphabetic Transformations
206
+ #
207
+ ########################################################################
208
+ #
209
+ ΑΙ → AI ; # GREEK CAPITAL LETTER ALPHA + CAPITAL IOTA
210
+ Αι → Ai ; # GREEK CAPITAL LETTER ALPHA + SMALL IOTA
211
+ αι → ai ; # GREEK SMALL LETTER ALPHA + SMALL IOTA
212
+ ΑΥ → AV ; # GREEK CAPITAL LETTER ALPHA + CAPITAL UPSILON
213
+ Αυ → Av ; # GREEK CAPITAL LETTER ALPHA + SMALL UPSILON
214
+ αυ → av ; # GREEK SMALL LETTER ALPHA + SMALL UPSILON
215
+ Α → A ; # GREEK CAPITAL LETTER ALPHA
216
+ α → a ; # GREEK SMALL LETTER ALPHA
217
+ Ά → Á ; # GREEK CAPITAL LETTER ALPHA WITH TONOS
218
+ ά → á ; # GREEK SMALL LETTER ALPHA WITH TONOS
219
+ Β → V ; # GREEK CAPITAL LETTER BETA
220
+ β → v ; # GREEK SMALL LETTER BETA
221
+ ΓΓ → NG ; # GREEK CAPITAL LETTER GAMMA + CAPITAL GAMMA
222
+ Γγ → Ng ; # GREEK CAPITAL LETTER GAMMA + SMALL GAMMA
223
+ γγ → ng ; # GREEK SMALL LETTER GAMMA + SMALL GAMMA
224
+ $wordBoundary{ΓΚ → G ; # GREEK CAPITAL LETTER GAMMA + CAPITAL KAPPA
225
+ $wordBoundary{Γκ → G ; # GREEK CAPITAL LETTER GAMMA + SMALL KAPPA
226
+ $wordBoundary{γκ → g ; # GREEK SMALL LETTER GAMMA + SMALL KAPPA
227
+ ΓΚ → NG ; # GREEK CAPITAL LETTER GAMMA + CAPITAL KAPPA
228
+ Γκ → Ng ; # GREEK CAPITAL LETTER GAMMA + SMALL KAPPA
229
+ γκ → ng ; # GREEK SMALL LETTER GAMMA + SMALL KAPPA
230
+ #
231
+ #
232
+ ########################################################################
233
+ #
234
+ # BGN Page 29 Rule 3a:
235
+ #
236
+ # The character γ should be romanized g before α, ο, ου, ω, and
237
+ # consonants other than γ, ξ, and χ.
238
+ #
239
+ ########################################################################
240
+ #
241
+ Γ}[ΑΟΩ [$upperConsonants - [ΓΞΧ]]] → G ; # GREEK CAPITAL LETTER GAMMA
242
+ Γ}[αοω [$lowerConsonants - [γξχ]]] → G ; # GREEK CAPITAL LETTER GAMMA
243
+ Γ}ΟΥ → G ; # GREEK CAPITAL LETTER GAMMA
244
+ Γ}ου → G ; # GREEK CAPITAL LETTER GAMMA
245
+ γ}[αοω [$lowerConsonants - [γξχ]]] → g ; # GREEK SMALL LETTER GAMMA
246
+ γ}ου → g ; # GREEK SMALL LETTER GAMMA
247
+ #
248
+ #
249
+ ########################################################################
250
+ #
251
+ # End of Rule 3a
252
+ #
253
+ ########################################################################
254
+ #
255
+ ########################################################################
256
+ #
257
+ # BGN Page 29 Rule 3b:
258
+ #
259
+ # The character γ should be romanized y before αι, ε, ει, η, ι, οι, υ,
260
+ # and υι.
261
+ #
262
+ ########################################################################
263
+ #
264
+ Γ}[ΑΕΟΥ]Ι → Y ; # GREEK CAPITAL LETTER GAMMA
265
+ Γ}[ΕΗΙΥ] → Y ; # GREEK CAPITAL LETTER GAMMA
266
+ Γ}[αεου]ι → Y ; # GREEK CAPITAL LETTER GAMMA
267
+ Γ}[εηιυ] → Y ; # GREEK CAPITAL LETTER GAMMA
268
+ γ}[αεου]ι → y ; # GREEK SMALL LETTER GAMMA
269
+ γ}[εηιυ] → y ; # GREEK SMALL LETTER GAMMA
270
+ #
271
+ #
272
+ ########################################################################
273
+ #
274
+ # End of Rule 3b
275
+ #
276
+ ########################################################################
277
+ #
278
+ ########################################################################
279
+ #
280
+ # BGN Page 29 Rule 3c:
281
+ #
282
+ # The character γ should be romanized n before ξ and χ.
283
+ #
284
+ ########################################################################
285
+ #
286
+ Γ}[ΞΧ] → N ; # GREEK CAPITAL LETTER GAMMA
287
+ Γ}[ξχ] → N ; # GREEK CAPITAL LETTER GAMMA
288
+ γ}[ξχ] → n ; # GREEK SMALL LETTER GAMMA
289
+ #
290
+ #
291
+ ########################################################################
292
+ #
293
+ # End of Rule 3c
294
+ #
295
+ ########################################################################
296
+ #
297
+ Γ → G ; # GREEK CAPITAL LETTER GAMMA
298
+ γ → g ; # GREEK SMALL LETTER GAMMA
299
+ #
300
+ #
301
+ ########################################################################
302
+ #
303
+ # BGN Page 29 Rule 4a:
304
+ #
305
+ # The character δ should be romanized d when between ν and ρ.
306
+ #
307
+ ########################################################################
308
+ #
309
+ Ν{Δ}Ρ → D ; # GREEK CAPITAL LETTER DELTA
310
+ ν{δ}ρ → d ; # GREEK SMALL LETTER GAMMA
311
+ #
312
+ #
313
+ ########################################################################
314
+ #
315
+ # End of Rule 4a
316
+ #
317
+ ########################################################################
318
+ #
319
+ Δ} $lower → Dh ; # GREEK CAPITAL LETTER PSI
320
+ Δ → DH ; # GREEK CAPITAL LETTER DELTA
321
+ δ → dh ; # GREEK SMALL LETTER DELTA
322
+ ΕΙ → I ; # GREEK CAPITAL LETTER EPSILON + CAPITAL IOTA
323
+ Ει → I ; # GREEK CAPITAL LETTER EPSILON + SMALL IOTA
324
+ ει → i ; # GREEK SMALL LETTER EPSILON + SMALL IOTA
325
+ ΕΪ → EÏ ; # GREEK CAPITAL LETTER EPSILON + CAPITAL IOTA DIAERESIS
326
+ Εϊ → Eï ; # GREEK CAPITAL LETTER EPSILON + SMALL IOTA DIAERESIS
327
+ εϊ → eï ; # GREEK SMALL LETTER EPSILON + SMALL IOTA DIAERESIS
328
+ ΕΥ → EV ; # GREEK CAPITAL LETTER EPSILON + CAPITAL UPSILON
329
+ Ευ → Ev ; # GREEK CAPITAL LETTER EPSILON + SMALL UPSILON
330
+ ευ → ev ; # GREEK SMALL LETTER EPSILON + SMALL UPSILON
331
+ Ε → E ; # GREEK CAPITAL LETTER EPSILON
332
+ ε → e ; # GREEK SMALL LETTER EPSILON
333
+ Έ → É ; # GREEK CAPITAL LETTER EPSILON WITH TONOS
334
+ έ → é ; # GREEK SMALL LETTER EPSILON WITH TONOS
335
+ Ζ → Z ; # GREEK CAPITAL LETTER ZETA
336
+ ζ → z ; # GREEK SMALL LETTER ZETA
337
+ ΗΥ → IV ; # GREEK CAPITAL LETTER ALPHA + CAPITAL UPSILON
338
+ Ηυ → Iv ; # GREEK CAPITAL LETTER ALPHA + SMALL UPSILON
339
+ ηυ → iv ; # GREEK SMALL LETTER ALPHA + SMALL UPSILON
340
+ Η → I ; # GREEK CAPITAL LETTER ETA
341
+ η → i ; # GREEK SMALL LETTER ETA
342
+ Ή → Í ; # GREEK CAPITAL LETTER ETA WITH TONOS
343
+ ή → í ; # GREEK SMALL LETTER ETA WITH TONOS
344
+ Θ} $lower → Th ; # GREEK CAPITAL LETTER THETA
345
+ Θ → TH ; # GREEK CAPITAL LETTER THETA
346
+ θ → th ; # GREEK SMALL LETTER THETA
347
+ Ι → I ; # GREEK CAPITAL LETTER IOTA
348
+ ι → i ; # GREEK SMALL LETTER IOTA
349
+ Ί → Í ; # GREEK CAPITAL LETTER IOTA WITH TONOS
350
+ ί → í ; # GREEK SMALL LETTER IOTA WITH TONOS
351
+ Κ → K ; # GREEK CAPITAL LETTER KAPPA
352
+ κ → k ; # GREEK SMALL LETTER KAPPA
353
+ Λ → L ; # GREEK CAPITAL LETTER LAMDA
354
+ λ → l ; # GREEK SMALL LETTER LAMDA
355
+ $wordBoundary{ΜΠ → B ; # GREEK CAPITAL LETTER MU + CAPITAL PI
356
+ $wordBoundary{Μπ → B ; # GREEK CAPITAL LETTER MU + SMALL PI
357
+ $wordBoundary{μπ → b ; # GREEK SMALL LETTER MU + SMALL PI
358
+ ΜΠ → MB ; # GREEK CAPITAL LETTER MU + CAPITAL PI
359
+ Μπ → Mb ; # GREEK CAPITAL LETTER MU + SMALL PI
360
+ μπ → mb ; # GREEK SMALL LETTER MU + SMALL PI
361
+ Μ → M ; # GREEK CAPITAL LETTER MU
362
+ μ → m ; # GREEK SMALL LETTER MU
363
+ $wordBoundary{ΝΤ → D ; # GREEK CAPITAL LETTER NU + CAPITAL TAU
364
+ $wordBoundary{Ντ → D ; # GREEK CAPITAL LETTER NU + SMALL TAU
365
+ $wordBoundary{ντ → d ; # GREEK SMALL LETTER NU + SMALL TAU
366
+ ΝΤ → ND ; # GREEK CAPITAL LETTER NU + CAPITAL TAU
367
+ Ντ → Nd ; # GREEK CAPITAL LETTER NU + SMALL TAU
368
+ ντ → nd ; # GREEK SMALL LETTER NU + SMALL TAU
369
+ Ν → N ; # GREEK CAPITAL LETTER NU
370
+ ν → n ; # GREEK SMALL LETTER NU
371
+ Ξ → X ; # GREEK CAPITAL LETTER KSI
372
+ ξ → x ; # GREEK SMALL LETTER KSI
373
+ ΟΙ → OI ; # GREEK CAPITAL LETTER OMICRON + CAPITAL IOTA
374
+ Οι → Oi ; # GREEK CAPITAL LETTER OMICRON + SMALL IOTA
375
+ οι → oi ; # GREEK SMALL LETTER OMICRON + SMALL IOTA
376
+ ΟΥ → OU ; # GREEK CAPITAL LETTER OMICRON + CAPITAL UPSILON
377
+ Ου → Ou ; # GREEK CAPITAL LETTER OMICRON + SMALL UPSILON
378
+ ου → ou ; # GREEK SMALL LETTER OMICRON + SMALL UPSILON
379
+ Ο → O ; # GREEK CAPITAL LETTER OMICRON
380
+ ο → o ; # GREEK SMALL LETTER OMICRON
381
+ Ό → Ó ; # GREEK CAPITAL LETTER OMICRON WITH TONOS
382
+ ό → ó ; # GREEK SMALL LETTER OMICRON WITH TONOS
383
+ Π → P ; # GREEK CAPITAL LETTER PI
384
+ π → p ; # GREEK SMALL LETTER PI
385
+ Ρ → R ; # GREEK CAPITAL LETTER RHO
386
+ ρ → r ; # GREEK SMALL LETTER RHO
387
+ Σ → S ; # GREEK CAPITAL LETTER SIGMA
388
+ σ → s ; # GREEK SMALL LETTER SIGMA
389
+ ς → s ; # GREEK SMALL LETTER FINAL SIGMA
390
+ Τ → T ; # GREEK CAPITAL LETTER TAU
391
+ τ → t ; # GREEK SMALL LETTER TAU
392
+ #
393
+ #
394
+ ########################################################################
395
+ #
396
+ # End Rule 3.5
397
+ #
398
+ ########################################################################
399
+ #
400
+ Υ → I ; # GREEK CAPITAL LETTER UPSILON
401
+ υ → i ; # GREEK SMALL LETTER UPSILON
402
+ Ύ → Í ; # GREEK CAPITAL LETTER UPSILON WITH TONOS
403
+ ύ → í ; # GREEK SMALL LETTER UPSILON WITH TONOS
404
+ Φ → F ; # GREEK CAPITAL LETTER PHI
405
+ φ → f ; # GREEK SMALL LETTER PHI
406
+ Χ} $lower → Kh ; # GREEK CAPITAL LETTER CHI
407
+ Χ → KH ; # GREEK CAPITAL LETTER CHI
408
+ χ → kh ; # GREEK SMALL LETTER CHI
409
+ Ψ} $lower → Ps ; # GREEK CAPITAL LETTER PSI
410
+ Ψ → PS ; # GREEK CAPITAL LETTER PSI
411
+ ψ → ps ; # GREEK SMALL LETTER PSI
412
+ Ω → O ; # GREEK CAPITAL LETTER OMEGA
413
+ ω → o ; # GREEK SMALL LETTER OMEGA
414
+ Ώ → Ó ; # GREEK CAPITAL LETTER OMEGA WITH TONOS
415
+ ώ → ó ; # GREEK SMALL LETTER OMEGA WITH TONOS
416
+ #
417
+ #
418
+ ########################################################################
419
+
@@ -0,0 +1,11 @@
1
+ {
2
+ "_backwardAlias": "Latin-Greek",
3
+ "_visibility": "external",
4
+ "_backwardAliasBcp47": "und-Grek-t-und-latn",
5
+ "_alias": "Greek-Latin",
6
+ "_aliasBcp47": "und-Latn-t-und-grek",
7
+ "_source": "Grek",
8
+ "_direction": "both",
9
+ "_target": "Latn",
10
+ "_rulesFile": "Greek-Latin.txt"
11
+ }
@@ -0,0 +1,251 @@
1
+
2
+ # Rules are predicated on running NFD first, and NFC afterwards
3
+ # :: [\u0000-\u007F \u0370-Ͽ [:Greek:] [:nonspacing mark:]] ;
4
+ # MINIMAL FILTER GENERATED FOR: Greek-Latin
5
+ :: [΄´;µ·ÄËÏÖÜäëïöüÿ-āĒ-ēĪ-īŌ-ōŪ-ūŸǕ-ǜǞ-ǣǬ-ǭȪ-ȭȰ-ȳ̄̈̓-̔͂-ͅͺ;Ά-ΊΌΎ-ΡΣ-ώϐ-ϗϛϝϟϡϣϥϧϩϫϭϯ-ϵϷ-\u07FBЁЇёїӒ-ӓӚ-ӟӢ-ӧӪ-ӱӴ-ӵӸ-ӹḔ-ḗḠ-ḡḦ-ḧḮ-ḯḸ-ḹṎ-ṓṜ-ṝṺ-ṻẄ-ẅẌ-ẍẗἀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼι῁-ῄῆ-ῌ῏-ΐῖ-Ί῟-Ῥῲ-ῴῶ-ῼΩϹ] ;
6
+ :: NFD (NFC) ;
7
+ # TEST CASES
8
+ # Ὀλίγοι ἔμφονες πολλῶν ἀφρόνων φοβερώτεροι — Πλάτωνος
9
+ # ᾂ ᾒ ᾢ ᾃ ᾓ ᾣ
10
+ # ᾳ ῃ ῳ ὃ ὄ
11
+ # ὠς ὡς ὢς ὣς
12
+ # Ὠς Ὡς Ὢς Ὣς
13
+ # ὨΣ ὩΣ ὪΣ ὫΣ
14
+ # Ạ, ạ, Ẹ, ẹ, Ọ, ọ
15
+ # Useful variables
16
+ $lower = [[:latin:][:greek:] & [:Ll:]];
17
+ $glower = [[:greek:] & [:Ll:]];
18
+ $upper = [[:latin:][:greek:] & [:Lu:]] ;
19
+ $accent = [:M:] ;
20
+ # NOTE: restrict to just the Greek & Latin accents that we care about
21
+ # TODO: broaden out once interation is fixed
22
+ $accentMinus = [ [̀-ͅ] & [:M:] - [̸]] ;
23
+ $macron = ̄ ;
24
+ $ddot = ̈ ;
25
+ $ddotmac = [$ddot$macron];
26
+ $lcgvowel = [αεηιουω] ;
27
+ $ucgvowel = [ΑΕΗΙΟΥΩ] ;
28
+ $gvowel = [$lcgvowel $ucgvowel] ;
29
+ $lcgvowelC = [$lcgvowel $accent] ;
30
+ $evowel = [aeiouyAEIOUY];
31
+ $evowel2 = [iuyIUY];
32
+ $vowel = [ $evowel $gvowel] ;
33
+ $gammaLike = [ΓΚΞΧγκξχϰ] ;
34
+ $egammaLike = [GKXCgkxc] ;
35
+ $smooth = ̓ ;
36
+ $rough = ̔ ;
37
+ $iotasub = ͅ ;
38
+ $evowel_i = [$evowel-[iI]] ;
39
+ $evowel2_i = [uyUY];
40
+ $underbar = ̱;
41
+ $afterLetter = [:L:] [[:M:]\']* ;
42
+ $beforeLetter = [[:M:]\']* [:L:] ;
43
+ $beforeLower = $accent * $lower ;
44
+ $notLetter = [^[:L:][:M:]] ;
45
+ $under = ̱;
46
+ # Fix punctuation
47
+ # preserve original
48
+ \: ↔ \: $under ;
49
+ \? ↔ \? $under ;
50
+ \; ↔ \? ;
51
+ · ↔ \: ;
52
+ ΄ ↔ ´;
53
+ # CIRCUMFLEX: convert greek circumflex to normal one. Could use tilde or inverted breve
54
+ ͂ ↔ ̂ ;
55
+ # IOTA: convert iota subscript to iota
56
+ # first make previous alpha long!
57
+ $accent_minus = [[$accent]-[$iotasub$macron]];
58
+ Α } $accent_minus * $iotasub → | Α $macron ;
59
+ α } $accent_minus * $iotasub → | α $macron ;
60
+ # now convert to uppercase if after uppercase, ow to lowercase
61
+ $upper $accent * { $iotasub → I ;
62
+ $iotasub → i ;
63
+ | $1 $iotasub ← ($evowel $macron $accentMinus *) i ;
64
+ | $1 $iotasub ← ($evowel $macron $accentMinus *) I ;
65
+ # BREATHING
66
+ # Convert rough breathing to h, and move before letters.
67
+ # Make A ` x = → H a x
68
+ Α ($macron?) $rough } $beforeLower → H | α $1;
69
+ Ε $rough } $beforeLower → H | ε;
70
+ Η $rough } $beforeLower → H | η ;
71
+ Ι ($ddot?) $rough } $beforeLower → H | ι $1;
72
+ Ο $rough } $beforeLower → H | ο ;
73
+ Υ $rough } $beforeLower → H | υ ;
74
+ Ω ($ddot?) $rough } $beforeLower → H | ω $1;
75
+ # Make A x ` = → H a x
76
+ Α ($glower $macron?) $rough → H | α $1 ;
77
+ Ε ($glower) $rough → H | ε $1 ;
78
+ Η ($glower) $rough → H | η $1 ;
79
+ Ι ($glower $ddot?) $rough → H | ι $1 ;
80
+ Ο ($glower) $rough → H | ο $1 ;
81
+ Υ ($glower) $rough → H | υ $1 ;
82
+ Ω ($glower $ddot?) $rough → H | ω $1 ;
83
+ #Otherwise, make x ` into h x and X ` into H X
84
+ ($lcgvowel + $ddotmac? ) $rough → h | $1 ;
85
+ ($gvowel + $ddotmac? ) $rough → H | $1 ;
86
+ # Go backwards with H
87
+ | $1 $rough ← h ($evowel $macron $ddot? $evowel2_i $macron?) ;
88
+ | $1 $rough ← h ($evowel $ddot? $evowel2 $macron?) ;
89
+ | $1 $rough ← h ($evowel $macron? $ddot?) ;
90
+ | $1 $rough ← H ([AEIOUY] $macron $ddot? $evowel2_i $macron?) ;
91
+ | $1 $rough ← H ([AEIOUY] $ddot? $evowel2 $macron?) ;
92
+ | $1 $rough ← H ([AEIOUY] $macron? $ddot?) ;
93
+ # titlecase, have to fix individually
94
+ # in the future, we should add &uppercase() to make this easier
95
+ | A $1 $rough ← H a ($macron $ddot? $evowel2_i $macron?) ;
96
+ | E $1 $rough ← H e ($macron $ddot? $evowel2_i $macron?) ;
97
+ | I $1 $rough ← H i ($macron $ddot? $evowel2_i $macron?) ;
98
+ | O $1 $rough ← H o ($macron $ddot? $evowel2_i $macron?) ;
99
+ | U $1 $rough ← H u ($macron $ddot? $evowel2_i $macron?) ;
100
+ | Y $1 $rough ← H y ($macron $ddot? $evowel2_i $macron?) ;
101
+ | A $1 $rough ← H a ($ddot? $evowel2 $macron?) ;
102
+ | E $1 $rough ← H e ($ddot? $evowel2 $macron?) ;
103
+ | I $1 $rough ← H i ($ddot? $evowel2 $macron?) ;
104
+ | O $1 $rough ← H o ($ddot? $evowel2 $macron?) ;
105
+ | U $1 $rough ← H u ($ddot? $evowel2 $macron?) ;
106
+ | Y $1 $rough ← H y ($ddot? $evowel2 $macron?) ;
107
+ | A $1 $rough ← H a ($macron? $ddot? ) ;
108
+ | E $1 $rough ← H e ($macron? $ddot? ) ;
109
+ | I $1 $rough ← H i ($macron? $ddot? ) ;
110
+ | O $1 $rough ← H o ($macron? $ddot? ) ;
111
+ | U $1 $rough ← H u ($macron? $ddot? ) ;
112
+ | Y $1 $rough ← H y ($macron? $ddot? ) ;
113
+ # Now do smooth
114
+ #delete smooth breathing for Latin
115
+ $smooth → ;
116
+ # insert in Greek
117
+ # the assumption is that all Marks are on letters.
118
+ | $1 $smooth ← $notLetter { ([rR]) } [^hH$smooth$rough] ;
119
+ | $1 $smooth ← $notLetter { ($evowel $macron? $evowel2 $macron?) } [^$smooth$rough] ;
120
+ | $1 $smooth ← $notLetter { ($evowel $macron?) } [^$evowel2$smooth$rough] ;
121
+ # TODO: preserve smooth/rough breathing if not
122
+ # on initial vowel sequence
123
+ # need to have these up here so the rules don't mask
124
+ # remove now superfluous macron when returning
125
+ Α ← A $macron ;
126
+ α ← a $macron ;
127
+ η ↔ e $macron ;
128
+ Η ↔ E $macron ;
129
+ φ ↔ ph ;
130
+ Ψ } $beforeLower ↔ Ps ;
131
+ Ψ ↔ PS ;
132
+ Φ } $beforeLower ↔ Ph ;
133
+ Φ ↔ PH ;
134
+ ψ ↔ ps ;
135
+ ω ↔ o $macron ;
136
+ Ω ↔ O $macron;
137
+ # NORMAL
138
+ α ↔ a ;
139
+ Α ↔ A ;
140
+ β ↔ b ;
141
+ Β ↔ B ;
142
+ γ } $gammaLike ↔ n } $egammaLike ;
143
+ γ ↔ g ;
144
+ Γ } $gammaLike ↔ N } $egammaLike ;
145
+ Γ ↔ G ;
146
+ δ ↔ d ;
147
+ Δ ↔ D ;
148
+ ε ↔ e ;
149
+ Ε ↔ E ;
150
+ ζ ↔ z ;
151
+ Ζ ↔ Z ;
152
+ θ ↔ th ;
153
+ Θ } $beforeLower ↔ Th ;
154
+ Θ ↔ TH ;
155
+ ι ↔ i ;
156
+ Ι ↔ I ;
157
+ κ ↔ k ;
158
+ Κ ↔ K ;
159
+ λ ↔ l ;
160
+ Λ ↔ L ;
161
+ μ ↔ m ;
162
+ Μ ↔ M ;
163
+ ν } $gammaLike → n\' ;
164
+ ν ↔ n ;
165
+ Ν } $gammaLike ↔ N\' ;
166
+ Ν ↔ N ;
167
+ ξ ↔ x ;
168
+ Ξ ↔ X ;
169
+ ο ↔ o ;
170
+ Ο ↔ O ;
171
+ π ↔ p ;
172
+ Π ↔ P ;
173
+ ρ $rough ↔ rh;
174
+ Ρ $rough } $beforeLower ↔ Rh ;
175
+ Ρ $rough ↔ RH ;
176
+ ρ ↔ r ;
177
+ Ρ ↔ R ;
178
+ # insert separator before things that turn into s
179
+ [Pp] { } [ςσΣϷϸϺϻ] → \' ;
180
+ # special S variants
181
+ Ϸ ↔ Š ; # Ϸ GREEK CAPITAL LETTER SHO Uppercase_Letter Grek - L
182
+ ϸ ↔ š ; #ϸ GREEK SMALL LETTER SHO Lowercase_Letter Grek - L
183
+ Ϻ ↔ Ŝ ; # Ϻ GREEK CAPITAL LETTER SAN Uppercase_Letter Grek - L
184
+ ϻ ↔ ŝ ; # ϻ GREEK SMALL LETTER SAN Lowercase_Letter Grek - L
185
+ # underbar means exception
186
+ # before a letter, initial
187
+ ς } $beforeLetter ↔ s $underbar } $beforeLetter;
188
+ σ } $beforeLetter ↔ s } $beforeLetter;
189
+ # otherwise, after a letter = final
190
+ $afterLetter { σ ↔ $afterLetter { s $underbar;
191
+ $afterLetter { ς ↔ $afterLetter { s ;
192
+ # otherwise (isolated) = initial
193
+ ς ↔ s $underbar;
194
+ σ ↔ s ;
195
+ # [Pp] { Σ ↔ \'S ;
196
+ Σ ↔ S ;
197
+ τ ↔ t ;
198
+ Τ ↔ T ;
199
+ $vowel {υ } ↔ u ;
200
+ υ ↔ y ;
201
+ $vowel { Υ ↔ U ;
202
+ Υ ↔ Y ;
203
+ χ ↔ ch ;
204
+ Χ } $beforeLower ↔ Ch ;
205
+ Χ ↔ CH ;
206
+ # Completeness for ASCII
207
+ $ignore = [[:Mark:]''] * ;
208
+ | k ← c ;
209
+ | ph ← f ;
210
+ | i ← j ;
211
+ | k ← q ;
212
+ | b ← v } $vowel ;
213
+ | b ← w } $vowel;
214
+ | u ← v ;
215
+ | u ← w;
216
+ | K ← C ;
217
+ | Ph ← F ;
218
+ | I ← J ;
219
+ | K ← Q ;
220
+ | B ← V } $vowel ;
221
+ | B ← W } $vowel ;
222
+ | U ← V ;
223
+ | U ← W ;
224
+ $rough } $ignore [:UppercaseLetter:] → H ;
225
+ $ignore [:UppercaseLetter:] { $rough → H ;
226
+ $rough ← H ;
227
+ $rough ↔ h ;
228
+ # Completeness for Greek
229
+ ϐ → | β ;
230
+ ϑ → | θ ;
231
+ ϒ → | Υ ;
232
+ ϕ → | φ ;
233
+ ϖ → | π ;
234
+ ϰ → | κ ;
235
+ ϱ → | ρ ;
236
+ ϲ → | σ ;
237
+ Ϲ → | Σ; #U+03F9 GREEK CAPITAL LUNATE SIGMA SYMBOL
238
+ ϳ → j ;
239
+ ϴ → | Θ ;
240
+ ϵ → | ε ;
241
+ µ → | μ ;
242
+ ͺ → i;
243
+ # delete any trailing ' marks used for roundtripping
244
+ ← [Ππ] { \' } [Ss] ;
245
+ ← [Νν] { \' } $egammaLike ;
246
+ ::NFC (NFD) ;
247
+ # ([\u0000-\u007F [:Latin:] [:Greek:] [:nonspacing mark:]]) ;
248
+ # ([\u0000-\u007F · [:Latin:] [:nonspacing mark:]]) ;
249
+ # MINIMAL FILTER GENERATED FOR: Latin-Greek BACKWARD
250
+ :: ( [':?A-Za-zÀ-ÅÇ-ÏÑ-ÖÙ-Ýà-åç-ïñ-öù-ýÿ-ďĒ-ĥĨ-İĴ-ķĹ-ľŃ-ňŌ-őŔ-ťŨ-žƠ-ơƯ-ưǍ-ǜǞ-ǣǦ-ǰǴ-ǵǸ-țȞ-ȟȦ-ȳ̀-̷̹-ͅ΅-ΆΈ-ΊΌΎ-ΐΪ-ΰϊ-ώϓ-ϔЀ-ЁЃЇЌ-ЎЙйѐ-ёѓїќ-ўѶ-ѷӁ-ӂӐ-ӓӖ-ӗӚ-ӟӢ-ӧӪ-ӵӸ-ӹḀ-ẙẛẠ-ỹἀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼ῁-ῄῆ-ΐῖ-Ί῝-΅ῲ-ῴῶ-ῼK-Å] ) ;
251
+
@@ -0,0 +1,11 @@
1
+ {
2
+ "_backwardAlias": "Latin-Greek/UNGEGN",
3
+ "_visibility": "external",
4
+ "_backwardAliasBcp47": "und-Grek-t-und-latn-m0-ungegn",
5
+ "_alias": "Greek-Latin/UNGEGN",
6
+ "_aliasBcp47": "und-Latn-t-und-grek-m0-ungegn",
7
+ "_source": "Grek",
8
+ "_direction": "both",
9
+ "_target": "Latn",
10
+ "_rulesFile": "Greek_Latin_UNGEGN.txt"
11
+ }