local export = {}
local tt = {
= "a",
= "i",
= "u",
= "k",
= "ku",
= "g",
= "gu",
= "x",
= "c",
= "j",
= "ji",
= "t",
= "tu",
= "d",
= "di",
= "du",
= "θ",
= "p",
= "b",
= "f",
= "n",
= "nu",
= "m",
= "mi",
= "mu",
= "y",
= "v",
= "vi",
= "r",
= "ru",
= "l",
= "s",
= "z",
= "š",
= "ç",
= "h",
= "AM", -- Auramazdā
= "AM", -- Auramazdā
= "AMha", -- Auramazdāha
= "XŠ", -- xšāyathiya
= "DH", -- dahyāuš
= "DH", -- dahyāuš
= "BG", -- baga
= "BU", -- būmiš
= " ", --word devider
= "-",
}
local numbers = {
= 1,
= 2,
= 10,
= 20,
= 100,
}
function export.convert_numbers(numeric_str)
local total = 0
for c in mw.ustring.gmatch(numeric_str, ".") do
total = total + numbers
end
return total
end
function export.tr(text, lang, sc)
-- If the script is not Xpeo, do not transliterate
if sc ~= "Xpeo" then
return
end
local t = {}
local preceding_num = false
-- Transliterate characters
text = mw.ustring.gsub(text,
".",
function(c)
if mw.ustring.match(c, "") then
if preceding_num then
t = t + numbers
else
t = numbers
end
preceding_num = true
else
preceding_num = false
t = tt
end
end)
text = mw.ustring.gsub(table.concat(t, "-"), "%-?(%s)%-?", "%1")
text = mw.ustring.gsub(mw.ustring.gsub(text, "^%-", ""), "%-$", "")
return text
end
return export