Module:qlu-pron: Difference between revisions

No edit summary
No edit summary
Line 53: Line 53:
{"ŋgü", "gǵ"}, {"gu(" .. vowels .. ")", "ǵ%1"},
{"ŋgü", "gǵ"}, {"gu(" .. vowels .. ")", "ǵ%1"},
{"gl([iïíî]?)", "ʎ%1"}, {"gn([iïíî]?)", "ɲ%1"},
{"gl(i?)", "ʎ%1"}, {"gn(i?)", "ɲ%1"},
{"(" .. vowels .. ")([ʣʎɲ])(" .. vowels .. ")", "%1%2%2%3"},
{"(" .. vowels .. ")([ʣʎɲ])(" .. vowels .. ")", "%1%2%2%3"},
Line 92: Line 92:
})
})
for cluster, _ in pairs(clusters) do
if not match(word, "·") then
word = gsub(word, "(" .. cluster .. vowels .. "+" .. consonants .. "?)", "·%1·")
for cluster, _ in pairs(clusters) do
word = gsub(word, "(" .. cluster .. vowels .. "+" .. consonants .. "?)", "·%1·")
end
word = gsub(word, "(" .. consonants .. vowels .. "+" .. consonants .. "?)", "·%1·")
word = gsub(word, "··", "·"); word = gsub(word, "·$", ""); word = gsub(word, "^·", "")
word = gsub(word, "(" .. consonants .. ")·(" .. vowels .. ")", "·%1%2")
word = gsub(word, "·?(" .. consonants .. ")%1(" .. vowels .. "*)", "%1·%1%2")
word = gsub(word, "·(" .. consonants .. ")$", "%1"); word = gsub(word, "^(" .. consonants .. ")·", "%1")
word = gsub(word, "·(.)·", "%1·")
--word = gsub(word, "·s(" .. voiceless .. ")", "s·%1")
--word = gsub(word, "(" .. consonants .. ")s·(" .. voiceless .. ")", "%1·s%2")
word = gsub(word, "ï(" .. vowels .. ")", "i·%1")
word = gsub(word, "·?d([ʤʣ])", "d·%1"); word = gsub(word, "·tʦ", "t·ʦ")
word = gsub(word, "·?ŋg", "ŋ·g"); word = gsub(word, "··", "·")
end
end
word = gsub(word, "(" .. consonants .. vowels .. "+" .. consonants .. "?)", "·%1·")
word = gsub(word, "··", "·"); word = gsub(word, "·$", ""); word = gsub(word, "^·", "")
word = gsub(word, "(" .. consonants .. ")·(" .. vowels .. ")", "·%1%2")
word = gsub(word, "·?(" .. consonants .. ")%1(" .. vowels .. "*)", "%1·%1%2")
word = gsub(word, "·(" .. consonants .. ")$", "%1"); word = gsub(word, "^(" .. consonants .. ")·", "%1")
word = gsub(word, "·(.)·", "%1·")
--word = gsub(word, "·s(" .. voiceless .. ")", "s·%1")
--word = gsub(word, "(" .. consonants .. ")s·(" .. voiceless .. ")", "%1·s%2")
word = gsub(word, "ï(" .. vowels .. ")", "i·%1")
word = gsub(word, "·?d([ʤʣ])", "d·%1"); word = gsub(word, "·tʦ", "t·ʦ")
word = gsub(word, "·?ŋg", "ŋ·g"); word = gsub(word, "··", "·")
local syllables = split(word, "·");
local syllables = split(word, "·");