Ir al contenido

Módulo:Pareado

De Wikisource, la biblioteca libre.
Documentación del módulo


Uso

Para su uso en {{pareado}}

Módulo toma todos los parámetros sin nombre, y genera una tabla con dos filas, cada una con la mitad de los parámetros como celdas individuales. En caso de tener una cantidad impar de parámetros, el del medio se queda al final de la fila superior.

Cada fila tiene una clase CSS: pareado_r1 y pareado_r2, más la tabla completa, pareado, que pueden usarse para formatear las filas según los requerimientos de cada trabajo.
Esta documentación está transcluida desde Módulo:Pareado/doc.
Los editores pueden experimentar en la zona de pruebas de este módulo.
Por favor, añade las categorías e interwikis a la subpágina de documentación. Subpáginas de este módulo.

local p = {}
function p.pareado( frame ) -- función principal {{copla alineada}}
    local argus = {}
	local words = {}
	local wordcount = 0
	for k,v in pairs(frame:getParent().args) do
		if type(k) == 'number' then
			if (v == '' or v == ' ' or v == '\n') then v = " " end -- reemplazo en blanco por no tan en blanco
			words[k] = v
			wordcount = wordcount + 1
		else
			argus[k] = v
		end
	end
	local html = mw.html.create() -- cuerpo principal de la plantilla
	local t = html:tag('div'):addClass('pareado')
	
	for var=1,math.ceil(wordcount/2) do
		local inner = t:tag('div'):addClass('pareado_inner')
		inner:tag('div'):addClass('pareado_r1'):wikitext(words[var])
		inner:tag('div'):addClass('pareado_r2'):wikitext(words[var + math.ceil(wordcount/2)])
	end
	return tostring(html)
end

return p