Module:Sandbox: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 2: | Line 2: | ||
function p.main(frame) | function p.main(frame) | ||
local origArgs | |||
if frame == mw.getCurrentFrame() then | if frame == mw.getCurrentFrame() then | ||
-- We're being called via #invoke. If the invoking template | |||
-- passed any arguments, use them. Otherwise, use the | |||
-- arguments that were passed into the template. | |||
origArgs = frame:getParent().args | |||
else | else | ||
-- We're being called from another module or from the debug | |||
-- console, so assume the arguments are passed in directly. | |||
origArgs = frame | |||
end | end | ||
local args = {} | |||
for k, v in pairs(origArgs) do | |||
if type(k) == 'number' and k >= 1 and math.floor(k) == k and mw.ustring.match(v, '%S') then | |||
table.insert(args, k) | |||
end | |||
end | |||
return table.concat(args, origArgs.sep or ', ') | |||
end | end | ||
Revision as of 05:11, 25 July 2014
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 = {}
function p.main(frame)
local origArgs
if frame == mw.getCurrentFrame() then
-- We're being called via #invoke. If the invoking template
-- passed any arguments, use them. Otherwise, use the
-- arguments that were passed into the template.
origArgs = frame:getParent().args
else
-- We're being called from another module or from the debug
-- console, so assume the arguments are passed in directly.
origArgs = frame
end
local args = {}
for k, v in pairs(origArgs) do
if type(k) == 'number' and k >= 1 and math.floor(k) == k and mw.ustring.match(v, '%S') then
table.insert(args, k)
end
end
return table.concat(args, origArgs.sep or ', ')
end
function p_main(args)
end
return p