Module:pine-pron: Difference between revisions
No edit summary |
No edit summary |
||
| Line 18: | Line 18: | ||
local long_vowels = { | local long_vowels = { | ||
["a" | ["a"] = "æː", ["e"] = "eː", ["i"] = "iː", | ||
["o" | ["o"] = "oː", ["u"] = "uː", ["y"] = "yː", | ||
["ả"] = "æː", ["ẻ"] = "eː", ["ỉ"] = "iː", | |||
["ỏ"] = "oː", ["ủ"] = "uː", ["ỷ"] = "yː", | |||
} | } | ||
| Line 29: | Line 31: | ||
-- long vowels | -- long vowels | ||
local nfd_term = mw.ustring.toNFD(term) | local nfd_term = mw.ustring.toNFD(term) | ||
nfd_term = nfd_term:gsub("[aeiouy]" .. c.hook, long_vowels) | nfd_term = nfd_term:gsub("([aeiouy])" .. c.hook, function(v) | ||
return long_vowels[v] or long_vowels[v .. c.hook] | |||
end) | |||
term = mw.ustring.toNFC(nfd_term) | term = mw.ustring.toNFC(nfd_term) | ||
term = term:gsub("ɔɑ", "ɑː"); term = term:gsub("ɛœ", "øː") | term = term:gsub("ɔɑ", "ɑː"); term = term:gsub("ɛœ", "øː") | ||