模組:Mnc-translit
外观
這個模組將轉寫滿語的文字。
最好不要直接從模板或其他模組呼叫此模組;要從模板中使用它,
請使用{{xlit}}
;
要從模組中使用它,請使用Module:languages#Language:transliterate。
關於測試用例,請見Module:Mnc-translit/testcases。
函式
tr(text, lang, sc)
- Transliterates a given piece of
text
written in the script specified by the codesc
, and language specified by the codelang
. - When the transliteration fails, returns
nil
.
local export = {}
local twoChars = {
["ᡮᡟ"] = "ts",
["ᠰᡟ"] = "sy",
["ᡱᡳ"] = "c'y",
["ᡷᡳ"] = "jy"
}
local oneChar = {
["ᠠ"] = "a",
["ᡝ"] = "e",
["ᡳ"] = "i",
["ᡟ"] = "y",
["ᠣ"] = "o",
["ᡠ"] = "u",
["ᡡ"] = "ū",
["ᠨ"] = "n",
["ᠩ"] = "ng",
["ᡴ"] = "k",
["ᡤ"] = "g",
["ᡥ"] = "h",
["ᠪ"] = "b",
["ᡦ"] = "p",
["ᠰ"] = "s",
["ᡧ"] = "š",
["ᡨ"] = "t",
["ᡩ"] = "d",
["ᠯ"] = "l",
["ᠮ"] = "m",
["ᠴ"] = "c",
["ᠵ"] = "j",
["ᠶ"] = "y",
["ᡵ"] = "r",
["ᡶ"] = "f",
["ᠸ"] = "w",
["ᠺ"] = "k'",
["ᡬ"] = "g'",
["ᡭ"] = "h'",
["ᡮ"] = "ts'",
["ᡯ"] = "dz",
["ᡰ"] = "ž",
["ᡱ"] = "c'",
["ᡷ"] = "j",
["᠈"] = ",",
["᠉"] = ".",
[" "] = "-",
["᠊"] = "-",
["᠋"] = "",
["᠌"] = "",
["᠍"] = "",
["᠏"] = "",
[""] = "'"
}
function export.tr(text, lang, sc)
if sc ~= "mnc-Mong" then
return nil
end
for digraph, replacement in pairs(twoChars) do
text = string.gsub(text, digraph, replacement)
end
text = mw.ustring.gsub(text, ".", oneChar)
return text
end
return export