Module:uga-translit
Documentation for this module may be created at Module:uga-translit/doc
local export = {}
local tt = {
["π"] = "αΊ£", ["π"] = "b", ["π"] = "g", ["π"] = "αΈ«", ["π"] = "d",
["π
"] = "h", ["π"] = "w", ["π"] = "z", ["π"] = "αΈ₯", ["π"] = "αΉ",
["π"] = "y", ["π"] = "k", ["π"] = "Ε‘", ["π"] = "l", ["π"] = "m",
["π"] = "αΈ", ["π"] = "n", ["π"] = "αΊ", ["π"] = "s", ["π"] = "ΚΏ",
["π"] = "p", ["π"] = "αΉ£", ["π"] = "q", ["π"] = "r", ["π"] = "αΉ―",
["π"] = "Δ‘", ["π"] = "t", ["π"] = "α»",["π"] = "α»§", ["π"] = "sΜ",
["π"] = " Β· ", -- word divider
}
local reverse = {
["αΊ£"] = "π", ["b"] = "π", ["g"] = "π", ["αΈ«"] = "π", ["d"] = "π",
["h"] = "π
", ["w"] = "π", ["z"] = "π", ["αΈ₯"] = "π", ["αΉ"] = "π",
["y"] = "π", ["k"] = "π", ["Ε‘"] = "π", ["l"] = "π", ["m"] = "π",
["αΈ"] = "π", ["n"] = "π", ["αΊ"] = "π", ["s"] = "π", ["ΚΏ"] = "π",
["p"] = "π", ["αΉ£"] = "π", ["q"] = "π", ["r"] = "π", ["αΉ―"] = "π",
["Δ‘"] = "π", ["t"] = "π", ["α»"] = "π",["α»§"] = "π", ["Ε"] = "π",
["Β·"] = "π", -- word divider
}
local get_glottal = {
["a"] = "αΊ£",
["i"] = "α»",
["u"] = "α»§",
}
local aliases = {
["a"] = "αΊ£",
["i"] = "α»",
["u"] = "α»§",
["ΞΈ"] = "αΉ―",
["Γ°"] = "αΈ",
["x"] = "αΈ«",
["αΊ"] = "αΈ«",
["Ι£"] = "Δ‘",
["αΈ‘"] = "Δ‘",
["Δ§"] = "αΈ₯",
["αΈ³"] = "q",
["αΈ"] = "αΊ",
}
function export.tr(text, lang, sc)
text = mw.ustring.gsub(text, ".", tt)
return text
end
function export.reverse(text)
if type(text) == "table" then
text = text.args[1]
end
text = mw.ustring.gsub(text, " *[.Β·] *", "Β·")
text = mw.ustring.gsub(text, "[ΚΏΛΚβ]", "ΚΏ")
text = mw.ustring.gsub(text, "[ΚΎΛΚβ]", "ΚΎ")
text = mw.ustring.gsub(text, "ΚΎ([aiu])", get_glottal)
text = mw.ustring.gsub(text, "s[Μ2β]", "Ε")
text = mw.ustring.gsub(text, "s<sub>2</sub>", "Ε")
text = mw.ustring.gsub(text, ".", reverse)
return text
end
return export