Módulo:Testes/Gkiyoshinishimoto/Labelled list hatnote/doc

Origem: Wikipédia, a enciclopédia livre.

Erro de comando: Não existe nenhum módulo "Testes/Gkiyoshinishimoto/Lua banner".

Este módulo fornece várias funções que facilitam a implementação de notas de cabeçalho[a] que assumem a forma de um rótulo na frente de uma lista de páginas, por exemplo,

Uso[editar código-fonte]

labelledList[editar código-fonte]

Invocar a função labelledList() é suficiente para implementar a maioria dessas predefinições:

{{#invoke:Testes/Gkiyoshinishimoto/Labelled list hatnote|labelledList|rótulo universal}}

ou

{{#invoke:Testes/Gkiyoshinishimoto/Labelled list hatnote|labelledList|Rótulo singular|Rótulo plural}}

Por exemplo, fornecer "Ver também" em vez de "Rótulo universal" duplica a funcionalidade de {{Teste/Gkiyoshinishimoto/See also}}, enquanto fornecer "Artigo principal" e "Artigos principais" em vez de "Rótulo singular" e "Rótulo plural" duplica a funcionalidade (espaço nomeado de artigos) de {{Teste/Gkiyoshinishimoto/Main}}.

Se o terceiro e o quarto rótulos forem fornecidos, eles serão usados no caso em que qualquer uma das páginas de destino estiver fora do espaço nomeado do artigo, por exemplo, {{Teste/Gkiyoshinishimoto/Main}} pode ser implementado assim:

{{#invoke:Testes/Gkiyoshinishimoto/Labelled list hatnote|labelledList|Artigo principal|Artigos principais|Página principal|Páginas principais}}

preprocessDisplays[editar código-fonte]

A função preprocessDisplays() pega uma lista bruta de argumentos e combina em qualquer argumento de exibição. Por exemplo, {{Teste/Gkiyoshinishimoto/See also|1|l1=Um}} inicialmente tem a tabela de argumentos {'1', ['l1'] = 'Um'}; esta tabela iria combiná-los na tabela {'1|Um'}. Ela substitui a inserção manual da barra vertical (por exemplo, {{Teste/Gkiyoshinishimoto/See also|1{{!}}2|l1=Um}}{'1|Um'}) e comprime arranjos[b] esparsos se um parâmetro for ignorado ou deixado em branco.

Exemplo:

local mLabelledList = require('Módulo:Testes/Gkiyoshinishimoto/Labelled list hatnote')
local pages = mLabelledList.preprocessDisplays(args)

_labelledList[editar código-fonte]

Para módulos que precisam modificar um pouco a funcionalidade enquanto ainda a usam, _labelledList() fornece alguma flexibilidade. Leva três parâmetros:

  1. Uma lista de páginas, preferencialmente pré-processada e comprimida por preprocessDisplays
  2. Uma tabela de rótulos, onde o primeiro item é o rótulo singular ou universal e o segundo é um rótulo plural ou uma cópia do primeiro.
  3. Uma tabela de opções, preferencialmente contendo:
    • uma sequência[c] template com o título completo da predefinição. O padrão é o título deste módulo.
    • uma sequência[c] de category (ou nil) conforme obtida por makeWikitextError de Módulo:Testes/Gkiyoshinishimoto/Hatnote, para desabilitar opcionalmente as categorias de erro
    • uma sequência[c] selfref (ou nil) conforme obtida por _hatnote para habilitar a opção "selfref"

Exemplo:

local mLabelledList = require('Módulo:Testes/Gkiyoshinishimoto/Labelled list hatnote')
return mLabelledList._labelledList(pages, labels, options)

Erros[editar código-fonte]

Este módulo faz com que as predefinições baseadas nele produzam uma mensagem de erro se nenhum nome de página for fornecido como parâmetro de predefinição. Normalmente, elas devem levar de volta às seções "Erros" na documentação dessas predefinições. No entanto, se essas predefinições usarem um módulo com _labelledList() e não fornecerem um item template em sua tabela de opções, esse erro retornará aqui por padrão. O erro pode ser resolvido fornecendo pelo menos um parâmetro de nome de página válido para a predefinição em questão; o problema na predefinição pode ser corrigido fornecendo algum valor ao item template da tabela _labelledList() options.

Notas[editar código-fonte]

  1. do inglês hatnotes
  2. do inglês arrays
  3. a b c do inglês string