Jump to content

Module:zle-ort-translit/sandbox

From Wiktionary, the free dictionary


local letters = {}
	letters["Cyrs"] = {
		-- main letters
		["А"]='A', ["Б"]='B', ["В"]='V', ["Г"]='H', ["Д"]='D', ["Е"]='E', ["Ж"]='Ž', ["З"]='Z', ["Ї"]='I', ["И"]='I', ["Й"]='J',
		["К"]='K', ["Л"]='L', ["М"]='M', ["Н"]='N', ["О"]='O', ["П"]='P', ["Р"]='R', ["С"]='S', ["Т"]='T', ["У"]='U', ["Ф"]='F',
		["Х"]='X', ["Ѡ"]='O', ["Ѿ"]='Ot', ["Ц"]='C', ["Ч"]='Č', ["Ш"]='Š', ["Щ"]='Šč', ["Ъ"]='', ["Ы"]='Y', ["Ь"]='ʹ',
		["Ѣ"]='Jě', ["Є"]='Je', ["Ю"]='Ju', ["Ꙗ"]='Ja', ["Ѧ"]='Ja',
		["а"]='a', ["б"]='b', ["в"]='v', ["г"]='h', ["д"]='d', ["е"]='e', ["ж"]='ž', ["з"]='z', ["ї"]='i', ["и"]='i', ["й"]='j',
		["к"]='k', ["л"]='l', ["м"]='m', ["н"]='n', ["о"]='o', ["п"]='p', ["р"]='r', ["с"]='s', ["т"]='t', ["у"]='u', ["ф"]='f',
		["х"]='x', ["ѡ"]='o', ["ѿ"]='ot', ["ц"]='c', ["ч"]='č', ["ш"]='š', ["щ"]='šč', ["ъ"]='', ["ы"]='y', ["ь"]='ʹ',
		["ѣ"]='jě', ["є"]='je', ["ю"]='ju', ["ꙗ"]='ja', ["ѧ"]='ja',
		-- extended letters
		["Ґ"]='G', ["Ѕ"]='Z', ["І"]='I', ["Ꙋ"]='U', ["Ѫ"]='U', ["Ѯ"]='Ks', ["Ѱ"]='Ps', ["Ѳ"]='F', ["Ѵ"]='I', ["Я"]='Ja',
		["ґ"]='g', ["ѕ"]='z', ["і"]='i', ["ꙋ"]='u', ["ѫ"]='u', ["ѯ"]='ks', ["ѱ"]='ps', ["ѳ"]='f', ["ѵ"]='i', ["я"]='ja',
		-- archaic letters & other
		["Э"]='E', ["Ꙁ"]='Z', ["Ѻ"]='O', ["Ꙍ"]='O', ["Ѽ"]='O', ["Ꙑ"]='Y', ["Ꙓ"]='Jě', ["Ѥ"]='Je', ["Ѩ"]='Ja', ["Ѭ"]='Ju', ["Ѷ"]='I' .. double_grave,
		["э"]='e', ["ꙁ"]='z', ["ѻ"]='o', ["ꙍ"]='o', ["ѽ"]='o', ["ꙑ"]='y', ["ꙓ"]='jě', ["ѥ"]='je', ["ѩ"]='ja', ["ѭ"]='ju', ["ѷ"]='i' .. double_grave, ["ⸯ"]='',
}

local digraphs = {}
	digraphs["Cyrs"] = {
		["О[УѴуѵ]"]="U", ["о[уѵ]"]="u", ["К[Гг]"]="G", ["кг"]="g", ["іа"]="ja",
		["([АаꙖꙗѦѧѨѩЯя])ѵ"]="%1v", ["([АаꙖꙗѦѧѨѩЯя])Ѵ"]="%1V", ["ъ([аеоуыѣєюꙗѧ])"]="ʺ%1",
		["([їиы])и"]="%1j", ["([їиы])ⸯ"]="%1j", ["([бвгґджѕзклмнпрстфхцчшщѯѱѳ])ѡ"]="%1ô",
}

local lowercase_vowels = "аеїиоуѡъыьѣєюꙗѧіꙋѫѵяэѻꙍѽꙑꙓѥѩѭѷ"
local uppercase_vowels = "АЕЇИОУѠЪЫЬѢЄЮꙖѦІꙊѪѴЯЭѺꙌѼꙐꙒѤѨѬѶ"
local vowels = lowercase_vowels .. uppercase_vowels

local lowercase_consonants = "бвгджзйклмнпрстфхчшщґѕѯѱѳꙁ"
local uppercase_consonants = "БBГДЖЗЙКЛМНПРСТФХЦЧШЩҐЅѮѰѲꙀ"
local consonants = lowercase_consonants .. uppercase_consonants