Module:Concat

local p = {} local getArgs

function p.main(frame) if not getArgs then getArgs = require('Module:Arguments').getArgs end local args = getArgs(frame, {		wrappers = 'Template:Concat',		trim = false	}) return p._main(args, args.sep) end

function p._main(args, sep) args = args or {} sep = sep or ', ' local iargs = {} for k, v in pairs(args) do		if type(k) == 'number' and k >= 1 and math.floor(k) == k and string.find(v, '%S') then table.insert(iargs, k)		end end table.sort(iargs) for i, v in ipairs(iargs) do		iargs[i] = mw.text.trim(args[v]) end return table.concat(iargs, sep) end

return p