Module:Liste simple

Utilisation

modifier

Module utilisé par le modèle:Liste simple

Exemples

modifier

Pour des exemples, voir la page de test permettant de tester diverses modifications apportées.

Voir aussi

modifier
-- luacheck: globals mw

local mwTrim = mw.text.trim

local p = {}

function p.to_list( frame )
	local args = frame:getParent().args

	-- cas où on a une liste à puces en premier (et seul) argument numérique
	if args[ 1 ] and args[ 1 ]:match( '^%s*%*' ) and not args[ 2 ] then
		return '\n' .. mwTrim( args[ 1 ] )
	end

	local liste = { '<ul>' }

	for _, value in ipairs( args ) do
		local trimmed = mwTrim( value )
		if trimmed ~= '' then
			-- appends séparés, pour ne pas créer de strings intermédiaires
			liste[ #liste + 1 ] = '<li>'
			liste[ #liste + 1 ] = trimmed
			liste[ #liste + 1 ] = '</li>'
		end
	end

	liste[ #liste + 1 ] = '</ul>'

	return table.concat( liste )
end

return p