模块: Translist

此模块的文档可以在模块:Translist/doc创建

local getArgs = require('Module:Arguments').getArgs
local lang = require('Module:Lang')
local p = {}

function p.main(frame)
	local args = getArgs(frame)
	return p._main(args)
end

function p._main(args)
	local result = ''

    local header = mw.html.create('b')
        :wikitext(args[1] or args['title'] or '??')

    if args['origlang'] then
        header = header:attr('lang', args['origlang'])
    end

    result = result .. tostring(header)

    if args['origlang'] then
        local span = mw.html.create('span')
            :wikitext('(' .. (lang.writtenNames[args['origlang']] or args['origlang']) .. ')')
        result = result .. ' ' .. tostring(span)
    elseif args['desc'] then
        local span = mw.html.create('span')
            :wikitext('(' .. args['desc'] .. ')')
        result = result .. ' ' .. tostring(span)
    end

    for i, item in ipairs(lang.languages) do
        if args[item] then
            result = result .. ' • '

            local span = mw.html.create('span')
                :css('color', '#c09040')
                :wikitext(lang.writtenNames[item])

            result = result .. tostring(span) .. ' '

            span = mw.html.create('span')
                :attr('lang', item)
                :wikitext(args[item])

            result = result .. tostring(span)
        end
    end

    return '<p style="margin:0">' .. result .. '</p>'
end

return p