Módulo:About
Aspeto
Este módulo implementa a predefinição de notas de cabeçalhos ({{About}}).
Uso
[editar código-fonte]- A função
about
implementa a predefinição {{About}} diretamente, usando o frame e não aplicando opções. Provavelmente, ela é usada apenas em {{About}}. - A função
_about
pode ser usada em Lua para fornecer uma lista de argumentos personalizados (seu primeiro argumento) e/ou uma tabela de opções (seu segundo argumento). As opções incluem:aboutForm
: Uma string que pode ser usada para substituir a forma da mensagem inicial "sobre". Deve incluir dois pontos de substituição: o primeiro para o tipo de página (por exemplo, "artigo") e o segundo para a descrição do assunto da página. Também deve incluir um espaço à direita para facilitar a concatenação ou omissão. O padrão é'Esta página de %s é sobre %s. '
.sectionString
: Fornece a string do tipo de página para quando o argumento nomeadoseção
é especificado. O padrão é'seção'
.
local mArguments -- Inicializa lentamente
local mHatnote = require('Módulo:Hatnote')
local mHatList = require('Módulo:Hatnote list')
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
function p.about (frame)
-- Uma passagem que obtém argumentos do quadro e tudo
mArguments = require('Módulo:Arguments')
args = mArguments.getArgs(frame)
return p._about(args)
end
function p._about (args, options)
-- Produz a nota "sobre".
-- Verificações de tipo (ou digitação) e padrões
checkType('_about', 1, args, 'table', true)
args = args or {}
checkType('_about', 2, options, 'table', true)
options = options or {}
local defaultOptions = {
aboutForm = 'Esta página de %s é sobre %s. ',
PageType = require('Módulo:Pagetype').main(),
otherText = nil, -- Incluído para lista completa (ou completar a lista)
sectionString = 'seção'
}
for k, v in pairs(defaultOptions) do
if options[k] == nil then options[k] = v end
end
-- Define a string inicial "sobre"
local pageType = (args.section and options.sectionString) or options.PageType
local about = ''
if args[1] then
about = string.format(options.aboutForm, pageType, args[1])
end
-- Permite passar por certas opções
local fsOptions = {
otherText = options.otherText,
extratext = args.text
}
local hnOptions = {
selfref = args.selfref
}
-- Define a lista de consulta
local forSee = mHatList._forSee(args, 2, fsOptions)
-- Concatena e retorna
return mHatnote._hatnote(about .. forSee, hnOptions)
end
return p