Jump to content

Module:Ustring

Permanently protected module
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Pppery (talk | contribs) at 22:04, 6 March 2019 (Undid revision 885636134 by Ans (talk) What is the purpose of proxying this through Module:LuaCall?). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

p = {}

for k, v in pairs(mw.ustring) do
	p[k] = function(frame)
		local args = frame.args
		for _, v in ipairs(args) do
			args[_] = tonumber(v) or v:gsub("^\\", "", 1)
		end
		if args.tag then
			local tag = {name = args.tag, content = mw.ustring[k](unpack(args)), args = {}}
			for x, y in pairs(args) do
				if type(x)~='number' and x~='tag' then tag.args[x] = y end
			end
			return frame:extensionTag(tag)
		end
		return (mw.ustring[k](unpack(args)))
	end
end

return p