Modulo:Lingue: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Ha protetto "Modulo:Linguaggi": Template usato in maniera estensiva ([Modifica=Consentito solo agli amministratori] (infinito) [Spostamento=Consentito solo agli amministratori] (infinito)) |
aggiorno per poter ritornare lista di lingue sconosciute quando chiamate da un modulo lua (citazione) |
||
Riga 31:
-- a quella della tabella codici
-- Se "code" non corrisponde a nessuna lingua inserita in tabella ritorna la coppia valore di default
-- o stringa nulla se questo non è indicato e il codice richiesto. Se maiuscolo è vero il
-- nome viene ritornato con la prima lettera maiuscola
function language.get_nome(code, maiuscolo, default)
Riga 96:
--funzione di interfaccia per template:Lingue, se viene passato anche il parametro
--usa_codice (qualunque sia il suo valore), allora il testo mostrato tra parentesi
--viene normalizzato a quello standard della lingua, piuttosto che essere quello
--passato
--In aggiunta può ricevere se il paremtro return_error è vero ritorna in caso di
--codici lingua non ritrovati in tabella una tabella aggiuntiva con i codici errati
--return_error viene controllato solo se la funzione è richiamata da un modulo Lua
--se è richiamata da un template è sempre falsa
function language.lingue(frame)
local lingue_list = { }
Line 103 ⟶ 107:
-- Altrimenti a scopo di test assume che gli argomenti siano passati direttamente
local args
local return_error = false
local error_list = {}
if frame == mw.getCurrentFrame() then
args = frame:getParent().args
else
args = frame
return_error = args['return_error'] or False
end
local usa_codice = false
local lingua, codice_normalizzato, code_to_show
for _,code in ipairs(args) do
lingua, codice_normalizzato = language.get_nome(code)
Line 119 ⟶ 127:
else
lingue_list[#lingue_list+1] = code
if return_error then error_list[#error_list+1] = code end
end
end
local reply
if #lingue_list > 0 then
else
reply = ''
▲ end
reply = reply
if #error_list>0 then
return reply, error_list
else
end
▲ return ''
end
Line 130 ⟶ 147:
function language.tabella(frame)
local HtmlBuilder = require('Module:HtmlBuilder')
-- genera una tabella codici -> lista alias e una di codici per ordinarla
local alias_table = {}
Line 142 ⟶ 159:
end
table.sort(codici_sorted)
root = HtmlBuilder.create('table')
root
Line 151 ⟶ 168:
.tag('th').wikitext('[[template:Nomelingua/voce]]').done()
.tag('th').wikitext('[[template:Lingue]]')
for _,code in ipairs(codici_sorted) do
local code_string = table.concat(alias_table[code], ", ")
Line 204 ⟶ 221:
end
return tostring(root)
end
-- ritorna una whitelist di tutti i codici riconosciuti ad uso bot in python
function language.whitelist(frame)
local rows = { 'WHITELIST_LINGUE = set( [' }
-- genera una tabella codici -> lista alias e una di codici per ordinarla
local codici = {}
for code, _ in pairs(lg.codici) do
codici[#codici+1] = code
end
for alias, _ in pairs(lg.alias) do
codici[#alias+1] = alias
end
table.sort(codici)
for _, codice in ipairs(codici) do
rows[#rows+1] = " '" .. codice .."',"
end
rows[#rows+1] = "])"
return table.concat(rows, '\n')
end
|