Module:anui-pron: Difference between revisions

m
no edit summary
mNo edit summary
mNo edit summary
 
(4 intermediate revisions by the same user not shown)
Line 32: Line 32:
local oral = "[aeiouàèìòù]"
local oral = "[aeiouàèìòù]"


local sonorant = "[rmnɳɖɲlŋ]"
local sonorant = "[rmnɳɖɲlŋᴟ]"
local click = "ǀǃʘǂǁ"
local click = "ǀǃʘǂǁ"


Line 45: Line 45:
local rules = {
local rules = {
{"ʇ", "ǀ"}, {"õ", "ṍ"}, {"o", "ɔ"}, {"ṭ", "ʈ"}, {"j", "ɟ"}, {"ñ", "ɲ"}, {"ch", "tʃ"}, {"ʈr", "ʈʂ"}, {"ṇ", "ɳ"}, {"ṣ", "ʂ"},  {"š", "ʃ"},
{"ʇ", "ǀ"}, {"õ", "ṍ"}, {"o", "ɔ"}, {"ṭ", "ʈ"}, {"j", "ɟ"}, {"ñ", "ɲ"}, {"ch", "tʃ"}, {"ʈr", "ʈʂ"}, {"ṇ", "ɳ"}, {"ṣ", "ʂ"},  {"š", "ʃ"},
{"([" .. front_vowel .. "])", "s"},
{"([" .. front_vowel .. "])", "s%1"},
{"k([" .. front_vowel .. "])", "kx%1"}, {"k([" .. back_vowel .. "])", "q%1"},
{"k([" .. front_vowel .. "])", "kx%1"}, {"k([" .. back_vowel .. "])", "q%1"},
Line 52: Line 52:
{"([" .. click .. "])(" .. glottalic .. ")", "%1ˀ%2"}, -- ꞰV̰ = ꞰˀV̰
{"([" .. click .. "])(" .. glottalic .. ")", "%1ˀ%2"}, -- ꞰV̰ = ꞰˀV̰
-- tell apart between regular and syllabic <m>
-- tell apart between regular and syllabic <m>
{"([uùm]ʼ?)m", "%1ᴍ"}, {"m(ʼᴍ)", "ᴍ%1"}, {"(" .. oral .. ")m", "%1ᴍ"}, {"(" .. oral .. ")ᴍ(" .. vowel .. ")", "%1m%2"},
{"(" .. oral .. ")m(" .. vowel .. ")", "%1ᴟ%2"}, {"([uùm]ʼ?)m", "%1ᴍ"}, {"m(ʼᴍ)", "ᴍ%1"}, {"(" .. oral .. ")m", "%1ᴍ"},
{"(" .. sonorant .. ")(" .. glottalic .. ")", "%1" .. CREAKY .. "%2"}, -- MV̰ > M̰V̰  
{"(" .. sonorant .. ")(" .. glottalic .. ")", "%1" .. CREAKY .. "%2"}, -- MV̰ > M̰V̰  
{"m(" .. vowel .. ")", "mᵇ%1"},  {"ŋ(" .. vowel .. ")", "ŋᶢ%1"},  {"ɳ(" .. vowel .. ")", "ᶯɖ%1"},
{"[mᴟ](" .. vowel .. ")", "ᴟᵇ%1"},  {"ŋ(" .. vowel .. ")", "ŋᶢ%1"},  {"ɳ(" .. vowel .. ")", "ᶯɖ%1"},
{"(" .. vowel .. ")(".. vowel .. ")", function(s1, s2) return same(s1, s2) and s1 .. "ː˧" or s1 .. s2 .. "˧" end},
{"(" .. vowel .. ")(".. vowel .. ")", function(s1, s2) return same(s1, s2) and s1 .. "ː˧" or s1 .. s2 .. "˧" end},
{"(" .. vowel .. ")(" .. nasalized .. ")",
{"(" .. vowel .. ")(" .. nasalized .. ")",
Line 93: Line 93:
{"([ʈtk])([ʂʃɬxs])", "%1" .. AFFR .. "%2"},
{"([ʈtk])([ʂʃɬxs])", "%1" .. AFFR .. "%2"}, {"ᴟ", "m"},
{"s", "s" .. DENTAL}, {"ṯ", "t" .. INTERDENTAL .. AFFR .. "s" .. DENTAL}, {"ṉ", "n" .. INTERDENTAL .. VOICELESS},
{"s", "s" .. DENTAL}, {"ṯ", "t" .. INTERDENTAL .. AFFR .. "s" .. DENTAL}, {"ṉ", "n" .. INTERDENTAL .. VOICELESS},
{"([" .. click .. "])([qχʁʛ])", "%1" .. AFFR .. "%2"}, {"u" .. NASAL, "m" .. SYLLABIC}, {"ɔ" .. CREAKY .. "ɔ" .. CREAKY, "ɔ" .. CREAKY .. "ː"},
{"([" .. click .. "])([qχʁʛ])", "%1" .. AFFR .. "%2"}, {"u" .. NASAL, "m" .. SYLLABIC}, {"ɔ" .. CREAKY .. "ɔ" .. CREAKY, "ɔ" .. CREAKY .. "ː"},
Line 114: Line 114:
local bits = {}
local bits = {}
for _, item in ipairs(items) do
for _, item in ipairs(items) do
local bit = "<span style=\"font-size:110%;font-family:Gentium,'DejaVu Sans','Segoe UI',sans-serif>" .. item.pron .. "</span>"
local bit = "<span style=\"font-size:110%;font-family:'Gentium','DejaVu Sans','Segoe UI',sans-serif>" .. item.pron .. "</span>"
table.insert(bits, bit)
table.insert(bits, bit)
end
end
Line 121: Line 121:


function format_IPA(items)
function format_IPA(items)
return "[[w:IPA chart|IPA]]<sup>([[IPA for e|key]])</sup>:&#32;" .. IPA_span(items)
return "[[w:IPA chart|IPA]]<sup>([[IPA for ǂA Ṇṵĩ|key]])</sup>:&#32;" .. IPA_span(items)
end
end