This module will transliterate Laz language text per WT:LZZ TR.
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:lzz-translit/testcases.
tr(text, lang, sc)
text
written in the script specified by the code sc
, and language specified by the code lang
.nil
.local m_str_utils = require("Module:string utilities")
local codepoint = m_str_utils.codepoint
local gsub = m_str_utils.gsub
local u = m_str_utils.char
local upper = m_str_utils.upper
local export = {}
local tt = {
="a", ="b", ="g", ="d", ="e", ="v", ="z",
="t", ="i", ="ǩ", ="l", ="m", ="n", ="y", ="o",
="p̌", ="j", ="r", ="s", ="ť", ="u", ="p",
="k", ="ğ", ="q", ="ş", ="ç", ="ʒ",
="ż", ="ǯ", ="ç̌", ="x", ="c", ="h", ="f",
};
function export.tr(text, lang, sc)
-- Transliterate uppercase characters from the Georgian Extended block as
-- the uppercase version of the transliteration of the lowercase characters
-- from the Georgian block.
-- U+10D0: start of Georgian block
-- U+1C90: start of Georgian Extended block
text = gsub(
text,
'',
function (char)
local translit = tt
return translit and upper(translit)
end)
text = gsub(text, '.', tt)
return text
end
return export