Module:Separated entries: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 7: | Line 7: | ||
end | end | ||
local args = getArgs(frame, { | local args = getArgs(frame, { | ||
-- wrappers = 'Template:Concat' -- Wrappers invokes frame:title() | -- 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 = {} | 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 mw.ustring.find(v, '%S') then | ||
table.insert(iargs, k) | table.insert(iargs, k) | ||
end | end | ||
Line 18: | Line 25: | ||
table.sort(iargs) | table.sort(iargs) | ||
for i, v in ipairs(iargs) do | for i, v in ipairs(iargs) do | ||
iargs[i] = | iargs[i] = mw.text.trim(args[v]) | ||
end | end | ||
return table.concat(iargs, sep) | return table.concat(iargs, sep) | ||
end | end | ||
return p | return p |
Revision as of 20:00, 26 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 mw.ustring.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