Modul:grammar-export

Hej, du har kommit hit för att leta efter betydelsen av ordet Modul:grammar-export. I DICTIOUS hittar du inte bara alla ordboksbetydelser av ordet Modul:grammar-export, utan du får också veta mer om dess etymologi, dess egenskaper och hur man säger Modul:grammar-export i singular och plural. Allt du behöver veta om ordet Modul:grammar-export finns här. Definitionen av ordet Modul:grammar-export hjälper dig att vara mer exakt och korrekt när du talar eller skriver dina texter. Genom att känna till definitionen avModul:grammar-export och andra ord berikar du ditt ordförråd och får tillgång till fler och bättre språkliga resurser.

Dokumentation för denna modul finns på /dok (redigera), /test


Syfte

Samla export av böjningsformer från mallar genom moduler på ett ställe.

Användning

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