Module:hort-translit
- The following documentation is generated by Module:documentation/functions/translit. [edit]
- Useful links: subpage list • links • transclusions • testcases • sandbox
This module will transliterate Hortannic language text.
The module should preferably not be called directly from templates or other modules.
To use it from a template, use {{xlit}}.
Within a module, use Module:languages#Language:transliterate.
For testcases, see Module:hort-translit/testcases.
Functions
tr(text, lang, sc)- Transliterates a given piece of
textwritten in the script specified by the codesc, and language specified by the codelang. - When the transliteration fails, returns
nil.
local export = {}
local tt = {}
tt["hort-Goth"] = {
{"𐌰", "a"},
{"𐌱", "b"},
{"𐌳", "d"},
{"𐌴", "e"},
{"𐍆", "f"},
{"𐌲", "g"},
{"𐌷", "h"},
{"𐌹", "i"},
{"𐌾", "j"},
{"𐌺", "k"},
{"𐌻", "l"},
{"𐌼", "m"},
{"𐌽", "n"},
{"𐍉", "o"},
{"𐍀", "p"},
{"𐍂", "r"},
{"𐍃", "s"},
{"𐍄", "t"},
{"𐌿", "u"},
{"𐍅", "w"},
{"𐌶", "z"},
}
tt["Latn"] = require("Module:table").invert(tt["hort-Goth"])
function export.tr(text, lang, sc)
text = mw.ustring.lower(text)
for _, rule in ipairs(tt[sc]) do
text = mw.ustring.gsub(text, rule[1], rule[2])
end
return text
end
function export.template_tr(frame)
local args = require("Module:parameters").process(frame.args, {
[1] = {required = true}, -- text
[2] = {required = true, default = "hort"},
["sc"] = {default = require("Module:scripts").findBestScriptWithoutLang(frame.args[1])}
})
local tr = export.tr(args[1], "hort", args.sc)
return tr or "-"
end
return export