Module:qlu-pron: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 193: Line 193:
if not match(word, "·") then
if not match(word, "·") then
for cluster, _ in pairs(clusters) do
for cluster, _ in pairs(clusters) do
if match(sub(word, 2), "^" .. consonants .. "+") == cluster then
word = gsub(word, "^(" .. vowel .. ")", "%1·")
end
word = gsub(word, "(" .. cluster .. vowels .. "+" .. consonants .. "?)", "·%1·")
word = gsub(word, "(" .. cluster .. vowels .. "+" .. consonants .. "?)", "·%1·")
end
end
word = gsub(word, "(" .. consonants .. "+)·(" .. consonants .. "+)", function(c1,c2) return cluster(c1 .. c2) and "·" .. c1 .. c2 or c1 .. "·" .. c2 end)
word = gsub(word, "(" .. consonants .. vowels .. "+" .. consonants .. "?)", "·%1·")
word = gsub(word, "(" .. consonants .. vowels .. "+" .. consonants .. "?)", "·%1·")
word = gsub(word, "··", "·"); word = gsub(word, "·$", ""); word = gsub(word, "^·", "")
word = gsub(word, "··", "·"); word = gsub(word, "·$", ""); word = gsub(word, "^·", "")