Module:head/languages/ryn: Difference between revisions

From Laenkea
Jump to navigation Jump to search
No edit summary
No edit summary
Line 15: Line 15:
du = {label = "dual", glossary = true},
du = {label = "dual", glossary = true},
pl = {label = "plural", glossary = true},
pl = {label = "plural", glossary = true},
adv = {label = "adverb", glossary = true},
cmp = {label = "comparative", glossary = true},
cmp = {label = "comparative", glossary = true},
sup = {label = "superlative", glossary = true},
sup = {label = "superlative", glossary = true},
Line 28: Line 29:
verb = {
verb = {
["pres-3s"] = {label = "3rd person singular present"},
["pres-3s"] = {label = "3rd person singular present"},
["aor-3s"] = {label = "3rd person singular aorist"},
},
},
}
}

Revision as of 12:34, 7 August 2023

Documentation for this module may be created at Module:head/languages/ryn/documentation

local export = {}

local m_head = require("Module:head")
local m_head_languages = require("Module:head/languages")
local m_parameters = require("Module:parameters")
local ryn = require("Module:languages").get_by_code("ryn")

local params = {
	[1] = {list = true},
	head = {},
	nocat = {},
}
local inflection_params = {
	adjective = {
		du = {label = "dual", glossary = true},
		pl = {label = "plural", glossary = true},
		adv = {label = "adverb", glossary = true},
		cmp = {label = "comparative", glossary = true},
		sup = {label = "superlative", glossary = true},
	},
	noun = {
		du = {label = "dual", glossary = true},
		pl = {label = "plural", glossary = true},
		dim = {label = "diminutive", glossary = true},
		aug = {label = "augmentative", glossary = true},
		fem = {label = "feminine", glossary = true},
		masc = {label = "masculine", glossary = true},
	},
	verb = {
		["pres-3s"] = {label = "3rd person singular present"},
		["aor-3s"] = {label = "3rd person singular aorist"},
	},
}

function export.adjective(frame)
	local args, inflections = m_head_languages.get_args(frame:getParent().args, params, inflection_params.adjective)
	return m_head.full_head{
		term = mw.title.getCurrentTitle().text,
		head = args["head"],
		nocat = args["nocat"],
		language = ryn,
		pos = "adjective",
		genders = args[1],
		inflections = inflections,
	} 
end

function export.noun(frame)
	local args, inflections = m_head_languages.get_args(frame:getParent().args, params, inflection_params.noun)
	return m_head.full_head{
		term = mw.title.getCurrentTitle().text,
		head = args["head"],
		nocat = args["nocat"],
		language = ryn,
		pos = "noun",
		genders = args[1],
		inflections = inflections,
	}
end

function export.verb(frame)
	local args, inflections = m_head_languages.get_args(frame:getParent().args, params, inflection_params.verb)
	return m_head.full_head{
		term = m_head_languages.get_term(),
		head = args["head"],
		nocat = args["nocat"],
		language = ryn,
		pos = "verb",
		genders = args[1],
		inflections = inflections,
	}
end

return export