local export = {}
local loc_names = {
['hy'] = "Huangyan", --當代吳語研究 備註:該方言點暫無學堂拼音,該地點現以「學堂風」拼音拼寫
['lh'] = "Linhai", --臨海方言雙音節連讀變調實驗研究 + 浙江臨海方言音系
['sm'] = "Sanmen", --吳語三門方言研究
['tt'] = "Tiantai", --天台方言研究 + 天台縣誌 !! NOT 語保 !!
['wl'] = "Wenling", --浙江温嶺方言研究 + 温嶺縣誌
-- ['nh'] = "Ninghai"
}
--all wiki pages link to "Taizhou dialect" except Tiantai, which links to "Tiantai dialect"
local order = { 'hy', 'lh', 'sm', 'tt', 'wl'
}
local ipa_initial = {
["p"] = "p", ["ph"] = "pʰ", ["b"] = "b", ["m"] = "m", ["f"] = "f", ["v"] = "v",
["t"] = "t", ["th"] = "tʰ", ["d"] = "d", ["n"] = "n", ["l"] = "l",
["ts"] = "t͡s", ["tsh"] = "t͡sʰ", ["s"] = "s", ["z"] = "z", ["c"] = "t͡ɕ", ["ch"] = "t͡ɕʰ",
["dz"] = "d͡z", ["j"] = "d͡ʑ", ["gn"] = "n̠ʲ", ["sh"] = "ɕ", ["zh"] = "ʑ",
["k"] = "k", ["kh"] = "kʰ", ["g"] = "ɡ", ["ng"] = "ŋ", ["h"] = "h", ["gh"] = "ɦ",
[""] = "",
}
local ipa_final = {
['hy'] = {
["ou"] = "əu", ["o"] = "o", ["a"] = "a", ["e"] = "e", ["au"] = "ɒ", ["ae"] = "ɛ", ["oe"] = "ø", ["eu"] = "iɤ",
["i"] = "i", ["yi"] = "iɪ", ["ia"] = "ia", ["ie"] = "ie", ["iau"] = "iɒ", ["iae"] = "iɛ", ["ioe"] = "uø", ["ieu"] = "iu",
["u"] = "u", ["ua"] = "ua", ["ue"] = "ue", ["uae"] = "uɛ",
["iu"] = "y",
["an"] = "ã", ["en"] = "əŋ", ["on"] = "oŋ", ["aon"] = "ɒ̃",
["ian"] = "iã", ["in"] = "iɪŋ", ["ion"] = "yoŋ",
["uan"] = "uã", ["uen"] = "uəŋ", ["uaon"] = "uɒ̃",
["iun"] = "yɪŋ",
["aq"] = "ɐʔ", ["aeq"] = "ɛʔ", ["oq"] = "ɔʔ",
["iaq"] = "iɐʔ", ["iaeq"] = "ieʔ", ["ioq"] = "yɔʔ",
["uaq"] = "uɐʔ", ["iuaeq"] = "yɛʔ", ["uoq"] = "uɔʔ",
["er"] = "əl", ["y"] = "z̩", ["yu"] = "z̩ʷ",
},
['lh'] = {
["a"] = "a", ["ae"] = "ɛ", ["e"] = "e", ["oe"] = "ø", ["au"] = "ɔ", ["o"] = "o", ["eu"] = "œ",
["i"] = "i", ["ia"] = "ia", ["ie"] = "iɪ", ["ioe"] = "yø", ["iau"] = "iɔ", ["ieu"] = "iəu",
["u"] = "u", ["ua"] = "ua", ["uae"] = "uɛ", ["ue"] = "ue", ["uoe"] = "uø",
["iu"] = "y",
["an"] = "ã", ["en"] = "əŋ", ["on"] = "oŋ", ["aon"] = "ɔ̃",
["ian"] = "iã", ["in"] = "iəŋ", ["ion"] = "ioŋ", ["iaon"] = "yɔ̃",
["uan"] = "uã", ["uen"] = "uəŋ",
["iun"] = "yəŋ",
["aq"] = "ɐʔ", ["oeq"] = "øʔ", ["aoq"] = "ɔʔ", ["oq"] = "oʔ",
["iaq"] = "iɐʔ", ["iq"] = "ieʔ", ["iaoq"] = "yɔʔ", ["ioq"] = "yoʔ",
["uaq"] = "uɐʔ", ["ueq"] = "uəʔ",
["iuq"] = "yøʔ",
["er"] = "l̩", ["y"] = "z̩"
},
['tt'] = { --與學堂一致,分拆縣誌所合併的促韻尾
["a"] = "a", ["e"] = "e", ["oe"] = "ø", ["o"] = "o", ["ei"] = "ei", ["au"] = "au", ["ou"] = "ou", ["eu"] = "ɤu",
["i"] = "i", ["ia"] = "ia", ["ie"] = "ie", ["ioe"] = "yø", ["iau"] = "iau", ["ieu"] = "iɤu",
["u"] = "u", ["ua"] = "ua", ["ue"] = "ue", ["uoe"] = "uø", ["uo"] = "uo", ["uei"] = "uei",
["iu"] = "y",
["an"] = "aŋ", ["en"] = "əŋ", ["on"] = "oŋ", ["aon"] = "ɔ̃",
["ian"] = "iaŋ", ["in"] = "iŋ", ["ion"] = "yoŋ",["iaon"] = "yɔ̃",
["uan"] = "uaŋ", ["uen"] = "uəŋ", ["uaon"] = "uɔ̃",
["eq"] = "eʔ", ["aq"] = "aʔ", ["aeq"] = "æʔ", ["oeq"] = "øʔ", ["aoq"] = "ɔʔ", ["oq"] = "uʔ",
["iq"] = "iɪʔ", ["iaq"] = "iaʔ", ["iaeq"] = "iæʔ", ["iaoq"] = "yɔʔ", ["ioq"] = "yuʔ",
["ueq"] = "uəʔ", ["uaq"] = "uaʔ", ["uoeq"] = "uøʔ", ["uaoq"] = "uɔʔ",
["iuq"] = "yəʔ",
["er"] = "əl", ["y"] = "z̩"
},
['sm'] = { --Original book notation: discrepancies with 學堂 include: <ui> all merged into <ue> on wugniu, conservative-文讀 only
--["a"] = "a", ["ae"] = "ɛ", ["au"] = "au", ["e"] = "e", ["eu"] = "ɤɯ", ["o"] = "o", ["oe"] = "ø", ["ou"] = "ʊ",
--["i"] = "i", ["ia"] = "ia", ["iau"] = "iau", ["ie"] = "ie", ["ieu"] = "iu~iɤɯ", ["iou"] = "iʊ", --<ieu> [iu] Shanglu, [iɤɯ] Xialu
--["u"] = "u", ["ua"] = "ua", ["uae"] = "uɛ", ["ue"] = "ue", ["uo"] = "uo", ["uoe"] = "uø",
--["iu"] = "y", ["io"] = "yo", ["ioe"] = "yø",
--["an"] = "aŋ", ["en"] = "əŋ", ["on"] = "oŋ", ["aon"] = "ɔŋ",
--["ian"] = "iaŋ", ["in"] = "iŋ", ["ion"] = "yoŋ", ["iaon"] = "yɔŋ", ["iun"] = "yŋ",
--["aq"] = "aʔ", ["aeq"] = "ɛʔ", ["aoq"] = "ɔʔ", ["eq"] = "eʔ", ["oq"] = "oʔ", ["oeq"] = "øʔ",
--["iaq"] = "iaʔ", ["ieq"] = "iɪʔ"
--["uaq"] = "uaʔ", ["uaeq"] = "uɛʔ", ["uaoq"] = "uɔʔ", ["ueq"] = "uəʔ",
--["iaoq"] = "iɔʔ", ["ioq"] = "yoʔ", ["ioeq"] = "yøʔ",
--["y"] = "z̩", ["yu"] = "z̩ʷ"
-- Book notation discrepancies with wugniu:
-- Book notation all -h instead of -q
-- Book notation yin and yang sonorant sets distinguished with apostrophe (<'m> <m> <'n> <n> etc)
-- Book notation tones are numbered 1-5, no dashes
-- Book notation has no ghi>y and ghu>w
-- Website eq = /əʔ/ vs book /eʔ/
-- Website iaoq = /iɔʔ/ vs book /yɔʔ/
-- Website an series = /ã/ vs book /aŋ/
-- Website aon series = /ɔ̃/ vs book /ɔŋ/
-- Book notation /yŋ/ <iuin> instead of wugniu <iun>
-- ["ih"] = "iʔ" vs ["ieh"] = "ieʔ" merged on wugniu website as ["ieq"] = "iɪʔ"
-- ["ioeh"] = "yøʔ" vs ["iuih"] = "yʔ" merged on wugniu website as ["ioeq"] = "yøʔ"
-- Website Missing rime ["ui"] = "ui" (book notes: old literary reading)
-- Website Missing rime ["uoeh"] = "uøʔ"
-- Book notes that /uo/ merger into /o/ is very common in Southern parts
-- Book has no gn-, website does
},
['wl'] = {
["a"] = "a", ["ae"] = "ɛ", ["e"] = "e", ["au"] = "ɔ", ["o"] = "o", ["oe"] = "ø", ["eu"] = "ɤ", ["ou"] = "ɯ",
["i"] = "i", ["ia"] = "ia", ["iae"] = "iɛ", ["ie"] = "ie", ["iau"] = "iɔ", ["ioe"] = "yø", ["ieu"] = "iɤ", ["iou"] = "iɯ",
["u"] = "u", ["ua"] = "ua", ["uae"] = "uɛ", ["uoe"] = "uø",
["iu"] = "y",
["an"] = "ã", ["en"] = "ən", ["oen"] = "øn", ["eun"] = "ɤn", ["aon"] = "ɔ̃",
["ian"] = "iã", ["in"] = "in", ["ion"] = "yun", ["iaon"] = "yɔ̃",
["uan"] = "uã", ["uen"] = "uən", ["on"] = "un", ["uaon"] = "uɔ̃",
["iun"] = "yn",
["aq"] = "aʔ", ["eq"] = "əʔ", ["euq"] = "ɤʔ", ["oq"] = "oʔ", ["oeq"] = "øʔ",
["iaq"] = "iaʔ", ["iq"] = "iəʔ", ["ioq"] = "yoʔ", ["ioeq"] = "yøʔ",
["uaq"] = "uaʔ", ["ueq"] = "uəʔ", ["uoq"] = "uoʔ",
["er"] = "əl", ["y"] = "z̩"
}
}
local ipa_syllabic = {
["m"] = "m̩", ["n"] = "n̩", ["ng"] = "ŋ̍",
}
local ipa_tone_contours = {
["hy"] = {
["10"] = "",
["11"] = "52", ["12"] = "31", ["15"] = "44", ["16"] = "113", ["17"] = "55", ["18"] = "12",
["211"] = "35 51", ["212"] = "33 51", ["213"] = "33 31", ["214"] = "33 31", ["215"] = "33 44", ["216"] = "33 44", ["217"] = "33 44", ["218"] = "33 33",
["21A3"] = "33 51", ["21A4"] = "33 51",
["221"] = "25 51", ["222"] = "22 51", ["223"] = "23 31", ["224"] = "23 31", ["225"] = "22 44", ["226"] = "22 44", ["227"] = "23 44", ["228"] = "23 33",
["22A3"] = "22 51",
["231"] = "33 31", ["232"] = "55 31", ["233"] = "33 31", ["234"] = "33 31", ["235"] = "31 44", ["236"] = "31 13", ["237"] = "31 44", ["238"] = "31 33",
["23A1"] = "31 13", ["23A2"] = "34 31", ["23A3"] = "33 51", ["23A4"] = "33 51",
["23B2"] = "31 13",
["241"] = "23 31", ["242"] = "55 31", ["243"] = "23 31", ["244"] = "23 31", ["245"] = "21 44", ["246"] = "21 13", ["247"] = "21 44", ["248"] = "21 33",
["24A1"] = "21 13", ["24A2"] = "21 13", ["24A3"] = "21 51", ["24A4"] = "21 51",
["251"] = "33 31", ["252"] = "31 13", ["253"] = "33 31", ["254"] = "33 31", ["255"] = "33 44", ["256"] = "33 44", ["257"] = "33 44", ["258"] = "33 33",
["25A2"] = "33 31", ["25A3"] = "33 51", ["25A4"] = "24 31",
["25B2"] = "55 31", ["25B3"] = "34 31", ["25B4"] = "22 51",
["261"] = "23 31", ["262"] = "23 31", ["263"] = "23 31", ["264"] = "23 31", ["265"] = "23 44", ["266"] = "23 44", ["267"] = "23 44", ["268"] = "23 33",
["26A1"] = "21 13", ["26A2"] = "21 13", ["26A3"] = "21 13", ["26A4"] = "21 13",
["26B2"] = "22 51", ["26B3"] = "22 51", ["26B4"] = "22 51",
["271"] = "33 31", ["272"] = "44 51", ["273"] = "33 31", ["274"] = "33 31", ["275"] = "33 44", ["276"] = "33 13", ["277"] = "33 44", ["278"] = "33 33",
["27A1"] = "33 13", ["27A2"] = "22 51",
["281"] = "22 31", ["282"] = "22 51", ["283"] = "22 31", ["284"] = "22 31", ["285"] = "22 44", ["286"] = "22 13", ["287"] = "22 44", ["288"] = "22 33",
["28A1"] = "22 13"
},
["lh"] = {
["10"] = "",
["11"] = "33", ["12"] = "22", ["13"] = "42", ["14"] = "21", ["15"] = "55", ["16"] = "13", ["17"] = "55", ["18"] = "12",
["211"] = "334 21", ["212"] = "33 42", ["213"] = "33 42", ["214"] = "33 42", ["215"] = "55 55", ["216"] = "55 55", ["217"] = "33 55", ["218"] = "33 55",
["221"] = "334 21", ["222"] = "23 42", ["223"] = "33 42", ["224"] = "33 42", ["225"] = "23 55", ["226"] = "23 55", ["227"] = "33 55", ["228"] = "33 55",
["231"] = "33 32", ["232"] = "23 53", ["233"] = "32 42", ["234"] = "32 42", ["235"] = "32 55", ["236"] = "32 12", ["237"] = "32 55", ["238"] = "32 55",
["251"] = "23 53", ["252"] = "32 53", ["253"] = "23 42", ["254"] = "33 42", ["255"] = "33 55", ["256"] = "33 55", ["257"] = "33 55", ["258"] = "33 55",
["261"] = "32 53", ["262"] = "32 53", ["263"] = "23 42", ["264"] = "23 42", ["265"] = "33 55", ["266"] = "33 55", ["267"] = "33 55", ["268"] = "33 55",
["271"] = "22 33", ["272"] = "33 33", ["273"] = "33 42", ["274"] = "33 53", ["275"] = "33 55", ["276"] = "33 13", ["277"] = "33 55", ["278"] = "33 55",
["281"] = "22 33", ["282"] = "33 33", ["283"] = "33 42", ["284"] = "33 53", ["285"] = "33 55", ["286"] = "33 13", ["287"] = "33 55", ["288"] = "33 23",
},
["tt"] = {
["10"] = "",
["11"] = "33", ["12"] = "224", ["13"] = "325", ["14"] = "214", ["15"] = "55", ["16"] = "35", ["17"] = "55", ["18"] = "23",
["211"] = "33 33", ["212"] = "55 22", ["213"] = "33 325", ["214"] = "22 334", ["215"] = "33 55", ["216"] = "33 35", ["217"] = "33 55", ["218"] = "22 23",
["221"] = "33 33", ["222"] = "35 22", ["223"] = "44 325", ["224"] = "44 334", ["225"] = "44 55", ["226"] = "33 35", ["227"] = "44 55", ["228"] = "44 23",
["231"] = "32 33", ["232"] = "32 224", ["233"] = "32 325", ["234"] = "32 214", ["235"] = "32 55", ["236"] = "32 35", ["237"] = "32 55", ["238"] = "32 23",
["241"] = "21 33", ["242"] = "21 224", ["243"] = "21 325", ["244"] = "21 214", ["245"] = "21 55", ["246"] = "21 35", ["247"] = "21 55", ["248"] = "21 23",
["251"] = "33 33", ["252"] = "33 335", ["253"] = "33 325", ["254"] = "33 214", ["255"] = "33 55", ["256"] = "33 35", ["257"] = "33 55", ["258"] = "33 23",
["261"] = "33 33", ["262"] = "33 33", ["263"] = "33 325", ["264"] = "33 214", ["265"] = "33 55", ["266"] = "33 35", ["267"] = "33 55", ["268"] = "33 23",
["271"] = "11 33", ["272"] = "11 224", ["273"] = "11 325", ["274"] = "11 214", ["275"] = "11 55", ["276"] = "11 35", ["277"] = "11 55", ["278"] = "11 23",
["281"] = "21 33", ["282"] = "21 224", ["283"] = "21 325", ["284"] = "21 214", ["285"] = "21 55", ["286"] = "21 35", ["287"] = "21 55", ["288"] = "21 23",
["1s"] = "51", ["2s"] = "51", ["3s"] = "51", ["4s"] = "51", ["5s"] = "31", ["6s"] = "31", ["7s"] = "31", ["8s"] = "31"
},
["sm"] = {
["11"] = "334", ["12"] = "223", ["13"] = "314", ["14"] = "213", ["15"] = "55", ["16"] = "55", ["17"] = "5", ["18"] = "3",
},
["wl"] = {
["10"] = "",
["11"] = "33", ["12"] = "31", ["13"] = "42", ["14"] = "31", ["15"] = "55", ["16"] = "13", ["17"] = "55", ["18"] = "22",
--mutated tones: they kinda just like happen?
["11*"] = "15", ["12*"] = "15", ["13*"] = "51", ["14*"] = "51", ["15*"] = "51", ["16*"] = "51", ["17*"] = "51", ["18*"] = "51",
["211"] = "55 31", ["212"] = "35 51", ["213"] = "33 31", ["214"] = "33 31", ["215"] = "35 55", ["216"] = "35 55", ["217"] = "33 55", ["218"] = "33 22",
["221"] = "35 51", ["222"] = "14 51", ["223"] = "13 31", ["224"] = "13 31", ["225"] = "13 55", ["226"] = "13 55", ["227"] = "13 55", ["228"] = "13 22",
["231"] = "42 33", ["232"] = "55 51", ["233"] = "42 31", ["234"] = "42 31", ["235"] = "42 55", ["236"] = "42 13", ["237"] = "42 55", ["238"] = "42 22",
["241"] = "31 33", ["242"] = "55 51", ["243"] = "31 31", ["244"] = "31 31", ["245"] = "31 55", ["246"] = "31 13", ["247"] = "31 55", ["248"] = "31 22",
["251"] = "33 33", ["252"] = "33 31", ["253"] = "33 31", ["254"] = "33 31", ["255"] = "35 55", ["256"] = "35 55", ["257"] = "33 55", ["258"] = "33 22",
["261"] = "13 33", ["262"] = "13 31", ["263"] = "13 31", ["264"] = "13 31", ["265"] = "13 55", ["266"] = "35 55", ["267"] = "13 55", ["268"] = "13 22",
["271"] = "33 33", ["272"] = "55 51", ["273"] = "33 31", ["274"] = "33 31", ["275"] = "33 55", ["276"] = "33 13", ["277"] = "33 22", ["278"] = "33 22",
["281"] = "22 33", ["282"] = "22 51", ["283"] = "22 31", ["284"] = "22 31", ["285"] = "22 55", ["286"] = "22 13", ["287"] = "22 55", ["288"] = "22 22"
-- 1/3/4/6/8 + * = no change; 2 + * > 6 + *; 5 + * > 1 + *; 7 + * > /3/ + * (can treat as 1 + *)
}
}
-- minidict ignored for now
-- all code can be ripped from the Northern module, with these exceptions:
-- Huangyan: ensure that the sandhi chain letters are allowed (like in Jinhuanese's module): 23A7 ≠ 237
-- Linhai: k, kh, g, h + i, y = c, cʰ, ɟ, ç
-- Wenling: ensure that it allows for mutation: 5cie+7cioq>cion ← this input needs to be allowed