Módulo:LigazónFicheiro
Aparencia
[ máis información | ver o historial | | | ver as instrucións ]
Obxectivo
[editar a fonte]Este módulo emprégase para construír ligazóns wiki cara a ficheiros. Resulta principalmente útil para modelos e outros módulos que usan unha lóxica complexa para facer ligazóns a ficheiros. As ligazóns sinxelas a ficheiros deben facerse directamente con texto wiki para aforrar a chamada a este módulo.
Uso
[editar a fonte]Uso dende texto wiki
[editar a fonte]Dende o texto wiki, este módulo debe chamarse dende un modelo. A sintaxe é:
{{#invoke:LigazónFicheiro|main|argumentos}}
.
Uso dende Lua
[editar a fonte]Primeiro hai que importar o módulo:
local mLigaFicheiro = require('Módulo:LigazónFicheiro')
Despois pódense facer as ligazóns a ficheiros usando a función _main
mLigaFicheiro._main(argumentos)
Argumentos
[editar a fonte]argumentos é unha táboa de argumentos que pode conter as seguintes chaves:
file
- Nome do ficheiro. (requirido)format
- Formato do ficheiro, por exemplo 'miniatura', 'thumbnail', 'frame', 'framed', ou 'frameless'.formatfile
- Nome de ficheiro a especificar coa opción de formato 'thumbnail'.border
- Cando se lle asigna o valor "si" engade un bordo á imaxe.location
- Aliñamento orizontal do ficheiro, por exemplo 'dereita', 'esquerda', 'centro', ou 'none'.alignment
- Aliñamento vertical do ficheiro, por exemplo 'baseline', 'middle', 'sub', 'super', 'text-top', 'text-bottom', 'top', ou 'bottom'.size
- Tamaño do ficheiro, por exemplo '100px', 'x100px' ou '100x100px'.upright
- Para definir o tamaño de imaxes altas e estreitas.link
- Páxina coa que vail ligar o ficheiro. Usa unha cadea en branco para que non se amose esta ligazón.alt
- Texto alternativo da imaxe. Usa unha cadea en branco para que non se amose este texto.caption
- Pé da imaxe.page
- Número de páxina para ficheiros con máis dunha páxina, coma PDFs.class
- Engade un parámetroclass
a ligazón da imaxe. O software MediaWiki engade este parámetro ao atributoclass="..."
do elemento de imaxe<img />
ao renderizar a páxina en HTML.lang
- Engade un atributo de lingua para especificar en que lingua renderizar a imaxe.start
- Especifica un tempo de comezo para os ficheiros de son e vídeo.end
- Especifica un tempo de fin para os ficheiros de son e vídeo.thumbtime
- Especifica o tempo para xerar a vista en miniaura nos ficheiros de vídeo.
Exemplos
[editar a fonte]- Só co ficheiro
mLigaFicheiro.main{file = 'Exemplo.png'}
-- Da o resultado [[Ficheiro:Exemplo.png]]
- Con formato, tamaño, ligazón e texto
mLigaFicheiro.main{
file = 'Exemplo.png',
format = 'miniatura',
size = '220px',
link = 'Wikipedia:Axuda',
caption = 'Un exemplo.'
}
-- Da o resultado [[Ficheiro:Exemplo.png|miniatura|220px|link=Wikipedia:Axuda|Un exemplo.]]
- Con formato, tamaño e bordo
mLigaFicheiro.main{
file = 'Exemplo.png',
format = 'frameless',
size = '220px',
border = true
}
-- Da o resultado [[Ficheiro:Exemplo.png|frameless|border|220px]]
[ máis información | ver o historial | | | ver as instrucións ]
Esta documentación está transcluída desde Módulo:LigazónFicheiro/uso. Os editores poden probar cambios no mesmo en Módulo:LigazónFicheiro/probas.
Por favor, engade as categorías na subpáxina de documentación e os interwikis no Wikidata. Ver as subpáxinas deste módulo.
Por favor, engade as categorías na subpáxina de documentación e os interwikis no Wikidata. Ver as subpáxinas deste módulo.
-- This module provides a library for formatting file wikilinks.
local yesno = require('Módulo:Yesno')
local checkType = require('libraryUtil').checkType
local p = {}
function p._main(args)
checkType('_main', 1, args, 'table')
-- This is basically libraryUtil.checkTypeForNamedArg, but we are rolling our
-- own function to get the right error level.
local function checkArg(key, val, level)
if type(val) ~= 'string' then
error(string.format(
"Erro do tipo especificado no parámetro '%s' de '_main' (espérase unha cadea, obtívose %s)",
key, type(val)
), level)
end
end
local ret = {}
-- Adds a positional parameter to the buffer.
local function addPositional(key)
local val = args[key]
if not val then
return nil
end
checkArg(key, val, 4)
ret[#ret + 1] = val
end
-- Adds a named parameter to the buffer. We assume that the parameter name
-- is the same as the argument key.
local function addNamed(key)
local val = args[key]
if not val then
return nil
end
checkArg(key, val, 4)
ret[#ret + 1] = key .. '=' .. val
end
-- Filename
checkArg('file', args.file, 3)
ret[#ret + 1] = 'Ficheiro:' .. args.file
-- Format
if args.format then
checkArg('format', args.format)
if args.formatfile then
checkArg('formatfile', args.formatfile)
ret[#ret + 1] = args.format .. '=' .. args.formatfile
else
ret[#ret + 1] = args.format
end
end
-- Border
if yesno(args.border) then
ret[#ret + 1] = 'border'
end
addPositional('location')
addPositional('alignment')
addPositional('size')
addNamed('upright')
addNamed('link')
addNamed('alt')
addNamed('page')
addNamed('class')
addNamed('lang')
addNamed('start')
addNamed('end')
addNamed('thumbtime')
addPositional('caption')
return string.format('[[%s]]', table.concat(ret, '|'))
end
function p.main(frame)
local origArgs = require('Módulo:Arguments').getArgs(frame, {
wrappers = 'Modelo:Ligazón Ficheiro'
})
if not origArgs.file then
error("Parámetro 'file' non atopado en [[Modelo:Ligazón Ficheiro]]", 0)
end
-- Copy the arguments that were passed to a new table to avoid looking up
-- every possible parameter in the frame object.
local args = {}
for k, v in pairs(origArgs) do
-- Make _BLANK a special argument to add a blank parameter. For use in
-- conditional templates etc. it is useful for blank arguments to be
-- ignored, but we still need a way to specify them so that we can do
-- things like [[File:Example.png|link=]].
if v == '_BLANK' then
v = ''
end
args[k] = v
end
return p._main(args)
end
return p