Module:Separated entries: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (Using string.find() instead of mw.ustring.find() for improved performance.) |
||
Line 19: | Line 19: | ||
local iargs = {} | local iargs = {} | ||
for k, v in pairs(args) do | for k, v in pairs(args) do | ||
if type(k) == 'number' and k >= 1 and math.floor(k) == k and | if type(k) == 'number' and k >= 1 and math.floor(k) == k and string.find(v, '%S') then | ||
table.insert(iargs, k) | table.insert(iargs, k) | ||
end | end |
Revision as of 01:16, 27 July 2014
You might want to create a documentation page for this module.
Editors can experiment in this module's sandbox and testcases pages.
Please add categories to the /doc subpage. Subpages of this module.
Editors can experiment in this module's sandbox and testcases pages.
Please add categories to the /doc subpage. Subpages of 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', -- Wrappers invokes frame:title()
parentOnly = true,
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