Aller au contenu

« Module:Localisations » : différence entre les versions

m
+ simple
(Itération du système pour prendre en compte les deux façons de renseigner un modèle, avec la barre verticale ou le mot magique {{!}})
m (+ simple)
Ligne 629 : Ligne 629 :
endroit[1] = mw.ustring.gsub(endroit[1], " – ", ", ")
endroit[1] = mw.ustring.gsub(endroit[1], " – ", ", ")
endroit[2] = mw.ustring.gsub(endroit[2], " – ", ", ")
endroit[2] = mw.ustring.gsub(endroit[2], " – ", ", ")
local template_replacement = endroit[2]:gsub(".*{{(.-)|(.-)}}.*", "%1") -- sert à process les modèles qui utilisent "|"
endroit[2] = mw.ustring.gsub(endroit[2], "{{!}}", "|")
local template_replacement = endroit[2]:gsub(".*{{(.-)|(.-)}}.*", "%1") -- sert à process les modèles, qu'ils utilisent "|" ou "{{!}}"
local templates_replaced = 0
local templates_replaced = 0
while template_replacement ~= endroit[2] and templates_replaced < 4 do -- pour empêcher une boucle infinie en cas de pépin, 4 modèles max devraient suffire
while template_replacement ~= endroit[2] and templates_replaced < 4 do -- pour empêcher une boucle infinie en cas de pépin, 4 modèles max devraient suffire
Ligne 639 : Ligne 640 :
local template_replacement = endroit[2]:gsub(".*{{(.-)|(.-)}}.*", "%1")
local template_replacement = endroit[2]:gsub(".*{{(.-)|(.-)}}.*", "%1")
templates_replaced = templates_replaced + 1
end
template_replacement = endroit[2]:gsub(".*{{(.-){{!}}(.-)}}.*", "%1") -- sert à process les modèles qui utilisent "{{!}}"
while template_replacement ~= endroit[2] and templates_replaced < 4 do -- pour empêcher une boucle infinie en cas de pépin, 4 modèles max devraient suffire
local arg_template_teplacement = endroit[2]:gsub(".*{{(.-){{!}}(.-)}}.*", "%2")
local template_result = frame:expandTemplate{title=template_replacement, args={arg_template_teplacement}}
endroit[2] = endroit[2]:gsub("(.*){{(.-){{!}}(.-)}}(.*)", "%1" .. template_result .. "%4")
local template_replacement = endroit[2]:gsub(".*{{(.-){{!}}(.-)}}.*", "%1")
templates_replaced = templates_replaced + 1
templates_replaced = templates_replaced + 1
end
end