« Module:Langues » : différence entre les versions
Contenu supprimé Contenu ajouté
Renvoie nil s'il n'y a aucune langue qui correspond au code |
Commentaires, un peu d'espace |
||
Ligne 2 : | Ligne 2 : | ||
-- Wikimédia a une liste des codes langues avec leur nom en français : autant en profiter |
-- Wikimédia a une liste des codes langues avec leur nom en français : autant en profiter |
||
-- Fonction de module. |
|||
function p.get_nom_wikimedia(code) |
function p.get_nom_wikimedia(code) |
||
if (code) then |
|||
return mw.language.fetchLanguageName(code, 'fr') |
|||
else |
|||
return nil |
|||
end |
|||
end |
end |
||
-- Invocation directe. |
|||
-- Pour tester |
|||
function p.affiche_nom_wikimedia(frame) |
function p.affiche_nom_wikimedia(frame) |
||
return p.get_nom_wikimedia(frame.args[1]) |
return p.get_nom_wikimedia(frame.args[1]) |
||
end |
end |
||
-- Récupère le nom d'une langue à partir de son code |
-- Fonction de module. Récupère le nom d'une langue à partir de son code. |
||
function p.get_nom(code) |
function p.get_nom(code) |
||
if (code == nil) then return nil end |
if (code == nil) then return nil end |
Version du 16 mars 2013 à 21:49
La documentation pour ce module peut être créée à Module:Langues/Documentation
local p = {}
-- Wikimédia a une liste des codes langues avec leur nom en français : autant en profiter
-- Fonction de module.
function p.get_nom_wikimedia(code)
if (code) then
return mw.language.fetchLanguageName(code, 'fr')
else
return nil
end
end
-- Invocation directe.
function p.affiche_nom_wikimedia(frame)
return p.get_nom_wikimedia(frame.args[1])
end
-- Fonction de module. Récupère le nom d'une langue à partir de son code.
function p.get_nom(code)
if (code == nil) then return nil end
-- Notre propre liste de langue (prioritaire)
local wlangues = mw.loadData('Module:langues/data')
-- Code défini chez nous?
if (wlangues[code] ~= nil) then
local nom = wlangues[code]['nom']
return nom
else
-- Non défini chez nous: essaye la liste Wikimédia
local nom = p.get_nom_wikimedia(code)
-- On ne renvoit quelque chose que si le nom existe
if (nom ~= nil and nom ~= '') then
return nom
else
return nil
end
end
end
return p