Module:DemoTemplate: Difference between revisions
From the Croc Wiki, the Croc encyclopedia
Jump to navigationJump to search
Content added Content deleted
(←Created page with 'require('Module:No globals') local newBuffer = require('Module:OutputBuffer') local mt = {} function mt.__index(t, title) return function(frame) local getBu...') |
(handle = signs in parameters) |
||
Line 11: | Line 11: | ||
for k,v in ipairs(frame.args) do |
for k,v in ipairs(frame.args) do |
||
ipairsArgs[k] = true |
ipairsArgs[k] = true |
||
if string.find(v, '=', 1, true) then |
|||
printf('|%d=%s', k, v) |
|||
else |
|||
printf('|%s', v) |
|||
end |
|||
end |
end |
||
for k,v in pairs(frame.args) do |
for k,v in pairs(frame.args) do |
||
if not ipairsArgs[k] then |
if not ipairsArgs[k] then |
||
printf('|%s=%s', k, v) |
printf('|%s=%s', string.gsub(k, '=', '{{=}}'), v) |
||
end |
end |
||
end |
end |
Revision as of 01:18, June 11, 2015
Documentation for this module may be created at Module:DemoTemplate/doc
require('Module:No globals')
local newBuffer = require('Module:OutputBuffer')
local mt = {}
function mt.__index(t, title)
return function(frame)
local getBuffer, print, printf = newBuffer()
printf('{{%s', title)
local ipairsArgs = {}
for k,v in ipairs(frame.args) do
ipairsArgs[k] = true
if string.find(v, '=', 1, true) then
printf('|%d=%s', k, v)
else
printf('|%s', v)
end
end
for k,v in pairs(frame.args) do
if not ipairsArgs[k] then
printf('|%s=%s', string.gsub(k, '=', '{{=}}'), v)
end
end
print('}}')
return '<code>' .. mw.text.nowiki(getBuffer()) .. '</code> → ' .. frame:expandTemplate{title = title, args = frame.args}
end
end
return setmetatable({}, mt)