local export = {}
local tt = {
="ü",='Ü', ="t",='T', ="r",='R', ="f",='F', ="ö",='Ö',
="yu",='Yu', ="ş",='Ş', ="ʹ",='ʹ', ="ʺ",='ʺ', ="n",='N',
="p",='P', ="y",='Y', ="l",='L', ="z",='Z', ="e",='E',
="g",='G', ="b",='B', ="u",='U', ="s",='S', ="h",='H',
="ç",='Ç', ="şç",='Şç', ="ya",='Ya', ="ı",='I', ="e",='E',
="m",='M', ="o",='O', ="i",='İ', ="yo",='Yo', ="j",='J',
="k",='K', ="d",='D', ="v",='V', ="ts",='Ts', ="a",='A',
="ŋ",='Ŋ'
};
function export.tr(text, lang, sc)
if sc == "Arab" then
return nil
end
text = mw.ustring.gsub(
text,
"()()",
function(n,k)
return n .. ( k == 'к' and 'k' or 'K' )
end
)
text = mw.ustring.gsub(
text,
"()()()",
function(n,k1,k2)
return n .. k1 .. ( k2 == 'к' and 'k' or 'K' )
end
)
text = mw.ustring.gsub(
text,
"()()",
function(k,c)
return ( k == 'к' and 'k' or 'K' ) .. c
end
)
text = mw.ustring.gsub(
text,
"()()",
function(c,v)
return ( c == 'к' and 'q' or 'Q' ) .. v
end
)
text = mw.ustring.gsub(
text,
"()()",
function(v,c)
return v .. ( c == 'к' and 'q' or 'Q' )
end
)
text = mw.ustring.gsub(
text,
"()()()",
function(v,c,q)
return v .. c .. ( q == 'к' and 'q' or 'Q' )
end
)
text = mw.ustring.gsub(
text,
"(?)()",
function(a,e)
return a .. ( e == 'е' and 'ye' or 'Ye' )
end
)
:gsub("^Е",'Ye')
:gsub("^е",'ye');
return (mw.ustring.gsub(text, '.', tt))
end
return export