Module:pine-pron: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 20: Line 20:
["y"] = "ʏ", ["i"] = "ɪ", ["e"] = "ɛ",
["y"] = "ʏ", ["i"] = "ɪ", ["e"] = "ɛ",
["u"] = "ʊ", ["o"] = "ɔ", ["a"] = "ɑ",
["u"] = "ʊ", ["o"] = "ɔ", ["a"] = "ɑ",
["ů"] = "œ"
}
}


Line 44: Line 45:
end
end
end
end


local export = {}
local export = {}


local word_internal_clusters = require("Module:table").listToSet({
-- exportable to be used by [[Module:pine-noun]]
"m·pp", "m·p", "m·b", "n·tt", "n·t", "n·d", "n·dv",
"n·ts", "n·tsv", "n·tsġ", "n·tsġv", "n·ttṡ", "n·tṡ",
"n·tṡv", "n·ƛƛ", "n·ƛ", "n·ƛv", "n·kk", "n·kkv", "n·k", "n·kv",
"p·ṃ",
})
 
--[[m ṃ p b v
t d ḍ s ṡ ts tṡ r ṛ l ḷ ƛ lį ḷį n ṇ nį ṇį dn ng kn
k g ġ h hį ḥ kṇ tġ]]
 
function export.syllabify_from_spelling(term)
function export.syllabify_from_spelling(term)
local vowels = "[" .. vowels_spelling .. "]"
local vowels = "[" .. vowels_spelling .. "]"
Line 82: Line 72:
function export.crux(term)
function export.crux(term)
term = export.syllabify_from_spelling(term)
term = export.syllabify_from_spelling(term)
local debug_syllables = false
if debug_syllables then
return term
end
-- default to short lax vowels
-- default to short lax vowels
term = gsub(term, "[aeiouy]", laxen); term = gsub(term, "ů", "œ")
term = gsub(term, "[aeiouyů]", laxen)
-- long vowels
-- long vowels
term = gsub(term, "([ảẻỉỏủỷ])", long_vowels)
term = gsub(term, "([ảẻỉỏủỷ])", long_vowels)