Jump to content

Module:Separated entries

Permanently protected module
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Jc86035 (talk | contribs) at 14:30, 25 April 2015 (Testing, does not affect anything using main). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

local getArgs = require('Module:Arguments').getArgs
local p = {}
 
function p.main(frame)
	local args = getArgs(frame, {
		removeBlanks = true,
		trim = false
	})
	return p._main(args)
end
 
function p._main(origArgs)
	local separator = origArgs.separator or ''
	local conjunction = origArgs.conjunction or separator

	args = {}
	for k, v in pairs(origArgs) do
		-- Discard named parameters.
		if type(k) == 'number' then
			table.insert(args, mw.text.trim(v))
		end
	end
	return mw.text.listToText(args, separator, conjunction)
end

function p.notrim(frame)
	local args = getArgs(frame, {
		removeBlanks = true,
		trim = false
	})
	return p._notrim(args)
end

function p._notrim(origArgs)
	local separator = origArgs.separator or ''
	local conjunction = origArgs.conjunction or separator

	args = {}
	for k, v in pairs(origArgs) do
		-- Discard named parameters.
		if type(k) == 'number' then
			table.insert(args, v)
		end
	end
	return mw.text.listToText(args, separator, conjunction)
end

return p