Module:lyti-translit: Difference between revisions

From Linguifex
Jump to navigation Jump to search
No edit summary
No edit summary
Line 11: Line 11:
["Γϝ"]='Nw', ["γϝ"]='nw',
["Γϝ"]='Nw', ["γϝ"]='nw',
["Γκ"]='Nk', ["γκ"]='nk',
["Γκ"]='Nk', ["γκ"]='nk',
["Γχ"]='Nch', ["γχ"]='nch',
["Γξ"]='Nx', ["γξ"]='nx',
["Γ"]='G', ["γ"]='g',
["Γ"]='G', ["γ"]='g',
["Ϝ"]='W', ["ϝ"]='w',
["Ϝ"]='W', ["ϝ"]='w',

Revision as of 18:32, 25 March 2025



local export = {}
 
local tt = {
	["Αυ"]='Au', ["αυ"]='au',
	["Ευ"]='Eu', ["ευ"]='eu',
	["Ου"]='Ou', ["ου"]='ou',
	["Ωυ"]='Ōu', ["ωυ"]='ōu',
	["Α"]='A', ["α"]='a',
	["Β"]='V', ["β"]='v',
	["Γγ"]='Ng', ["γγ"]='ng',
	["Γϝ"]='Nw', ["γϝ"]='nw',
	["Γκ"]='Nk', ["γκ"]='nk',
	["Γχ"]='Nch', ["γχ"]='nch',
	["Γξ"]='Nx', ["γξ"]='nx',
	["Γ"]='G', ["γ"]='g',
	["Ϝ"]='W', ["ϝ"]='w',
	["Δ"]='D', ["δ"]='d',
	["Ε"]='E', ["ε"]='e',
	["Ζ"]='Z', ["ζ"]='z',
	["Ι"]='I', ["ι"]='i',
	["Κ"]='K', ["κ"]='k',
	["Λ"]='L', ["λ"]='l',
	["Μ"]='M', ["μ"]='m',
	["Ν"]='N', ["ν"]='n',
	["Ο"]='O', ["ο"]='o',
	["Π"]='P', ["π"]='p',
	["Ρ"]='R', ["ρ"]='r',
	["Σ"]='S', ["σ"]='s', ["ς"]='s',
	["Ͳ"]='Ss', ["Ͳ"]='ss',
	["Τ"]='T', ["τ"]='t',
	["Υ"]='Y', ["υ"]='y',
	["Φ"]='F', ["φ"]='f',
	["Θ"]='Th', ["θ"]='th',
	["Χ"]='Ch', ["χ"]='ch',
	["Ξ"]='X', ["ξ"]='x',
	["Η"]='Ē', ["η"]='ē',

	["А"]='A', ["а"]='a',
	["Б"]='B', ["б"]='b',
	["Гв"]='W', ["гв"]='w',
	["Ђв"]='Dźw', ["ђв"]='dźw',
	["Јв"]='Jw', ["јв"]='jw',
	["Нв"]='Ngw', ["нв"]='ngw',
	["Ћв"]='Ćw', ["ћв"]='ćw',
	["В"]='V', ["в"]='v',
	["Г"]='G', ["г"]='g',
	["Д"]='D', ["д"]='d',
	["Ђ"]='Dź', ["ђ"]='dź',
	["Е"]='E', ["е"]='e',
	["Ж"]='Ź', ["ж"]='ź',
	["З"]='Z', ["з"]='z',
	["И"]='I', ["и"]='i',
	["Ј"]='J', ["ј"]='j',
	["К"]='K', ["к"]='k',
	["Л"]='L', ["л"]='l',
	["Љ"]='Lj', ["љ"]='lj',
	["М"]='M', ["м"]='m',
	["Н"]='N', ["н"]='n',
	["Њ"]='Nj', ["њ"]='nj',
	["О"]='O', ["о"]='o',
	["П"]='P', ["п"]='p',
	["Р"]='R', ["р"]='r',
	["С"]='S', ["с"]='s',
	["Т"]='T', ["т"]='t',
	["Ћ"]='Ć', ["ћ"]='ć',
	["У"]='U', ["у"]='u',
	["Ф"]='F', ["ф"]='f',
	["Х"]='H', ["х"]='h',
	["Ш"]='Ś', ["ш"]='ś',
	["Ѣ"]='Ē', ["ѣ"]='ē',
};

function export.tr(text, lang, sc)
	
	text = mw.ustring.toNFD(text)
	
	for pat, repl in pairs(tt) do
		text = mw.ustring.gsub(text, pat, repl)
	end
	
	text = mw.ustring.toNFD(text)
	
	return mw.ustring.toNFC(text)
end

return export