Modulo:Sandbox

Da Wikizionario, il dizionario a contenuto aperto.
Jump to navigation Jump to search
Area di test per Scribunto

Questa pagina non è un vero modulo Lua, ma serve per fornire un opportuno "pseudo namespace" per fare nelle prove ed evitare che vengano fatte direttamente nel namespace Modulo (cosa che creerebbe parecchia confusione in breve tempo), dato che non è possibile creare dei moduli funzionanti nel namespace Utente.

In breve, se vuoi creare un modulo di prova crea una sottopagina di questa pagina con un nome del tipo:

Modulo:Sandbox/IlTuoNomeUtente/NomeModulo

Guarda come hanno fatto altri utenti: lista delle sottopagine di Modulo:Sandbox


-- Sandbox per [[Aiuto:Moduli|moduli LUA]]. Non aggiungere codice a questa riga!
local p = {}

-- Verifica se un indice è pari
function even (n)
    if (n % 2) == 0 then
        return true
    else
        return false
    end
end

-- Verifica se un indice è dispari
function odd (n)
    if not even (n) then
        return true
    else
        return false
    end
end

-- Seleziona a due a due gli indici
function p.segment (frame)
    local str = ''
    for i in pairs(frame.args) do
        if odd(i) then
            if i ~= 1 then
                str = str .. '+ ' .. frame.args[i] .. ' '
            else
                str = str .. frame.args[i] .. ' '
            end
        else
            str = str .. ' ("' .. frame.args[i] .. '") '
        end
    end
    return str
end

return p