Module:Separated entries: Difference between revisions

From Path of Exile 2 Wiki
Jump to navigation Jump to search
m (Using string.find() instead of mw.ustring.find() for improved performance.)
(The wrappers feature of getArgs can now be used)
Line 7: Line 7:
end
end
local args = getArgs(frame, {
local args = getArgs(frame, {
-- wrappers = 'Template:Concat', -- Wrappers invokes frame:title()
wrappers = 'Template:Concat',
parentOnly = true,
trim = false
trim = false
})
})

Revision as of 02:47, 8 November 2014

Module documentation[view] [edit] [history] [purge]


Lua logo

This module depends on the following other modules:

This module was adapted from Module:Separated entries on Wikipedia.
Adaptation is noted for reference and attribution only. This module may differ from the original in function or in usage. The documentation on Wikipedia may be helpful in understanding this module.

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