模块:源代码

来自Timberborn Wiki
跳转到导航 跳转到搜索

可在模块:源代码/doc创建此模块的帮助文档

-- Module: 源代码
-- Get source code of a page
local p = {}
local getArgs = require('Dev:Arguments').getArgs
local fstr = mw.ustring.format -- shortcut for formattig a string

-- test by: = p._main({"Template:Preload/建筑"})
-- test by: = p._main({"Template:Preload/建筑", nowiki="1"})
-- test by: = p._main({"Template:Preload/建筑", includeonly="1"})
function p._main(args)
	local source = mw.title.new(args[1]):getContent()
	if args.includeonly then
		source = mw.ustring.gsub(source, '<includeonly>\n?', '')
		source = mw.ustring.gsub(source, '\n?<\/includeonly>', '')
		source = mw.ustring.gsub(source, '%s*<noinclude>.-<\/noinclude>', '')
	end
	if args.nowiki then
		return fstr("<nowiki>%s</nowiki>", source)
	end
	return source
end

function p.main(frame)
	return p._main(getArgs(frame))
end

return p