45,581
edits
No edit summary |
No edit summary |
||
Line 22: | Line 22: | ||
local oral_to_nasal = {["a"] = "ã", ["i"] = "ĩ", ["ɔ"] = "ṍ", ["u"] = "ᴍ"} | local oral_to_nasal = {["a"] = "ã", ["i"] = "ĩ", ["ɔ"] = "ṍ", ["u"] = "ᴍ"} | ||
local nasal_vowel = "[ãĩṍᴍ]" | local nasal_vowel = "[ãĩṍᴍ]" | ||
local function same(foo, bar) | |||
foo, bar = mw.ustring.toNFD(foo), mw.ustring.toNFD(bar) | |||
foo, bar = match(foo, "^."), match(bar, "^.") | |||
return foo == bar and true or false | |||
end | |||
local export = {} | local export = {} | ||
Line 29: | Line 35: | ||
{"([ḛḭṵ])", {["ḛ"] = "è", ["ḭ"] = "ì", ["ṵ"] = "ù"}}, {"([ao])" .. TILDEBELOW, mw.ustring.toNFC("%1" .. GRAVE)}, | {"([ḛḭṵ])", {["ḛ"] = "è", ["ḭ"] = "ì", ["ṵ"] = "ù"}}, {"([ao])" .. TILDEBELOW, mw.ustring.toNFC("%1" .. GRAVE)}, | ||
{"([uùm]ʼ?)m", "%1ᴍ"}, {"m(ʼᴍ)", "ᴍ%1"}, -- tell apart between regular and syllabic <m> | {"([uùm]ʼ?)m", "%1ᴍ"}, {"m(ʼᴍ)", "ᴍ%1"}, -- tell apart between regular and syllabic <m> | ||
{vowel .. | {"(" .. vowel .. ")(".. vowel .. ")", function(s1, s2) return same(s1, s2) and s1 .. "ː˧" or s1 .. s2 .. "˧" end}, | ||
{"(" .. vowel .. ")(" .. nasal_vowel .. ")", "%1" .. NASAL .. "%2ː" .. HIGHFALL}, | {"(" .. vowel .. ")(" .. nasal_vowel .. ")", "%1" .. NASAL .. "%2ː" .. HIGHFALL}, | ||
--{["aa"] = "aː˧", ["ee"] = "eː˧", ["ii"] = "iː˧", ["ɔɔ"] = "ɔː˧", ["uu"] = "uː˧",} | |||
} | } | ||