Module:siwa-pron: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 69: Line 69:


local function detect_dialect(term)
local function detect_dialect(term)
if find(term, "̊") or find(term, "ṡ$") or find(term, "rg") or find(term, "bġ") then
return "e"
return false, false
elseif find(term, "[ṁṅłƛ]") then
return "w"
end
end
end


Line 175: Line 177:
}
}


function export.crux(term, e, w)
function export.crux(term, a, e, w)
term=mw.ustring.lower(term)
term=mw.ustring.lower(term)
term=export.morphemes(term)
term=export.morphemes(term)
Line 248: Line 250:
local ipa = "* "
local ipa = "* "
if args.a then
if detect_dialect(term) == "e" then
ipa = ipa .. line_format(export.crux(term, false, true, false), {'Eastern'})
table.insert(categories, "Eastern Siwa lemmas")
table.insert(categories, "Siwa lemmas with Eastern IPA pronunciation")
elseif detect_dialect(term) == "w" then
ipa = ipa .. line_format(export.crux(term, false, false, true), {'Western'})
table.insert(categories, "Western Siwa lemmas")
table.insert(categories, "Siwa lemmas with Western IPA pronunciation")
elseif args.a then
ipa = ipa .. line_format(export.crux(term, detect_dialect(term)), {'Aingo'})
ipa = ipa .. line_format(export.crux(term, detect_dialect(term)), {'Aingo'})
end
end