local export = {}
local letters = {}
local digraphs = {}
local double_grave = mw.ustring.char(0x30F)
letters = {
='A', ='a',
='B', ='b',
='V', ='v',
='G', ='g',
='D', ='d',
='E', ='e', ='E', ='e',
='Ž', ='ž',
='Dz', ='dz', ='Dz', ='dz',
='Z', ='z', ='Z', ='z',
='I', ='i', ='I', ='i', ='I', ='i',
='Đ', ='đ',
='K', ='k',
='L', ='l',
='M', ='m',
='N', ='n',
='O', ='o', ='O', ='o', ='Otŭ', ='otŭ', ='O', ='o', ='O', ='o', ='O', ='o', ='o',
='P', ='p',
='R', ='r',
='S', ='s',
='T', ='t',
='U', ='u', ='U', ='u', ='U', ='u',
='F', ='f',
='X', ='x',
='C', ='c',
='Č', ='č',
='Š', ='š',
-- For Щ see below
='Ŭ', ='ŭ',
='Y', ='y', ='Y', ='y',
='Ĭ', ='ĭ',
='Ě', ='ě',
='Ju', ='ju',
='Ja', ='ja', ='Ja', ='ja',
='Je', ='je',
='Ę', ='ę',
='Ję', ='ję',
='Ǫ', ='ǫ',
='Jǫ', ='jǫ',
='Jě', ='jě',
='Ks', ='ks',
='Ps', ='ps',
='Θ', ='θ',
='Ü', ='ü', ='Ü' .. double_grave, ='ü' .. double_grave,
}
digraphs = {
"]="U", ="u",
}
letters = {
='A', ='a',
='B', ='b',
='V', ='v',
='G', ='g',
='D', ='d',
='E', ='e',
='Ž', ='ž',
='Dz', ='dz',
='Z', ='z',
='I', ='i', ='I', ='i', ='I', ='i',
='Đ', ='đ',
='K', ='k',
='L', ='l',
='M', ='m',
='N', ='n',
='O', ='o', ='O', ='o',
='P', ='p',
='R', ='r',
='S', ='s',
='T', ='t',
='U', ='u',
='F', ='f',
='X', ='x', ='X', ='x',
='C', ='c',
='Č', ='č',
='Š', ='š',
-- For Ⱋ see below
='Ŭ', ='ŭ',
='Ĭ', ='ĭ',
='Ě', ='ě',
='Ju', ='ju',
='Ę', ='ę',
='Ję', ='ję',
='Ǫ', ='ǫ',
='Jǫ', ='jǫ',
='Θ', ='θ',
='Ü', ='ü',
}
digraphs = {
"]="Y", "]="y",
}
function export.tr(text, lang, sc)
if not sc then
sc = require("Modül:alfabeler").bulEnIyiAlfabe(text,
require("Modül:diller").getirKodaGore(lang)):getirKod()
end
-- Щ was pronounced differently in Old East Slavic
if lang == "orv" then
letters='Šč'
letters='šč'
letters='Šč'
letters='šč'
else
letters='Št'
letters='št'
letters='Št'
letters='št'
end
-- Transliterate the kamora as prime
text = string.gsub(text, "\210\132", "ʹ")
if sc == "Cyrs" or sc == "Glag" then
for key, repl in pairs(digraphs) do
text = mw.ustring.gsub(text, key, repl)
end
-- pattern for one non-ASCII character
text = string.gsub(text, '+', letters)
else
-- error("This module can only transliterate Old Cyrillic (Cyrs) and Glagolitic (Glag).")
end
return text
end
return export