local export = {}
local u = mw.ustring.char
local pua = {}
for i = 1, 7 do
pua[i] = u(0xF000+i-1)
end
export.py_tone = {
['̄'] = '1',
['́'] = '2',
['̌'] = '3',
['̀'] = '4'
}
export.tones = '[̄́̌̀]'
export.normalize_py = {
{"([zcs])h", "ng(r?%d)", "([bpmf])(or?%d)", "([jqxy])u", "iu", "ui", "w", "y", "ue([nŋ]r?)", "io(ŋr?)", "ü", "([iu])%1", "([ẑĉŝrzcs])i(r?%d)"},
{"%1̂", "ŋ%1", "%1u%2", "%1ü", "iou", "uei", "u", "i", "u%1", "iu%1", "iu", "%1", "%1ı%2"}
}
export.py_ipa_initials = {
["b"] = "p", ["p"] = "pʰ", ["m"] = "m", ["f"] = "f",
["d"] = "t", ["t"] = "tʰ", ["n"] = "n", ["l"] = "l",
["g"] = "k", ["k"] = "kʰ", ["h"] = "x",
["j"] = "t͡ɕ", ["q"] = "t͡ɕʰ", ["x"] = "ɕ",
["ẑ"] = "ʈ͡ʂ", ["ĉ"] = "ʈ͡ʂʰ", ["ŝ"] = "ʂ",
["r"] = "ʐ", ["z"] = "t͡s", ["c"] = "t͡sʰ", ["s"] = "s",
["v"] = "v",
[""] = "",
}
export.py_ipa_initials_tl = {
["p"] = "b̥", ["t"] = "d̥", ["k"] = "g̊", ["t͡ɕ"] = "d͡ʑ̥", ["ʈ͡ʂ"] = "ɖ͡ʐ̥", ["t͡s"] = "d͡z̥",
}
export.py_ipa_finals = {
['a'] = 'ä', ['o'] = 'ɔ', ['e'] = 'ɤ', ['ê'] = 'ɛ',
['ai'] = 'aɪ̯', ['ei'] = 'eɪ̯',
['ao'] = 'ɑʊ̯', ['ou'] = 'oʊ̯',
['an'] = 'än', ['en'] = 'ən', ['ên'] = 'ɛn',
['aŋ'] = 'ɑŋ', ['oŋ'] = 'ʊŋ', ['eŋ'] = 'ɤŋ', ['êŋ'] = 'ɛŋ',
['i'] = 'i', ['ia'] = 'i̯ä', ['io'] = 'i̯ɔ', ['ie'] = 'i̯ɛ',
['iai'] = 'i̯aɪ̯',
['iao'] = 'i̯ɑʊ̯', ['iou'] = 'i̯oʊ̯',
['ian'] = 'i̯ɛn', ['in'] = 'in',
['iaŋ'] = 'i̯ɑŋ', ['iŋ'] = 'iŋ',
['u'] = 'u', ['ua'] = 'u̯ä', ['uo'] = 'u̯ɔ', ['uê'] = 'u̯ɛ',
['uai'] = 'u̯aɪ̯', ['uei'] = 'u̯eɪ̯',
['uan'] = 'u̯än', ['un'] = 'u̯ən',
['uaŋ'] = 'u̯ɑŋ', ['uŋ'] = 'u̯əŋ',
['iu'] = 'y', ['iue'] = 'y̯ɛ',
['iuan'] = 'y̯ɛn', ['iun'] = 'yn',
['iuŋ'] = 'i̯ʊŋ',
["ı"] = "ʐ̩",
['m'] = 'm̩', ['n'] = 'n̩', ['ŋ'] = 'ŋ̍',
[""] = "",
}
export.py_ipa_erhua = {
{"än?", "[ɔɤɛʐ]̩?", "([ɑʊɤɛ])ŋ", "[iy]n?", "aɪ̯", "eɪ̯", "ɑʊ̯", "oʊ̯", "ən", "ɛn", "iŋ", "u", "əŋ"},
{"ɑɻ", "%0ɻ", "%1̃ɻ", "%1ə̯ɻ", "ɑɻ", "əɻ", "aʊ̯ɻʷ", "ɤʊ̯ɻʷ", "əɻ", "ɑɻ", "iɤ̯̃ɻ", "uɻʷ", "ʊ̃ɻ"}
}
export.py_ipa_tl_ts = {
['1'] = '²', ['2'] = '³', ['3'] = '⁴', ['4'] = '¹', ['5'] = '¹'
}
export.py_ipa_third_t_ts = {
['1'] = '²¹⁴⁻²¹¹', ['3'] = '²¹⁴⁻³⁵', ['#3'] = '²¹⁴⁻²¹¹', ['5'] = '²¹⁴', ['2'] = '²¹⁴⁻²¹¹', ['1-2'] = '²¹⁴⁻²¹¹', ['4-2'] = '²¹⁴⁻²¹¹', ['4'] = '²¹⁴⁻²¹¹', ['1-4'] = '²¹⁴⁻²¹¹'
}
export.py_ipa_t_values = {
['4'] = '⁵¹', ['1-4'] = '⁵⁵⁻⁵¹', ['1'] = '⁵⁵', ['2'] = '³⁵', ['1-2'] = '⁵⁵⁻³⁵', ['4-2'] = '⁵¹⁻³⁵'
}
export.py_zhuyin_initial = {
['b'] = 'ㄅ', ['p'] = 'ㄆ', ['m'] = 'ㄇ', ['f'] = 'ㄈ',
['d'] = 'ㄉ', ['t'] = 'ㄊ', ['n'] = 'ㄋ', ['l'] = 'ㄌ',
['g'] = 'ㄍ', ['k'] = 'ㄎ', ['h'] = 'ㄏ',
['j'] = 'ㄐ', ['q'] = 'ㄑ', ['x'] = 'ㄒ',
['zh'] = 'ㄓ', ['ch'] = 'ㄔ', ['sh'] = 'ㄕ',
['z'] = 'ㄗ', ['c'] = 'ㄘ', ['s'] = 'ㄙ', ['r'] = 'ㄖ',
['v'] = 'ㄪ',
[''] = ''
}
export.py_zhuyin_final = {
['a'] = '', ['e'] = '', ['o'] = '', ['i'] = '', ['u'] = '', ['ü'] = '', ['ê'] = ''
}
export.py_zhuyin_final = {
['a'] = 'ㄚ',
['o'] = 'ㄛ',
['e'] = 'ㄜ',
['ê'] = 'ㄝ',
['ai'] = 'ㄞ',
['ei'] = 'ㄟ',
['ao'] = 'ㄠ',
['ou'] = 'ㄡ',
['an'] = 'ㄢ',
['en'] = 'ㄣ',
['ên'] = 'ㄝㄣ',
['ang'] = 'ㄤ',
['eng'] = 'ㄥ',
['êng'] = 'ㄝㄥ',
['ong'] = 'ㄨㄥ',
['yi'] = 'ㄧ', ['i'] = 'ㄧ',
['ya'] = 'ㄧㄚ', ['ia'] = 'ㄧㄚ',
['yo'] = 'ㄧㄛ', ['io'] = 'ㄧㄛ',
['ye'] = 'ㄧㄝ', ['ie'] = 'ㄧㄝ',
['yai'] = 'ㄧㄞ', ['iai'] = 'ㄧㄞ',
['yao'] = 'ㄧㄠ', ['iao'] = 'ㄧㄠ',
['you'] = 'ㄧㄡ', ['iu'] = 'ㄧㄡ',
['yan'] = 'ㄧㄢ', ['ian'] = 'ㄧㄢ',
['yin'] = 'ㄧㄣ', ['in'] = 'ㄧㄣ',
['yang'] = 'ㄧㄤ', ['iang'] = 'ㄧㄤ',
['ying'] = 'ㄧㄥ', ['ing'] = 'ㄧㄥ',
['wu'] = 'ㄨ', ['u'] = 'ㄨ',
['wa'] = 'ㄨㄚ', ['ua'] = 'ㄨㄚ',
['wo'] = 'ㄨㄛ', ['uo'] = 'ㄨㄛ',
['wê'] = 'ㄨㄝ', ['uê'] = 'ㄨㄝ',
['wai'] = 'ㄨㄞ', ['uai'] = 'ㄨㄞ',
['wei'] = 'ㄨㄟ', ['ui'] = 'ㄨㄟ',
['wan'] = 'ㄨㄢ', ['uan'] = 'ㄨㄢ',
['wen'] = 'ㄨㄣ', ['un'] = 'ㄨㄣ',
['wang'] = 'ㄨㄤ', ['uang'] = 'ㄨㄤ',
['weng'] = 'ㄨㄥ',
['yu'] = 'ㄩ', ['ü'] = 'ㄩ',
['yue'] = 'ㄩㄝ', ['üe'] = 'ㄩㄝ', ['ue'] = 'ㄩㄝ',
['yuan'] = 'ㄩㄢ', ['üan'] = 'ㄩㄢ',
['yun'] = 'ㄩㄣ', ['ün'] = 'ㄩㄣ',
['yong'] = 'ㄩㄥ', ['iong'] = 'ㄩㄥ',
[''] = '',
}
export.py_zhuyin_er = {
['r'] = 'ㄦ', [''] = ''
}
export.py_zhuyin_tone = {
['1'] = '', ['2'] = 'ˊ', ['3'] = 'ˇ', ['4'] = 'ˋ', ['5'] = '˙', ['0'] = '˙'
}
export.zhuyin_py_initial = {
["ㄅ"] = "b", ["ㄆ"] = "p", ["ㄇ"] = "m", ["ㄈ"] = "f",
["ㄉ"] = "d", ["ㄊ"] = "t", ["ㄋ"] = "n", ["ㄌ"] = "l",
["ㄍ"] = "g", ["ㄎ"] = "k", ["ㄏ"] = "h",
["ㄐ"] = "j", ["ㄑ"] = "q", ["ㄒ"] = "x",
["ㄓ"] = "zh", ["ㄔ"] = "ch", ["ㄕ"] = "sh", ["ㄖ"] = "r",
["ㄗ"] = "z", ["ㄘ"] = "c", ["ㄙ"] = "s",
['ㄪ'] = 'v',
[""] = ""
}
export.zhuyin_py_final = {
['ㄚ'] = 'a', ['ㄛ'] = 'o', ['ㄜ'] = 'e', ['ㄝ'] = 'ê', ['ㄞ'] = 'ai', ['ㄟ'] = 'ei', ['ㄠ'] = 'ao', ['ㄡ'] = 'ou', ['ㄢ'] = 'an', ['ㄣ'] = 'en', ['ㄤ'] = 'ang', ['ㄥ'] = 'eng',
['ㄧ'] = 'i', ['ㄧㄚ'] = 'ia', ['ㄧㄛ'] = 'io', ['ㄧㄝ'] = 'ie', ['ㄧㄞ'] = 'iai', ['ㄧㄠ'] = 'iao', ['ㄧㄡ'] = 'iu', ['ㄧㄢ'] = 'ian', ['ㄧㄣ'] = 'in', ['ㄧㄤ'] = 'iang', ['ㄧㄥ'] = 'ing',
['ㄨ'] = 'u', ['ㄨㄚ'] = 'ua', ['ㄨㄛ'] = 'uo', ['ㄨㄞ'] = 'uai', ['ㄨㄟ'] = 'ui', ['ㄨㄢ'] = 'uan', ['ㄨㄣ'] = 'un', ['ㄨㄤ'] = 'uang', ['ㄨㄥ'] = 'ong',
['ㄩ'] = 'ü', ['ㄩㄝ'] = 'ue', ['ㄩㄝ'] = 'üe', ['ㄩㄢ'] = 'üan', ['ㄩㄣ'] = 'ün', ['ㄩㄥ'] = 'iong',
['ㄨㄝ'] = 'uê', ['ㄝㄣ'] = 'ên',
['ㄦ'] = 'er', ['ㄫ'] = 'ng', ['ㄇ'] = 'm', [''] = 'i'
}
export.zhuyin_py_tone = {
["ˊ"] = "\204\129", ["ˇ"] = "\204\140", ["ˋ"] = "\204\128", ["˙"] = "", [""] = "\204\132"
}
export.py_wg_initial = {
["b"] = "p", ["p"] = "pʻ",
["d"] = "t", ["t"] = "tʻ",
["g"] = "k", ["k"] = "kʻ",
["j"] = "ch", ["q"] = "chʻ", ["x"] = "hs",
["z"] = "ts", ["c"] = "tsʻ", ["r"] = "j",
["zh"] = "ch", ["ch"] = "chʻ",
["v"] = "v"
}
export.py_wg_final = {
["^([yw]?)e([^ih])"] = "%1ê%2",
["^e$"] = "ê",
["([iy])an$"] = "%1en",
["(i?)ong"] = "%1ung",
["([iy])e$"] = "%1eh",
["[uü]e"] = "üeh",
["r$"] = "rh",
["ê"] = "eh",
["^i$"] = "i",
["yi$"] = "i",
}
export.py_wg_syl = {
["(t?sʻ?)uo"] = "%1o",
["^([tnlcj]h?ʻ?)uo"] = "%1o",
["shi"] = "shih", ["ji"] = "jih",
["tsi"] = "tzŭ", ["tsʻi"] = "tzʻŭ", ["^si$"] = "ssŭ",
["^([kh]?ʻ?)ê$"] = "%1o",
["yên"] = "yen",
["you"] = "yu", ["^ih"] = "i",
["k(ʻ?)ui"] = "k%1uei"
}
export.py_gwoyeu_initials = {
['b'] = 'b', ['p'] = 'p', ['m'] = 'm', ['f'] = 'f',
['d'] = 'd', ['t'] = 't', ['n'] = 'n', ['l'] = 'l',
['g'] = 'g', ['k'] = 'k', ['h'] = 'h',
['j'] = 'j', ['q'] = 'ch', ['x'] = 'sh',
['zh'] = 'j', ['ch'] = 'ch', ['sh'] = 'sh', ['r'] = 'r',
['z'] = 'tz', ['c'] = 'ts', ['s'] = 's',
['y'] = 'i', ['w'] = 'u',
['v'] = 'v',
[''] = ''
}
export.py_gwoyeu_finals = {
['a'] = 'a', ['ai'] = 'ai', ['ao'] = 'au', ['an'] = 'an', ['ang'] = 'ang', ['e'] = 'e', ['ei'] = 'ei', ['ou'] = 'ou', ['en'] = 'en', ['eng'] = 'eng', ['o'] = 'o',
['ia'] = 'ia', ['iao'] = 'iau', ['ian'] = 'ian', ['iang'] = 'iang', ['ie'] = 'ie', ['iu'] = 'iou', ['in'] = 'in', ['ing'] = 'ing', ['i'] = 'i',
['ua'] = 'ua', ['uai'] = 'uai', ['uan'] = 'uan', ['uang'] = 'uang', ['uo'] = 'uo', ['ui'] = 'uei', ['un'] = 'uen', ['ong'] = 'ong', ['u'] = 'u',
['ɨ'] = 'y', ['üan'] = 'iuan', ['üe'] = 'iue', ['ün'] = 'iun', ['iong'] = 'iong', ['ü'] = 'iu',
['io'] = 'io', ['ê'] = 'è', ['ên'] = 'èn',
--erhua
['ar'] = 'al', ['air'] = 'al', ['aor'] = 'aul', ['anr'] = 'al', ['angr'] = 'angl', ['er'] = "e'l", ['eir'] = 'el', ['our'] = 'oul', ['enr'] = 'el', ['engr'] = 'engl', ['or'] = 'ol',
['iar'] = 'ial', ['iaor'] = 'iaul', ['ianr'] = 'ial', ['iangr'] = 'iangl', ['ier'] = "ie'l", ['iur'] = 'ioul', ['inr'] = 'iel', ['ingr'] = 'iengl', ['ir'] = 'iel',
['uar'] = 'ual', ['uair'] = 'ual', ['uanr'] = 'ual', ['uangr'] = 'uangl', ['uor'] = 'uol', ['uir'] = 'uel', ['unr'] = 'uel', ['ongr'] = 'ongl', ['ur'] = 'ul',
['ɨr'] = 'el', ['üanr'] = 'iual', ['üer'] = "iue'l", ['ünr'] = 'iul', ['iongr'] = 'iongl', ['ür'] = 'iuel', ['ênr'] = 'èl',
}
export.py_yale_initials = {
["c"] = "ts", ["q"] = "ch", ["x"] = "sy", ["z"] = "dz"
}
export.py_yale_one_medial = {
["ê"] = "e", ["ü"] = "yu"
}
export.py_yale_two_medials = {
["ao"] = "au", ["iu"] = "you", ["ui"] = "wei", ["un"] = "wun"
}
export.py_palladius_one_initial = {
["b"] = "б", ["p"] = "п", ["m"] = "м", ["f"] = "ф", ["d"] = "д", ["t"] = "т", ["n"] = "н",
["l"] = "л", ["g"] = "г", ["k"] = "к", ["h"] = "х", ["j"] = "цз", ["q"] = "ц", ["x"] = "с",
["r"] = "ж", ["z"] = "цз" .. pua[1], ["c"] = "ц" .. pua[1], ["s"] = "с" .. pua[1],
["v"] = "в" .. pua[2], ["w"] = "в", ["y"] = "i"
}
export.py_palladius_two_initials = {
["zh"] = "чж", ["ch"] = "ч", ["sh"] = "ш"
}
export.py_palladius_one_medial = {
["a"] = "а", ["e"] = "э", ["i"] = "и",
["o"] = "о", ["u"] = "у", ["ü"] = "юй"
}
export.py_palladius_two_medials = {
["ai"] = "ай", ["ao"] = "ао", ["ê"] = "эй", ["ei"] = "эй",
["ia"] = "я", ["ie"] = "е", ["io"] = "йо", ["iu"] = "ю", ["iü"] = "юй",
["ou"] = "оу", ["ua"] = "уа", ["ui"] = "уй", ["uo"] = "о",
["üa"] = "юа", ["üe"] = "юэ"
}
export.py_palladius_three_medials = {
["iai"] = "яй", ["iao"] = "яо", ["iüa"] = "юа", ["iüe"] = "юэ",
["uai"] = "уай"
}
export.py_palladius_finals = {
["m"] = "м", ["n"] = "нь", ["r"] = "р"
}
export.py_palladius_specials = {
["ву"] = "у", ["йон"] = "юн", ["йоу"] = "ю", [pua[1] .. "и"] = "ы", ["ии"] = "и", ["йн"] = "н", ["он"] = "ун", ["юу"] = "ю", ["хуй"] = "хуэй",
}
export.py_palladius_disambig = {
[pua[3] .. "а"] = "'а", [pua[3] .. "н" .. pua[7]] = "'н", [pua[3] .. "нь" .. pua[7]] = "'нь", [pua[3] .. "эй"] = "'эй",
[pua[4] .. "у"] = "'у",
[pua[5] .. "о"] = "'о", [pua[5] .. "н" .. pua[7]] = "'н", [pua[5] .. "нь" .. pua[7]] = "'нь",
[pua[6] .. "н" .. pua[7]] = "'н", [pua[6] .. "нь" .. pua[7]] = "'нь",
}
return export