Module:Sandbox: 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:Sandbox', | wrappers = 'Template:Sandbox', | ||
trim = false | trim = false | ||
}) | }) | ||
return p._main(args) | return p._main(args, args.sep) | ||
end | end | ||
function p._main(args) | function p._main(args, sep) | ||
local | args = args or {} | ||
sep = sep or ', ' | |||
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 string.find(v, '%S') then | if type(k) == 'number' and k >= 1 and math.floor(k) == k and string.find(v, '%S') then | ||
table.insert( | table.insert(iargs, k) | ||
end | end | ||
end | end | ||
return table.concat( | table.sort(iargs) | ||
for i, v in ipairs(iargs) do | |||
iargs[i] = mw.text.trim(args[v]) | |||
end | |||
return table.concat(iargs, sep) | |||
end | end | ||
return p | return p |
Revision as of 10:51, 21 April 2015
This page is not an actual Scribunto module. It exists to provide editors a place to create experimental modules.
Naming your modules
To keep things tidy, please use the following format to name your experimental modules:
Module:Sandbox/Your username/Module name
Cleaning up unused modules
Experimental modules may be deleted by admins upon request or after a long period of inactivity.
List of modules in this area
For a list of the experimental modules under Module:Sandbox, see Special:PrefixIndex/Module:Sandbox/.
The above documentation is transcluded from Module:Sandbox/doc.
Editors can experiment in this module's sandbox and testcases pages.
Subpages of this module.
Editors can experiment in this module's sandbox and testcases pages.
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:Sandbox',
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