Differenze tra le versioni di "Modulo:Wikilib/forms"

getabbr ritorna base come sigla per la forma base *** sovrascritto il testo esistente ***
(getabbr ritorna base come sigla per la forma base *** sovrascritto il testo esistente ***)
-- Funzioni di libreria per la gestione delle forme alternative
 
local f = {}
local tab = require('Modulo:Wikilib/tables')
local alt = requiremw.loadData('Modulo:AltForms/data')
 
-- Usa come modulo dati per le forme alternative UselessForms/data
 
f.loadUseless = function()
alt = requiremw.loadData('Modulo:UselessForms/data')
end
 
extform = string.lower(extform or '')
name = tonumber(name) or name:lower()
return alt[name].ext[extform] or 'base'
end
return name:match('(%u+%a*)$') or 'base'
end
 
extform = string.lower(extform or '')
name = tonumber(name) or name:lower()
return name, alt[name].ext[extform] or 'base'
end
poke, abbr = name:match("^([%lé%-♂♀%s%.&#;%d]+)(%u*%a*)$")
return tonumber(poke) or poke or '', abbr or 'base'
end
 
f.getlink = function(poke, black, extform)
black = black and 'black' or ''
 
-- È stato fornito il terzo parametro, si cerca nella
-- table ext. Il '' a default in abbr serve per assicurare
-- l'indicizzazione nell'istruzione successiva
 
if alt[tonumber(poke) or poke:lower()] then
extform = string.lower(extform or '')
return alt[poke][black .. 'links'][abbr] or ''
end
 
-- Senza terzo parametro, bisogna estrarre nome del Pokémon e
-- sigla della forma alternativa dal nome, per poi usarli come
-- indici del modulo AltForms/data
 
local name, form = poke:match("^([%lé%-♂♀%s%.&#;%d]+)(%u*%a*)$")
if form == '' then
return alt[name][black .. 'links'][form] or ''
end
 
f.getLink, f.get_link = f.getlink, f.getlink
 
106 640

contributi