« Convertisseurs » : différence entre les versions
De Sèida
Autres actions
| Ligne 9 : | Ligne 9 : | ||
["i"]="ა", ["e"]="ე", ["è"]="ո", ["a"]="𐐄", ["u"]="უ", ["ù"]="𐐆", | ["i"]="ა", ["e"]="ე", ["è"]="ո", ["a"]="𐐄", ["u"]="უ", ["ù"]="𐐆", | ||
["o"]="𐐅", ["ò"]="𐐇", | ["o"]="𐐅", ["ò"]="𐐇", | ||
["y"]="ⵡ", ["w"]="ⵯ", ["h"]="𐡅" | ["y"]="ⵡ", ["w"]="ⵯ", ["h"]="𐡅", | ||
-- Ponctuation | |||
["."]="。", | |||
["..."]="…", | |||
["!"]="!", | |||
["?"]="?", | |||
[","]=",", | |||
[":"]=":", | |||
[";"]=";", | |||
["'"]="’" | |||
} | } | ||
| Ligne 54 : | Ligne 64 : | ||
-- Exemple d'utilisation | -- Exemple d'utilisation | ||
local sampleLatin = " | local sampleLatin = "Mèn Che ThaLaEk" -- Mettre ici ce qu'on veut convertir depuis de l'Èlyan en lettres latines vers de l'Èlyan | ||
local sampleElyan = toElyan(sampleLatin) | local sampleElyan = toElyan(sampleLatin) | ||
print("Latin -> Èlyan : " .. sampleElyan) | print("Latin -> Èlyan : " .. sampleElyan) | ||
local sampleElyan = "" -- Mettre ici ce qu'on veut convertir depuis de l'Èlyan vers de l'Èlyan en lettres latines | |||
local backToLatin = toLatin(sampleElyan) | local backToLatin = toLatin(sampleElyan) | ||
print("Èlyan -> Latin : " .. backToLatin) | print("Èlyan -> Latin : " .. backToLatin) | ||
</syntaxhighlight > | </syntaxhighlight > | ||
Version du 12 septembre 2025 à 14:28
Convertisseur Èlyan (en lettre latines) vers Èlyan
-- Tableau de correspondance Latin -> Èlyan
local latinToElyan = {
["p"]="ᚷ", ["b"]="Ⱈ", ["t"]="𐑛", ["d"]="𐑄", ["k"]="ᚲ", ["g"]="𐌂",
["f"]="𐑧", ["v"]="𐑬", ["s"]="ᐞ", ["z"]="Ⱍ", ["sh"]="𐑕", ["j"]="𐑚",
["m"]="ᛗ", ["n"]="ᚾ", ["l"]="Ⰾ", ["r"]="𐑤", ["c"]="ᚳ", ["ch"]="𐑩",
["i"]="ა", ["e"]="ე", ["è"]="ո", ["a"]="𐐄", ["u"]="უ", ["ù"]="𐐆",
["o"]="𐐅", ["ò"]="𐐇",
["y"]="ⵡ", ["w"]="ⵯ", ["h"]="𐡅",
-- Ponctuation
["."]="。",
["..."]="…",
["!"]="!",
["?"]="?",
[","]=",",
[":"]=":",
[";"]=";",
["'"]="’"
}
-- Tableau de correspondance Èlyan -> Latin
local elyanToLatin = {}
for k,v in pairs(latinToElyan) do
elyanToLatin[v] = k
end
-- Fonction pour convertir du latin vers Elyan
local function toElyan(text)
text = text:lower()
local result = ""
local i = 1
while i <= #text do
local two = text:sub(i,i+1)
local one = text:sub(i,i)
if latinToElyan[two] then
result = result .. latinToElyan[two]
i = i + 2
elseif latinToElyan[one] then
result = result .. latinToElyan[one]
i = i + 1
else
result = result .. one
i = i + 1
end
end
return result
end
-- Fonction pour convertir de Elyan vers latin
local function toLatin(text)
local result = ""
for uchar in text:gmatch(utf8.charpattern) do
if elyanToLatin[uchar] then
result = result .. elyanToLatin[uchar]
else
result = result .. uchar
end
end
return result
end
-- Exemple d'utilisation
local sampleLatin = "Mèn Che ThaLaEk" -- Mettre ici ce qu'on veut convertir depuis de l'Èlyan en lettres latines vers de l'Èlyan
local sampleElyan = toElyan(sampleLatin)
print("Latin -> Èlyan : " .. sampleElyan)
local sampleElyan = "" -- Mettre ici ce qu'on veut convertir depuis de l'Èlyan vers de l'Èlyan en lettres latines
local backToLatin = toLatin(sampleElyan)
print("Èlyan -> Latin : " .. backToLatin)