모듈:Transclution

리버티게임(개발), 모두가 만들어가는 자유로운 게임
둘러보기로 이동 검색으로 이동

이 모듈에 대한 설명문서는 모듈:Transclution/설명문서에서 만들 수 있습니다

local p = {}

function p.create(name, args)
	if not args or #args <= 0 then
		return '{{' .. name .. '}}'
	end
	
	local txt = '{{' .. name
	
	for value in ipairs(args) do
		txt = txt .. '|' .. mw.text.encode(value)
	end
	
	for key, value in pairs(args) do
		key = tonumber(key) or key
		
		if not (type(key) == 'number' and key <= #args) then
			txt = txt .. '|' .. mw.text.encode(key) .. '=' .. mw.text.encode(value)
		end
	end
	
	return txt .. '}}'
end

function p.parse(text)
	return mw.jsonDecode(mw.getCurrentFrame():preprocess('{{#invoke:Transclution/proxy|' .. text:sub(3)))
end

return p