模块:Int

求闻百科,共笔求闻
文档图示 模块文档[创建] [跳转到代码]

本模块还没有文档页面。

您可以创建文档以让用户更好地理解本模块的用途。
编者可以在本模块的沙盒创建 | 镜像和测试样例创建页面进行实验。
请将模块自身所属的分类添加在文档中。本模块的子页面
--修改自[[mw:Module:Int]]
local int = {}

function int.int(frame)
    local args = frame.args
    local pargs = (frame:getParent() or {}).args
    local arguments = {}
    local arguments_subst = ''
    local arguments_qqx = ''
    for k, v in pairs(pargs) do
        local n = tonumber(k) or 0
        if (n >= 2) then
            arguments[n - 1] = mw.text.trim(v)
            arguments_subst = arguments_subst .. '|' .. mw.text.trim(v)
            arguments_qqx = arguments_qqx .. ',' .. mw.text.trim(v)
        else
        end
    end
    if mw.isSubsting() then
        return '{{int:' .. args[1] .. arguments_subst ..'}}'
    else
        local msg = mw.message.new(mw.text.trim(args[1]), arguments)
        local lang = pargs['lang'] or args['lang'] or frame:callParserFunction{ name = 'int', args = {'Conversionname'} }
        if (frame:callParserFunction{ name = 'int', args = {'Lang'} } == 'qqx') then
            return '(' .. args[1] .. arguments_qqx .. ')'
        else
            if (msg:exists() and not msg:isDisabled()) then
                local msgstr = msg:inLanguage(lang):plain()
                return frame:preprocess(msgstr)
            else
                return '⧼' .. args[1] .. '⧽'
            end
        end
    end
end

return int