Module:jugs-noun-cell

From Linguifex
Revision as of 01:13, 18 March 2026 by Wfeozawra (talk | contribs) (Created page with "local m_links = require("Module:links") local lang = require("Module:languages").getByCode("non") local export = {} local accel_forms = { --NOUNS nsi = "nom|s", nsd = "def|nom|s", npi = "nom|p", npd = "def|nom|p", asi = "acc|s", asd = "def|acc|s", api = "acc|p", apd = "def|acc|p", dsi = "dat|s", dsd = "def|dat|s", dpi = "dat|p", dpd = "def|dat|p", gsi = "gen|s", gsd = "def|gen|s", gpi = "gen|p", gpd = "def|gen|p", --LAUDATIVES nsi_la = "nom|s|la",...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Documentation for this module may be created at Module:jugs-noun-cell/doc

local m_links = require("Module:links")
local lang = require("Module:languages").getByCode("non")
local export = {}

local accel_forms = {
	--NOUNS
	nsi = "nom|s",
	nsd = "def|nom|s",
	npi = "nom|p",
	npd = "def|nom|p",
	asi = "acc|s",
	asd = "def|acc|s",
	api = "acc|p",
	apd = "def|acc|p",
	dsi = "dat|s",
	dsd = "def|dat|s",
	dpi = "dat|p",
	dpd = "def|dat|p",
	gsi = "gen|s",
	gsd = "def|gen|s",
	gpi = "gen|p",
	gpd = "def|gen|p",
	
	--LAUDATIVES
	nsi_la = "nom|s|la",
	nsd_la = "def|nom|s|la",
	npi_la = "nom|p|la",
	npd_la = "def|nom|p|la",
	asi_la = "acc|s|la",
	as_lad = "def|acc|s|la",
	api_la = "acc|p|la",
	apd_la = "def|acc|p|la",
	dsi_la = "dat|s|la",
	dsd_la = "def|dat|s|la",
	dpi_la = "dat|p|la",
	dpd_la = "def|dat|p|la",
	gsi_la = "gen|s|la",
	gsd_la = "def|gen|s|la",
	gpi_la = "gen|p|la",
	gpd_la = "def|gen|p|la",
	
}

function export.create(frame)
	local args = frame:getParent().args
	local links = {}
	if not args[1] or args[1] == "" then
		return "―"
	else
		local accel_form = args[2]
		local accel
		if accel_form then
			local mode = args[3]
			if mode and mode_prefix[mode] then
				accel_form = mode_prefix[mode] .. accel_form
			end
			if accel_forms[accel_form] then
				if mode and mode_prepend[mode] then
					accel_form = mode_prepend[mode] .. accel_forms[accel_form]
				else
					accel_form = accel_forms[accel_form]
				end
			end
			accel = {form = accel_form}
		end
		local words = mw.text.split(args[1], "%s*,%s*")
		if words then
			for i,j in ipairs(words) do
				table.insert(links, m_links.full_link({lang = lang, term = j, accel = accel}))
			end
		end
	end
	return table.concat(links, ", ")
end

return export