Ir para o conteúdo

Módulo:Template wrapper/doc

De Wiki TokuDrive
Revisão de 06h33min de 5 de julho de 2026 por Tavoraadmin (discussão | contribs) (Importando predefinição/módulo da Wikipédia em português para manter layout)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)

Esse módulo deve ser usado em modelos de wrapper ou envelope para permitir que esses modelos forneçam valores de parâmetro padrão e permitam que os editores passem parâmetros adicionais para o modelo de trabalho subjacente.

Ao gravar uma predefinição de wrapper, forneça a esse módulo todos os parâmetros padrão normalmente necessários para usar o modelo de wrapper em seu formato base. Em seguida, os editores usam o modelo de wrapper como está ou podem fornecer parâmetros adicionais de wrapper e canônicos. Qualquer um dos parâmetros canônicos suportados pelo modelo de trabalho pode ser adicionado ao modelo de wrapper ou fornecido pelos editores no espaço do artigo. Quando um editor fornece um parâmetro que possui um valor padrão no modelo de wrapper, o valor fornecido pelo editor substitui o padrão. Quando for necessário remover um parâmetro padrão, os editores podem definir o valor do parâmetro para a palavra-chave especial unset, o que fará com que este módulo de wrapper apague o valor padrão do modelo do wrapper para esse parâmetro. Este módulo descarta os parâmetros nomeados vazios.

Parâmetros posicionais não são normalmente passados ​​para o modelo de trabalho. Definir <syntaxhighlight lang="wikitext" inline style="display: none;" />|_include-posicional=sim passará todos os parâmetros posicionais para o modelo de trabalho. Parâmetros posicionais não podem ser excluídos; Parâmetros posicionais podem ser unset.

Parâmetros que são usados ​​somente pelo wrapper devem ser posicionais (<syntaxhighlight lang="wikitext" inline style="display: none;" />|n=) ou listados em <syntaxhighlight lang="wikitext" inline style="display: none;" />|_exclude= (uma lista separada por vírgulas de parâmetros nomeados). Este módulo não passará parâmetros _excluded para o modelo de trabalho.

Uso

{{#invoke:Módulo:Template wrapper|wrap|_template=working template|_exclude=named parameter, named parameter, ...|_reuse=named parameter, named parameter, ...|_alias-map=alias parameter:canonical parameter|_include-positional=yes|<default parameter>|<default parameter>|...}}

Parâmetros de controle
<syntaxhighlight lang="wikitext" inline style="display: none;" />|_template= - (obrigatório) o nome, sem namespace, do modelo de trabalho (o modelo que é empacotado); veja § _template abaixo
<syntaxhighlight lang="wikitext" inline style="display: none;" />|_exclude= - lista separada por vírgulas de nomes de parâmetros usados pelo modelo de wrapper que não devem ser passados para o template de trabalho; veja § _exclude abaixo
<syntaxhighlight lang="wikitext" inline style="display: none;" />|_reuse= - lista separada por vírgulas de nomes canônicos que têm significado para o modelo de wrapper e para o modelo de trabalho; veja § _reuse abaixo
<syntaxhighlight lang="wikitext" inline style="display: none;" />|_alias-map= - lista separada por vírgula de nomes de parâmetros de wrapper-modelo que devem ser tratados como aliases de parâmetros canônicos de modelos de trabalho especificados; veja § _alias-map abaixo
<syntaxhighlight lang="wikitext" inline style="display: none;" />|_include-posicional= - passa todos os parâmetros posicionais ao modelo de trabalho; veja § _include-posicional abaixo

Definições

parâmetro canonical - um parâmetro suportado e usado pelo modelo de trabalho
parâmetro wrapper - um parâmetro usado pelo modelo wrapper; pode fornecer dados para parâmetros canônicos ou controlar outros aspectos do modelo de wrapper
parâmetro alias - um parâmetro de wrapper que é contextualmente significativo para o modelo de wrapper, mas deve ser renomeado para um parâmetro canônico para uso pelo modelo de trabalho
parâmetro reused - um parâmetro que é compartilhado pelos modelos wrapper e que funciona e foi modificado pelo template wrapper
parâmetro padrão - um parâmetro canônico dado um valor padrão no modelo de wrapper
processamento de parâmetros
wrapper
template
Module:Template wrapper working
predefinição
|canonical parameters=  →  –––––––→  →  –––––––→  →  –––––––→  →  –––––––→  →  –––––––→  →  filter
exclued
parameters
working
template
|wrapper parameters=  →  –––––––→  →  –––––––→  →  –––––––→  →  –––––––→  →  –––––––→  → 
  |_exclude=  →  –––––––→  →  –––––––→  →  –––––––→  →  –––––––→  →   → 
  |_include-positional=  →  –––––––→  →  –––––––→  →  –––––––→  →  –––––––→  → 
  |_alias-map=  →  convert alias
parameters to
canonical
parameters
 →  |canonical parameters=  →  –––––––→  →  –––––––→  →   → 
   →   →  modify
reused
canonical
parameters
|alias parameters=  →  –––––––→  →   →  |reused parameters=  →  –––→  → 
  |_reuse=  →  –––––––→  →  –––––––→  → 
|canonical parameters=  →  –––––––→  →  –––––––→  →  –––––––→  → 
  |default parameters=  →  –––––––→  →  –––––––→  →  –––––––→  →  –––––––→  →  –––→  → 

Detalhes do parâmetro

_ template

O único parâmetro necessário, <syntaxhighlight lang="wikitext" inline style="display: none;" />|_template= fornece o nome, sem namespace, do modelo de trabalho (o modelo que é empacotado). Se este parâmetro for omitido, o módulo: invólucro de modelo emitirá a mensagem de erro:

|_template= em falta ou vazio

_ alias-map

<syntaxhighlight lang="wikitext" inline style="display: none;" />|alias-map= usa uma lista separada por vírgula dos parâmetros do modelo de wrapper que devem ser tratados como aliases dos parâmetros canônicos do modelo de trabalho especificado. Cada elemento de mapeamento da lista tem o formulário:

<from>:<to> - onde: <de> é um nome de parâmetro do wrapper e <to> é um nome de parâmetro canônico

Neste exemplo, pode ser preferível que um modelo de wrapper use <syntaxhighlight lang="wikitext" inline style="display: none;" />|assessor=, que pode ser desconhecido para o modelo de trabalho, mas o modelo de trabalho pode ter um equivalente <syntaxhighlight lang="wikitext" inline style="display: none;" />|autor= no {{#invoke:}} nós escreveríamos:

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_alias-map=assessor:autor

Parâmetros posicionais também podem ser mapeados para parâmetros canônicos:

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_alias-map=1:autor, 2:titulo, 3:lingua

Os parâmetros do wrapper enumerados podem ser mapeados para parâmetros canônicos enumerados usando o especificador # enumerator:

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_alias-map=assessor#:autor#

Dado o exemplo acima, <syntaxhighlight lang="wikitext" inline style="display: none;" />|assessor2= será mapeado para <syntaxhighlight lang="wikitext" inline style="display: none;" />|autor2=; Além disso, <syntaxhighlight lang="wikitext" inline style="display: none;" />|assessor= e <syntaxhighlight lang="wikitext" inline style="display: none;" />|assessor1= serão mapeados para <syntaxhighlight lang="wikitext" inline style="display: none;" />|autor1=

Vários parâmetros de wrapper podem mapear para um único parâmetro canônico:

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_alias-map=1: autor, avaliador: autor

Os parâmetros do wrapper listados em <syntaxhighlight lang="wikitext" inline style="display: none;" />|alias-map= não são passados ​​para o modelo de trabalho. Mapeamento de parâmetros posicionais quando <syntaxhighlight lang="wikitext" inline style="display: none;" />|_include-posicional=sim pode dar resultados indesejáveis. <syntaxhighlight lang="wikitext" inline style="display: none;" />|_alias-map=1:autor e <syntaxhighlight lang="wikitext" inline style="display: none;" />|_include-posicional=yes fará com que todos os outros parâmetros posicionais sejam passados ​​para o modelo de trabalho como é: wrapper template {{{2}}} torna-se o template de trabalho {{{2}}}, etc; O template de trabalho não vai ter {{{1}}}, mas ele terá <syntaxhighlight lang="wikitext" inline style="display: none;" />|author=.

_ reuse

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_reuse= usa uma lista separada por vírgula de parâmetros canônicos que têm significado para o modelo de wrapper e para o modelo de trabalho

Nos casos mais simples, um parâmetro canônico enviado para o modelo de wrapper substitui um parâmetro padrão fornecido no modelo de wrapper. Às vezes, um parâmetro de wrapper é o mesmo que um parâmetro canônico e o modelo de wrapper precisa modificar o valor do parâmetro antes de ser passado para o modelo de trabalho. Neste exemplo, <syntaxhighlight lang="wikitext" inline style="display: none;" />|title= é um parâmetro de wrapper e um parâmetro canônico que o modelo de wrapper precisa modificar antes de passar para o modelo de trabalho. Para fazer isso, primeiro escrevemos:

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_reuse=title

então, no <code><nowiki>{{#invoke:Template wrapper|wrap|_template=...|...}} escrevemos:

<syntaxhighlight lang="wikitext" inline style="display: none;" />|title=Modificado {{{title}}}

Parâmetros _reused não podem ser substituídos.

_ exclude

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_exclude= usa uma lista separada por vírgula de parâmetros usados ​​pelo modelo de wrapper que não devem ser passados ​​para o modelo de trabalho. Essa lista se aplica a todos os parâmetros de wrapper e canônicos (incluindo os parâmetros canônicos que são renomeados para os parâmetros de alias) recebidos do modelo de wrapper.

Como exemplo, um modelo de wrapper pode usar <syntaxhighlight lang="wikitext" inline style="display: none;" />|id= para fornecer uma parte do valor atribuído ao parâmetro padrão <syntaxhighlight lang="wikitext" inline style="display: none;" />|url=, portanto, poderíamos escrever:

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_exclude=id

então, no {{#invoke:Template wrapper|wrap|_template=...|...}} escrevemos:

<syntaxhighlight lang="wikitext" inline style="display: none;" />|url=https://example.com/{{{id}}}

O valor <syntaxhighlight lang="wikitext" inline style="display: none;" />|url= modificado é passado para o template de trabalho, mas <syntaxhighlight lang="wikitext" inline style="display: none;" />|id= e seu valor não é.

Os parâmetros _reused e default não podem ser excluídos

_ include-posicional

<syntaxhighlight lang="wikitext" inline style="display: none;" />|_include-posicional= é um parâmetro booleano que usa apenas um valor: yes; o padrão (vazio, ausente) é no (parâmetros posicionais normalmente excluídos). Quando definido como yes, o wrapper Module:Template passará todos os parâmetros posicionais para o modelo de trabalho.

Veja também § _alias-map.

Substituindo parâmetros padrão

Os editores podem substituir os parâmetros padrão simplesmente definindo o parâmetro padrão para o valor desejado no modelo de wrapper. Este módulo ignora os parâmetros vazios (aqueles parâmetros que são nomeados, mas que não possuem um valor atribuído). Quando for desejável sobrescrever um parâmetro padrão para nenhum valor, use a palavra-chave especial unset. Os parâmetros padrão com este valor são passados para o modelo de trabalho como parâmetros vazios (sem valor atribuído).

Parâmetros _reused não podem ser unset ou sobrescritos.

Modo de depuração/documentação

Este módulo tem dois pontos de entrada. Um modelo de wrapper pode usar um módulo {{#invoke:}} escrito assim:

{{#invoke:Módulo:Template wrapper|{{#if:{{{_debug|}}}|list|wrap}}|_template =<predefinição de trabalho>|_exclude = _debug, ...|...}}

onde o parâmetro de wrapper <syntaxhighlight lang="wikitext" inline style="display: none;" />|_debug=, definido como qualquer valor, fará com que o módulo renderize a chamada para o modelo de trabalho sem realmente chamar o modelo de trabalho.

Como exemplo, {{citar wikisource}} é um modelo de wrapper que usa {{citation}} como modelo de trabalho. O {{#invoke:Ligação para predefinição|main|nolink=yes|code=yes|nowrap=yes}} aceita parâmetros posicionais, mas {{#invoke:Ligação para predefinição|main|nolink=yes|code=yes|nowrap=yes}} não faz com que o modelo do wrapper converta os parâmetros posicionais em parâmetros nomeados, usando o parâmetro <syntaxhighlight lang="wikitext" inline style="display: none;" />|_alias-map=:

<syntaxhighlight lang="wikitext">{{#invoke:template wrapper|wrap|_template=citation
|_exclude = ..., _debug <! - detalhes desnecessários omitidos ->
|_alias-map = 1:title, 2:author, 3:language</syntaxhighlight>