Module:mtev-pronunc: Difference between revisions

Melinoë (talk | contribs)
Created page with "local export = {} local u = require("Module:string/char") local gsub = mw.ustring.gsub local match = mw.ustring.match local ACUTE = u(0x0301) local COARTIC = u(0x0361) local DENTAL = u(0x032A) local FLAP = u(0x0306) local NORELEASE = u(0x031A) local SYLLABIC = u(0x0329) local NASAL = u(0x0303) local m_IPA = require("Module:IPA") local lang = require("Module:languages").getByCode("sa") local m_a = require("Module:accent qualifier") local consonants..."
 
Melinoë (talk | contribs)
No edit summary
Line 14: Line 14:


local m_IPA = require("Module:IPA")
local m_IPA = require("Module:IPA")
local lang = require("Module:languages").getByCode("sa")
local lang = require("Module:languages").getByCode("mtev")
local m_a = require("Module:accent qualifier")
local m_a = require("Module:accent qualifier")


Line 70: Line 70:


local vowel_list = {
local vowel_list = {
["ɐ"] = true, ["ɑː"] = true, ["i"] = true, ["iː"] = true, ["u"] = true, ["uː"] = true, ["r̩"] = true, ["r̩ː"] = true,
["ɑ"] = true, ["ɑː"] = true, ["i"] = true, ["iː"] = true, ["u"] = true,
["l̩"] = true, ["l̩ː"] = true, ["ɐj"] = true, ["ɑːj"] = true, ["ɐw"] = true, ["ɑːw"] = true,  
[""] = true, ["e"] = true, [""] = true, ["o"] = true, [""] = true,  
}
}


Line 362: Line 362:
text = abhinidhana_phonemic(text)
text = abhinidhana_phonemic(text)


-- Rigvedic Sanskrit
-- Classical
local rig_phnm = text
rig_phnm = gsub(rig_phnm, "^ˈ", "")
rig_phnm = gsub(rig_phnm, "ˈ", ".")
rig_phnm = gsub(rig_phnm, " %.", " ")
local rig_phnt = abhinidhana_phonetic(rig_phnm)
-- visarga alternation
rig_phnt = gsub(rig_phnt, "h([ %.ˈ]?)([p])", "ɸ%1%2")
rig_phnt = gsub(rig_phnt, "h([ %.ˈ]?)([k])", "x%1%2")
-- nasalized semivowels
rig_phnt = gsub(
rig_phnt,
"([ŋɲnɳm])(" .. DENTAL .. "?)([ %.ˈ]?)([lɭjʋ])([" .. DENTAL .. FLAP .. "]?)(ʱ?)",
"%4%5" .. NASAL .. "%3%4%5%6"
)
dialects['rig'] = {
label = "Vedic",
phonemic = rig_phnm,
phonetic = rig_phnt,
}
-- Classical Sanskrit
local cla_phnm = text
local cla_phnm = text
cla_phnm = gsub(cla_phnm, "[éóíúŕĺ" .. ACUTE .. "]", {
cla_phnm = gsub(cla_phnm, "[éóíúŕĺ" .. ACUTE .. "]", {
Line 427: Line 404:
dialects['cla'] = {
dialects['cla'] = {
label = "Classical Sanskrit",
label = "Middle Tevvic",
phonemic = cla_phnm,
phonemic = cla_phnm,
phonetic = cla_phnt,
phonetic = cla_phnt,