Dokumentation för denna modul finns på /dok (redigera), /test
Samla export av böjningsformer från mallar genom moduler på ett ställe.
Se Modul:grammar#Externa skript.
local h3 = require("Modul:h3")
local export = {}
local function getTemplateInfo(tname)
local langcode = ""
local tparts = mw.text.split(tname, "-")
for i,v in ipairs(tparts) do
if h3.hasH3(v) then
return {
lang = langcode,
h3 = v,
modulename = langcode .. "-" .. v
}
else
langcode = langcode .. (langcode == "" and v or "-" .. v)
end
end
end
function export.getJson(frame)
local templatename = frame.args
if templatename == "g-länk" then
local module = require("Modul:grammar-link")
local lang = frame.args or ""
local h3 = frame.args or ""
local type = frame.args or "infl"
local text = frame.args
local list = module.linkExport(text, type, lang, h3)
local typekey = type == "infl" and "infl" or "x_" .. type
local export = {
lang = lang,
h3 = h3,
forms = {
= table.concat(list, ", ")
}
}
return mw.text.jsonEncode(export)
else
local info = getTemplateInfo(templatename)
local module = require("Modul:" .. info.modulename)
local json = module.getJson(frame)
return '{"lang":"' .. info.lang
.. '","h3":"' .. info.h3
.. '","forms":' .. json
.. '}'
end
end
return export