Module:DemoTemplate: Difference between revisions
From Zoophilia Wiki
Jump to navigationJump to search
meta>Jackmcbarn (handle = signs in parameters) |
meta>Jackmcbarn (use string.format at the end) |
||
Line 23: | Line 23: | ||
end | end | ||
print('}}') | print('}}') | ||
return '<code>' | return string.format('<code>%s</code> → %s', mw.text.nowiki(getBuffer()), frame:expandTemplate{title = title, args = frame.args}) | ||
end | end | ||
end | end | ||
return setmetatable({}, mt) | return setmetatable({}, mt) |
Revision as of 01:38, 11 June 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 string.format('<code>%s</code> → %s', mw.text.nowiki(getBuffer()), frame:expandTemplate{title = title, args = frame.args}) end end return setmetatable({}, mt)