模块:Dictionary/Vocabulary.lua:修订间差异

来自「荏苒之境」
无编辑摘要
无编辑摘要
第1行: 第1行:
local csv = require("Module:Csv.lua")
local csv = require("Module:Csv.lua")
local cargo = mw.ext.cargo
local cargo = mw.ext.cargo
local html = mw.html


local dict_views = require("Module:Dictionary-Views.lua")
local dict_views = require("Module:Dictionary-Views.lua")

2025年8月2日 (六) 03:58的版本

此模块的文档可以在模块:Dictionary/Vocabulary.lua/doc创建

local csv = require("Module:Csv.lua")
local cargo = mw.ext.cargo

local dict_views = require("Module:Dictionary-Views.lua")
local TABLE = dict_views.TABLE
local HEADERS = dict_views.HEADERS

local section = {}

section.show = function(frame)
    local args = frame.args
    local language = args.language
    local format = args.format
    local content = args.content

    local rows

    if format == "csv" then
        rows = csv.parse(content)
    else
        mw.addWarning("无效的词典格式:"..tostring(format))
        return
    end

    for i = 1, #rows do
        local entry = { Language = language}
        local row = rows[i]
        for j = 1, #row do
            entry[HEADERS[j]] = row[j]
        end
        cargo.store(TABLE, entry)
    end

    return dict_views.vocabulary(rows)
end

return section