Módulo:Check for unknown parameters/doc
<section begin=header />
<section end=header /> {{#invoke:Lua banner|main}}
Este módulo pode ser anexado a uma predefinição para verificar o uso de parâmetros desconhecidos. Diferentemente de muitos outros módulos, este módulo não é implementado por uma predefinição.
Uso
Uso básico
<syntaxhighlight lang="wikitext">
{{#invoke:Check for unknown parameters|check
|unknown=
|arg1|arg2|arg3|argN}}
</syntaxhighlight>
ou para classificar as entradas na categoria de manutenção por parâmetro com uma mensagem de erro de visualização
<syntaxhighlight lang="wikitext">
{{#invoke:Check for unknown parameters|check
|unknown=
|preview=parâmetro desconhecido "_VALUE_"
|arg1|arg2|...|argN}}
</syntaxhighlight>
ou para uma mensagem de erro vermelha explícita
<syntaxhighlight lang="wikitext">
{{#invoke:Check for unknown parameters|check
|unknown=Desculpe, eu não reconheço _VALUE_
|arg1|arg2|...|argN}}
</syntaxhighlight>
Aqui, arg1, arg2, ..., argN, são os parâmetros conhecidos. Parâmetros sem nome (posicionais) também podem ser adicionados: |1|2|nomedoarg1|nomedoarg2|.... Qualquer parâmetro que for usado, mas não estiver nesta lista, fará com que o módulo retorne o que for passado com o parâmetro unknown. A palavra-chave _VALUE_, se for utilizada, será alterada para o nome do parâmetro. Isso é útil tanto para classificar as entradas em uma categoria de rastreamento quanto para fornecer informações mais explícitas.
Por padrão, o módulo não faz distinção entre um parâmetro definido, mas em branco, e um parâmetro que não está em branco. Isto é, tanto |foo=x quanto |foo=, se não forem listados, são reportados. Para rastrear somente parâmetros que não estiverem em branco, use |ignoreblank=1.
Por padrão, o módulo ignora os parâmetros posicionais em branco. Ou seja, um |2= que não estiver listado é ignorado. Para incluir parâmetros posicionais em branco no rastreamento use |showblankpositional=1.
Padrões Lua
Este módulo suporta padrões Lua (semelhante a expressões regulares), que são úteis quando existem muitos parâmetros conhecidos que usam um padrão sistemático. Por exemplo, Infobox3cols usa
<syntaxhighlight lang="lua">
regexp1 = "header[%d]+",
regexp2 = "label[%d]+",
regexp3 = "data[%d]+[abc]?",
regexp4 = "class[%d]+[abc]?",
regexp5 = "rowclass[%d]+",
regexp6 = "rowstyle[%d]+",
regexp7 = "rowcellstyle[%d]+",
</syntaxhighlight>
para corresponder a todos os parâmetros do formulário headerNUM, labelNUM, dataNUM, dataNUMa, dataNUMb, dataNUMc, ..., rowcellstyleNUM, onde NUM é uma sequência (string) de dígitos.
Exemplo
<syntaxhighlight lang="wikitext">
{{#invoke:Categorização AD e AB de outras wikis|badgesCategories}}{{#invoke:Check for unknown parameters|check
| unknown = | preview = parâmetro "_VALUE_" desconhecido | name | nome | height | altura | weight | peso | website }} </syntaxhighlight>
Chamada de dentro de código Lua
Veja o final de Rugby box para um exemplo simples ou Infobox3cols ou Flag para exemplos mais complicados.
Ver também
- Módulo:Check for clobbered parameters – módulo semelhante que verifica parâmetros conflitantes
- Módulo:Check for conflicting parameters – módulo semelhante que verifica parâmetros conflitantes