打开/关闭菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

模块:角色卡片:修订间差异

来自Gal中文百科
(创建页面,内容为“local p = {} function p.newline(frame) local args = frame.args local paragraphs = {} local text = args['变量'] for line in text:gmatch("[^\r\n]+") do table.insert(paragraphs, "<p>" .. line .. "</p>") end return table.concat(paragraphs, "\n") --return textToParagraphs(args['变量']) end function p.img(frame) local args = frame.args local data = args['img'] local text = "" for item in data:gmatch("[^;]+") d…”)
 
无编辑摘要
 
(未显示同一用户的24个中间版本)
第1行: 第1行:
local p = {}
local p = {}
 
-- 换行处理 {{#invoke:角色卡片|newline|变量=xxx}}
function p.newline(frame)
function p.newline(frame)
     local args = frame.args
     local args = frame.args
     local paragraphs = {}
     local paragraphs = {}
     local text = args['变量']
     local text = args['变量']
     for line in text:gmatch("[^\r\n]+") do
     for line in text:gmatch("[^\r\n]*[\r\n]?") do
         table.insert(paragraphs, "<p>" .. line .. "</p>")
         if line ~= "" then
            if line == "\n" or line == "\r\n" then
                table.insert(paragraphs, "<br>")
            else
                table.insert(paragraphs, "<p>" .. line .. "</p>")
            end
        end
     end
     end
     return table.concat(paragraphs, "\n")
     return table.concat(paragraphs, "\n")
    --return textToParagraphs(args['变量'])
end
end
 
-- 角色卡片图片处理
function p.img(frame)
function p.kp_img(frame)
     local args = frame.args
     local args = frame.args
     local data = args['img']
     local data = args['img']
    local sub = args['sub']
     local text = ""
     local text = ""
    local dataArray = {}
     for item in data:gmatch("[^;]+") do
     for item in data:gmatch("[^;]+") do
         -- 将拆分出的数据添加到text
         -- 将拆分出的数据添加到text
         text = text .. item .. ";"
        local abc = frame:callParserFunction('filepath:'..item)
         text = text .. abc .. ";"
        table.insert(dataArray, item)
     end
     end
     -- 删除最后一个;号
     -- 删除最后一个;号
     text = string.sub(text, 1, -2)
     text = string.sub(text, 1, -2)
     return text
     if sub == nil then
        return text
    else
        local ss = tonumber(sub)
        return dataArray[ss]
    end
end
end


-- 解析以=分割的信息
function p.jskp(frame)
function p.jskp(frame)
     local args = frame.args
     local args = frame.args
第34行: 第49行:
         if key and value then
         if key and value then
             --print(key, "=", value)
             --print(key, "=", value)
             parsed_data = parsed_data..'<p>'..key..":"..value..'</p>'
             parsed_data = parsed_data..'<p><strong>'..key.."</strong>:"..value..'</p>'
         end
         end
     end
     end
第40行: 第55行:
end
end


function textToParagraphs(text)
    local paragraphs = {}
    for line in text:gmatch("[^\r\n]+") do
        table.insert(paragraphs, "<p>" .. line .. "</p>")
    end
    return table.concat(paragraphs, "\n")
end
return p
return p

2024年4月20日 (六) 05:57的最新版本

local p = {}
-- 换行处理 {{#invoke:角色卡片|newline|变量=xxx}}
function p.newline(frame)
    local args = frame.args
    local paragraphs = {}
    local text = args['变量']
    for line in text:gmatch("[^\r\n]*[\r\n]?") do
        if line ~= "" then
            if line == "\n" or line == "\r\n" then
                table.insert(paragraphs, "<br>")
            else
                table.insert(paragraphs, "<p>" .. line .. "</p>")
            end
        end
    end
    return table.concat(paragraphs, "\n")
end
-- 角色卡片图片处理
function p.kp_img(frame)
    local args = frame.args
    local data = args['img']
    local sub = args['sub']
    local text = ""
    local dataArray = {}
    for item in data:gmatch("[^;]+") do
        -- 将拆分出的数据添加到text
        local abc = frame:callParserFunction('filepath:'..item)
        text = text .. abc .. ";"
        table.insert(dataArray, item)
    end
    -- 删除最后一个;号
    text = string.sub(text, 1, -2)
    if sub == nil then
        return text
    else
        local ss = tonumber(sub)
        return dataArray[ss]
    end
end

-- 解析以=分割的信息
function p.jskp(frame)
    local args = frame.args
    local input = args['变量']
    local parsed_data = ''

    for line in input:gmatch("[^\r\n]+") do
        local key, value = line:match("(.*)=(.*)")
        if key and value then
            --print(key, "=", value)
            parsed_data = parsed_data..'<p><strong>'..key.."</strong>:"..value..'</p>'
        end
    end
    return parsed_data
end

return p