模組:RT/sandbox

维基百科,自由的百科全书
文档图示 模块文档[创建]
local RT = {}
local yesno = require('Module:Yesno')
local mError = require('Module:Error').error

RT.namespaceTemplate = {
	 [10] = '模板重定向',--Template
	 [14] = '分類捷徑重定向'--Category
}

function main (args, frame)
	local templatelist = {}
	local wt = '{{Redirect_category_shell||\n'
	local i = 1
    while true do
        id = args[i]
        if (id ~= nil) then
            if id ~= '' then
                if args[i .. '_arg1'] ~= nil then
                    table.insert(templatelist, '{{' .. args[i] .. '重定向|' .. args[i .. '_arg1'] .. '}}' )
                else
                	table.insert(templatelist, '{{' .. args[i] .. '重定向' .. '}}' )
                end
            end
            i = i + 1
        else
            break
        end
    end
    local ns = mw.title.getCurrentTitle().namespace
	if ((RT.namespaceTemplate[ns] ~= nil) and ((ns ~= 14) or ((ns == 14) and ((args['重定向到'] ~= nil) or (args['重新導向到'] ~= nil) or (args['RTC'] ~= nil))))) then
		wt = wt .. '{{' .. RT.namespaceTemplate[ns] .. '}}\n'
	end
    wt = wt .. mw.text.listToText(templatelist,'\n') .. '\n'
	return frame:preprocess( wt ..  '}}' )
end

function RT.main(frame)
	local args = {}
	for k, v in pairs( frame:getParent().args ) do
		args[k] = v
	end
    return main(args, frame)
end

return RT