Predefinição:Namespace detect
Esta predefinição usa Lua: |
Esta é a metapredefinição {{namespace detect}}. Ela ajuda outras predefinições a detectar em que tipo de página elas estão.
Ela detecta e agrupa todos os diferentes domínios utilizados na Wikipédia em vários tipos:
- principal = Domínio principal, em que os artigos normais da Wikipédia são mantidos.
- discussão = Todos os domínio de discussão, incluindo páginas cujos nomes começam com "Discussão:", "Usuário Discussão:", "Ficheiro Discussão:" e assim por diante.
- usuário, wikipédia, arquivo, mediawiki, predefinição, ajuda, categoria, portal e livro = Outros domínios exceto as páginas de discussão.
- outro = Qualquer outro domínio que não foi especificado como um parâmetro da predefinição. Ver explicações mais adiante.
A predefinição também entende imagem para o domínio ficheiro.
Nota: Para a maior parte dos casos pode ser melhor utilizar as predefinições de detecção de domínios mais simples (ver seção ver também). Esta predefinição é mais propensa a erros humanos tais como a digitação incorreta dos nomes dos parâmetros.
Uso
Esta predefinição aceita um ou mais parâmetros nomeados de acordo com os diferentes tipos de páginas listados anteriormente. Assim:
{{namespace detect | principal = Texto para os artigos | discussão = Texto para as páginas de discussão | outro = Texto para qualquer outro tipo de página }}
Se a predefinição estiver em uma página do domínio principal (um artigo), ela produzirá o seguinte:
- Texto para os artigos
If the template is on any outro page than an article or a discussão page it will return this: Se a predefinição estiver em qualquer outra página que não seja um artigo ou página de discussão, ela produzirá o seguinte:
- Texto para qualquer outro tipo de página
O exemplo acima faz com que a predefinição produza algo para todos os tipos de página. Mas se não for utilizado o parâmetro outro ou ele for deixado vazio então não será produzido nada nos demais tipos de páginas. Assim:
{{namespace detect | file = Texto para páginas de arquivos | categoria = Texto para páginas de categorias | outro = }}
Em páginas que não sejam de ficheiros ou categorias o código anterior não produzirá nada.
Utilizando um parâmetro vazio é possível fazer com que a predefinição não produza nada em alguns tipos específicos de página. Assim:
{{namespace detect | principal = | outro = Texto para qualquer outro tipo de página }}
O código acima não produzirá nada quando estiver nas páginas do domínio principal (artigos), mas produzirá o seguinte em outros tipos de páginas:
- Texto para qualquer outro tipo de página
Página e domínio para demonstração
Para fins de teste esta predefinição aceita dois parâmetros denominados domínio para demonstração e página.
O domínio para demonstração entende qualquer um dos tipos de páginas utilizados por esta predefinição, incluindo tipo outro. Ele faz com que a predefinição se comporte como se estivesse em um tipo de página específico. Assim:
{{namespace detect | principal = Texto para os artigos | outro = Texto para qualquer outro tipo de página | domínio para demonstração = main }}
Não importa o tipo de página em que o código acima esteja, ele produzirá isto:
- Texto para os artigos
Por outro lado, o parâmetro página aceita um nome de página normal. Ele faz com que a predefinição se comporte exatamente como se estivesse naquela página. O nome da página não precisa ser o de uma página existente. Assim:
{{namespace detect | user = Texto para as páginas de usuário | outro = Texto para qualquer outro tipo de página | página = Usuário:Exemplo }}
Não importa em que tipo de página o código acima esteja, ele produzirá o seguinte:
- Texto para as páginas de usuário
Pode ser conveniente deixar que sua predefinição entenda os parâmetros página e domínio de demonstração e passá-lo para a predefinição {{namespace detect}}. Para isso, faça o seguinte:
{{namespace detect | principal = Texto para os artigos | outro = Texto para qualquer outro tipo de página | domínio para demonstração = {{{domínio para demonstração|}}} | página = {{{page|}}} }}
Se tanto o parâmetro domínio para demonstração quanto o página estiverem vazios ou indefinidos então a predefinição detectará os tipos de página como de costume.
Parâmetros
Lista de todos os parâmetros:
{{namespace detect | principal = ... | outro = | domínio para demonstração = {{{domínio para demonstração|}}} / principal / discussão / usuário / wikipédia / ficheiro / mediawiki / predefinição / ajuda / categoria / portal / livro / outro | página = {{{página|}}} / Usuário:Exemplo }}
Nota: Valores em branco nos parâmetros "principal" ... "livro" não têm qualquer significado especial.