Module:la-adj/data

Hello, you have come here looking for the meaning of the word Module:la-adj/data. In DICTIOUS you will not only get to know all the dictionary meanings for the word Module:la-adj/data, but we will also tell you about its etymology, its characteristics and you will know how to say Module:la-adj/data in singular and plural. Everything you need to know about the word Module:la-adj/data you have here. The definition of the word Module:la-adj/data will help you to be more precise and correct when speaking or writing your texts. Knowing the definition ofModule:la-adj/data, as well as those of other words, enriches your vocabulary and provides you with more and better linguistic resources.

This module needs documentation.
Please document this module by describing its purpose and usage on the documentation page.

local decl = {}

local en_utilities_module = "Module:en-utilities"
local la_utilities_module = "Module:la-utilities"
local table_empty_module = "Module:table/empty"
local table_insert_if_not_module = "Module:table/insertIfNot"

local require = require
local umatch = mw.ustring.match
local usub = mw.ustring.sub

local function add_form(...)
	add_form = require(la_utilities_module).add_form
	return add_form(...)
end

local function empty_table(...)
	empty_table = require(table_empty_module)
	return empty_table(...)
end

local function insert_if_not(...)
	insert_if_not = require(table_insert_if_not_module)
	return insert_if_not(...)
end

local function remove_forms(...)
	remove_forms = require(la_utilities_module).remove_forms
	return remove_forms(...)
end

local function singularize(...)
	singularize = require(en_utilities_module).singularize
	return singularize(...)
end

local function glossary_link(anchor, text)
	text = text or anchor
	return "]"
end

local function decl_link(english_declension, decl_text)
	decl_text = decl_text or english_declension .. "-declension"
	return "]"
end

decl = function(data, args)
	local forms, categories = data.forms, data.categories
	local stem = args

	forms = stem
	forms = stem

	forms = stem
	forms = stem

	forms = stem
	forms = stem

	forms = stem
	forms = stem

	forms = stem
	forms = stem

	forms = stem
	forms = stem

	forms = stem
	forms = stem

	insert_if_not(categories, "Latin indeclinable " .. data.pos)
end

decl = function(data, args)
	local forms, types, pos, subtitles, categories = data.forms, data.types, data.pos, data.subtitles, data.categories
	local stem = args

	local singpos, gender = singularize(pos), data.gender
	if gender == "F" then
		data.title = decl_link("first") .. " " .. singpos
	elseif gender then
		data.title = decl_link("second") .. " " .. singpos
	else
		data.title = decl_link("first", "first") .. "/" .. decl_link("second") .. " " .. singpos
	end

	local original
	if types.er then
		local final2 = stem:sub(-2)
		if final2 == "er" then
			insert_if_not(subtitles, "nominative masculine singular in ''-er''")
			insert_if_not(categories, "Latin first and second declension "
				.. pos .. " with nominative masculine singular in -er")
		elseif final2 == "ur" then
			insert_if_not(subtitles, "nominative masculine singular in ''-ur''")
			insert_if_not(categories, "Latin first and second declension "
				.. pos .. " with nominative masculine singular in -ur")
		else
			error("Unrecognized ''-r'' stem (doesn't end in ''-er'' or ''-ur''): " .. stem)
		end
		stem, original = args, stem
	end

	local us = "us"
	local a_sf = "a"
	local um = "um"
	local ae_gsf = "ae"
	local am = "am"
	local a_macron = "ā"
	local i_pl = stem .. "ī"

	if types.greekA or types.greekE then
		insert_if_not(subtitles, "Greek-type")
		insert_if_not(categories, "Latin first and second declension " .. pos .. " with Greek declension")
		if types.greekA then
			us = "os"
			um = "on"
			am = "ān"
		else
			us = "os"
			a_sf = "ē"
			um = "on"
			ae_gsf = "ēs"
			am = "ēn"
			a_macron = "ē"
		end
		i_pl = {i_pl, stem .. "oe"}
	end

	forms = original or (stem .. us)
	forms = stem .. a_sf
	forms = stem .. um
	forms = i_pl
	forms = stem .. "ae"
	forms = stem .. "a"

	forms = stem .. "ī"
	forms = stem .. ae_gsf
	forms = stem .. "ī"
	forms = stem .. "ōrum"
	forms = stem .. "ārum"
	forms = stem .. "ōrum"

	forms = stem .. "ō"
	forms = stem .. "ae"
	forms = stem .. "ō"
	forms = stem .. "īs"
	forms = stem .. "īs"
	forms = stem .. "īs"

	forms = stem .. um
	forms = stem .. am
	forms = stem .. um
	forms = stem .. "ōs"
	forms = stem .. "ās"
	forms = stem .. "a"

	forms = stem .. "ō"
	forms = stem .. a_macron
	forms = stem .. "ō"
	forms = stem .. "īs"
	forms = stem .. "īs"
	forms = stem .. "īs"

	forms = original or (stem .. "e")
	forms = stem .. a_sf
	forms = stem .. um
	forms = i_pl
	forms = stem .. "ae"
	forms = stem .. "a"

	forms = stem .. "ī"
	forms = stem .. "ae"
	forms = stem .. "ī"
	forms = stem .. "īs"
	forms = stem .. "īs"
	forms = stem .. "īs"

	if types.ius then
		insert_if_not(subtitles, "pronominal")
		--insert_if_not(subtitles, "with genitive singular in ''-ī̆us'' and dative singular in ''-ī''")
		insert_if_not(categories, "Latin first and second declension " .. pos .. " with genitive singular in -ī̆us")
		forms = stem .. "ī̆us"
		forms = stem .. "ī̆us"
		forms = stem .. "ī̆us"
		forms = stem .. "ī"
		forms = stem .. "ī"
		forms = stem .. "ī"
	elseif types.not_ius then
		insert_if_not(subtitles, "non-pronominal")
		--insert_if_not(subtitles, "with normal genitive and dative singular")
	end
	if stem == "me" then
		forms = "mī"
	end
	if types.ic then
		insert_if_not(subtitles, "''hic''-type")
		--insert_if_not(subtitles, "with genitive singular ending in ''-ius'' and dative singular ending in ''-ic''")

		local oc = "oc"
		local oc_macron = "ōc"
		if stem == "ill" then
			oc = "uc"
			oc_macron = "ūc"
		end

		forms = stem .. "ic"
		forms = stem .. "aec"
		forms = stem .. oc
		forms = stem .. "aec"

		forms = stem .. "uius"
		forms = stem .. "uius"
		forms = stem .. "uius"

		forms = stem .. "uic"
		forms = stem .. "uic"
		forms = stem .. "uic"

		forms = stem .. "unc"
		forms = stem .. "anc"
		forms = stem .. oc
		forms = stem .. "aec"

		forms = stem .. "ōc"
		forms = stem .. "āc"
		forms = stem .. oc_macron

		forms = "-"
		forms = "-"
		forms = "-"
		forms = "-"
		forms = "-"
		forms = "-"
	end

	if types.distr then
		if stem:sub(-1) == "n" then
			insert_if_not(subtitles, "distributive, normally plural-only; short genitive plurals in ''-num'' preferred")
			forms = {stem .. "um", stem .. "ōrum"}
			forms = {stem .. "um", stem .. "ārum"}
			forms = {stem .. "um", stem .. "ōrum"}
		else
			error("Unrecognized distributive numeral stem (doesn't end in ''n''): " .. stem)
		end
		original = stem
		stem = args
	end

	insert_if_not(categories, "Latin first and second declension " .. pos)
end

decl = function(data, args)
	local forms, subtitles, categories = data.forms, data.subtitles, data.categories
	local stem = args

	insert_if_not(subtitles, "masculine and neuter forms identical to feminine forms")

	forms = stem .. "a"
	forms = stem .. "ae"
	forms = stem .. "a"

	forms = stem .. "ae"
	forms = stem .. "ārum"

	forms = stem .. "ae"
	forms = stem .. "īs"

	forms = stem .. "am"
	forms = stem .. "a"
	forms = stem .. "ās"
	forms = stem .. "a"

	forms = stem .. "ā"
	forms = stem .. "īs"

	forms = stem .. "a"
	forms = stem .. "ae"
	forms = stem .. "a"

	forms = stem .. "ae"
	forms = stem .. "īs"

	insert_if_not(categories, "Latin first declension " .. data.pos)
end

decl = function(data, args)
	local forms, types, pos, subtitles, categories = data.forms, data.types, data.pos, data.subtitles, data.categories
	local stem = args

	data.title = decl_link("second") .. " " .. singularize(pos)
	insert_if_not(subtitles, "feminine forms identical to masculine forms")

	local us = "us"
	local um = "um"
	local i_pl = stem .. "ī"

	if types.greek then
		insert_if_not(subtitles, "Greek-type")
		insert_if_not(categories, "Latin second declension " .. pos .. " with Greek declension")
		us = "os"
		um = "on"
		i_pl = {i_pl, stem .. "oe"}
	end

	forms = stem .. us
	forms = stem .. um
	forms = i_pl
	forms = stem .. "a"

	forms = stem .. "ī"
	forms = stem .. "ī"
	forms = stem .. "ōrum"
	forms = stem .. "ōrum"

	forms = stem .. "ō"
	forms = stem .. "ō"
	forms = stem .. "īs"
	forms = stem .. "īs"

	forms = stem .. um
	forms = stem .. um
	forms = stem .. "ōs"
	forms = stem .. "a"

	forms = stem .. "ō"
	forms = stem .. "ō"
	forms = stem .. "īs"
	forms = stem .. "īs"

	forms = stem .. "e"
	forms = stem .. um
	forms = i_pl
	forms = stem .. "a"

	forms = stem .. "ī"
	forms = stem .. "ī"
	forms = stem .. "īs"
	forms = stem .. "īs"

	insert_if_not(categories, "Latin second declension " .. pos)
end

decl = function(data, args)
	local forms, types, pos, subtitles, notes, categories = data.forms, data.types, data.pos, data.subtitles, data.notes, data.categories
	local stem1, stem2 = args, args

	local singpos = singularize(pos)
	if data.gender then
		data.title = decl_link("third") .. " " .. singpos
	else
		data.title = decl_link("third") .. " one-termination " .. singpos
	end

	forms = stem1
	forms = stem1
	forms = stem2 .. "ēs"
	forms = stem2 .. "ia"

	forms = stem2 .. "is"
	forms = stem2 .. "is"
	forms = stem2 .. "ium"
	forms = stem2 .. "ium"

	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"

	forms = stem2 .. "em"
	forms = stem1
	forms = stem2 .. "ēs"
	forms = stem2 .. "ia"

	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"

	forms = stem1
	forms = stem1
	forms = stem2 .. "ēs"
	forms = stem2 .. "ia"

	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"

	if types.par then
		insert_if_not(subtitles, "non-i-stem")
		forms = stem2 .. "a"
		forms = stem2 .. "um"
		forms = stem2 .. "um"
		forms = stem2 .. "e"
		forms = stem2 .. "e"
		forms = {stem2 .. "ī", stem2 .. "e"}
		forms = {stem2 .. "ī", stem2 .. "e"}
		forms = stem2 .. "a"
		forms = stem2 .. "a"
	elseif types.not_par then
		insert_if_not(subtitles, "i-stem")
	end

	if types.trix then
		insert_if_not(subtitles, "feminine-only in the singular, feminine- and neuter-only in the plural")
		remove_forms(forms, {"_m$", "sg_n$"})

		forms = stem1
		forms = stem2 .. "is"
		forms = stem2 .. "ī"
		forms = stem2 .. "em"
		forms = {stem2 .. "e", stem2 .. "ī"}
		forms = stem1
		forms = stem2 .. "ēs"
		forms = stem2 .. "ium"
		forms = stem2 .. "ibus"
		forms = stem2 .. "ēs"
		forms = stem2 .. "ibus"
		forms = stem2 .. "ēs"
	end

	local es_base = stem1:match("^(.-)ēs$")
	if es_base and es_base == stem2 then
		if types.greek then
			local note1 = "It is unknown whether Classical Latin preserved (or would have preserved) the shortness of the original Greek short ending."
			local note2 = "It is unknown whether adjectives of this type would use i-stem or consonant-stem endings in Classical Latin: the relevant forms are not attested. Depending on the word, either ending or both may be attested in New Latin."
			forms = {stem2 .. "es", stem2 .. "ēs"}
			notes = note1
			forms = {stem2 .. "es", stem2 .. "ēs"}
			notes = note1
			forms = {stem2 .. "es", stem2 .. "ēs"}
			notes = note1
			forms = {stem2 .. "es", stem2 .. "ēs"}
			notes = note1
			forms = {stem2 .. "a", stem2 .. "ia"}
			notes = note2
			forms = {stem2 .. "a", stem2 .. "ia"}
			notes = note2
			forms = {stem2 .. "a", stem2 .. "ia"}
			notes = note2
			forms = {stem2 .. "e", stem2 .. "ī"}
			notes = note2
			forms = {stem2 .. "e", stem2 .. "ī"}
			notes = note2
			forms = {stem2 .. "e", stem2 .. "ī"}
			notes = note2
			forms = {stem2 .. "um", stem2 .. "ium"}
			notes = note2
			forms = {stem2 .. "um", stem2 .. "ium"}
			notes = note2
			forms = {stem2 .. "um", stem2 .. "ium"}
			notes = note2
			insert_if_not(subtitles, "Greek-type")
		elseif types.not_greek then
			insert_if_not(subtitles, "non-Greek-type")
		end
	end

	insert_if_not(categories, "Latin third declension " .. pos)
	insert_if_not(categories, "Latin third declension " .. pos .. " of one termination")
end

decl = function(data, args)
	local forms, pos, categories = data.forms, data.pos, data.categories
	local stem = args

    data.title = decl_link("third") .. " comparative " .. singularize(pos)

	forms = stem .. "or"
	forms = stem .. "or"
	forms = stem .. "us"
	forms = stem .. "ōrēs"
	forms = stem .. "ōrēs"
	forms = stem .. "ōra"

	forms = stem .. "ōris"
	forms = stem .. "ōris"
	forms = stem .. "ōris"
	forms = stem .. "ōrum"
	forms = stem .. "ōrum"
	forms = stem .. "ōrum"

	forms = stem .. "ōrī"
	forms = stem .. "ōrī"
	forms = stem .. "ōrī"
	forms = stem .. "ōribus"
	forms = stem .. "ōribus"
	forms = stem .. "ōribus"

	forms = stem .. "ōrem"
	forms = stem .. "ōrem"
	forms = stem .. "us"
	forms = {stem .. "ōrēs", stem .. "ōrīs"}
	forms = {stem .. "ōrēs", stem .. "ōrīs"}
	forms = stem .. "ōra"

	forms = {stem .. "ōre", stem .. "ōrī"}
	forms = {stem .. "ōre", stem .. "ōrī"}
	forms = {stem .. "ōre", stem .. "ōrī"}
	forms = stem .. "ōribus"
	forms = stem .. "ōribus"
	forms = stem .. "ōribus"

	forms = stem .. "or"
	forms = stem .. "or"
	forms = stem .. "us"
	forms = stem .. "ōrēs"
	forms = stem .. "ōrēs"
	forms = stem .. "ōra"

	forms = {stem .. "ōrī", stem .. "ōre"}
	forms = {stem .. "ōrī", stem .. "ōre"}
	forms = {stem .. "ōrī", stem .. "ōre"}
	forms = stem .. "ōribus"
	forms = stem .. "ōribus"
	forms = stem .. "ōribus"

	insert_if_not(categories, "Latin third declension " .. pos)
	insert_if_not(categories, "Latin comparative adjectives")

end

decl = function(data, args)
	local forms, notes = data.forms, data.notes
	local stem2 = args

	decl(data, args)
	data.title = decl_link("third") .. " participle"

	local note1 = "When used purely as an adjective."

	forms = {stem2 .. "e", stem2 .. "ī"}
	notes = note1
	forms = {stem2 .. "e", stem2 .. "ī"}
	notes = note1
	forms = {stem2 .. "ēs", stem2 .. "īs"}
end

decl = function(data, args)
	local forms, pos, categories = data.forms, data.pos, data.categories
	local stem = args

	local singpos = singularize(pos)
	if data.gender then
		data.title = decl_link("third") .. " " .. singpos
	else
		data.title = decl_link("third") .. " two-termination " .. singpos
	end

	forms = stem .. "is"
	forms = stem .. "e"
	forms = stem .. "ēs"
	forms = stem .. "ia"

	forms = stem .. "is"
	forms = stem .. "is"
	forms = stem .. "ium"
	forms = stem .. "ium"

	forms = stem .. "ī"
	forms = stem .. "ī"
	forms = stem .. "ibus"
	forms = stem .. "ibus"

	forms = stem .. "em"
	forms = stem .. "e"
	forms = {stem .. "ēs", stem .. "īs"}
	forms = stem .. "ia"

	forms = stem .. "ī"
	forms = stem .. "ī"
	forms = stem .. "ibus"
	forms = stem .. "ibus"

	forms = stem .. "is"
	forms = stem .. "e"
	forms = stem .. "ēs"
	forms = stem .. "ia"

	forms = stem .. "ī"
	forms = stem .. "ī"
	forms = stem .. "ibus"
	forms = stem .. "ibus"

	insert_if_not(categories, "Latin third declension " .. pos)
	insert_if_not(categories, "Latin third declension " .. pos .. " of two terminations")
end

decl = function(data, args)
	local forms, pos, categories = data.forms, data.pos, data.categories
	local stem1, stem2 = args, args

	local singpos = singularize(pos)
	if data.gender then
		data.title = decl_link("third") .. " " .. singpos
	else
		data.title = decl_link("third") .. " three-termination " .. singpos
	end

	forms = stem1
	forms = stem2 .. "is"
	forms = stem2 .. "e"
	forms = stem2 .. "ēs"
	forms = stem2 .. "ēs"
	forms = stem2 .. "ia"

	forms = stem2 .. "is"
	forms = stem2 .. "is"
	forms = stem2 .. "is"
	forms = stem2 .. "ium"
	forms = stem2 .. "ium"
	forms = stem2 .. "ium"

	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"

	forms = stem2 .. "em"
	forms = stem2 .. "em"
	forms = stem2 .. "e"
	forms = stem2 .. "ēs"
	forms = stem2 .. "ēs"
	forms = stem2 .. "ia"

	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"

	forms = stem1
	forms = stem2 .. "is"
	forms = stem2 .. "e"
	forms = stem2 .. "ēs"
	forms = stem2 .. "ēs"
	forms = stem2 .. "ia"

	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ī"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"
	forms = stem2 .. "ibus"

	insert_if_not(categories, "Latin third declension " .. pos)
	insert_if_not(categories, "Latin third declension " .. pos .. " of three terminations")
end

decl = function(data, args)
	local forms, subtitles, categories = data.forms, data.subtitles, data.categories
	local stem = args

	insert_if_not(subtitles, "used only in the nominative and accusative")

	forms = stem
	forms = "-"

	forms = "-"
	forms = "-"

	forms = "-"
	forms = "-"

	forms = stem
	forms = "-"

	forms = "-"
	forms = "-"

	forms = "-"
	forms = "-"

	forms = "-"
	forms = "-"

	insert_if_not(categories, "Latin indeclinable " .. data.pos)
end

decl = function(data,args)
	local forms, types, pos, notes, categories = data.forms, data.types, data.pos, data.notes, data.categories
	local arg1 = args

	if arg1 == "duo" or arg1 == "ambō" then
		local stem = usub(arg1, 1, -2)
		data.title = stem == "amb" and glossary_link("irregular") .. " adjective" or "numeral"
		data.num = "pl"

		local stem_with_o = stem .. (stem == "amb" and "ō" or "o")

		forms = stem_with_o
		forms = stem .. "ae"
		forms = stem_with_o

		forms = stem .. "ōrum"
		forms = stem .. "ārum"
		forms = stem .. "ōrum"

		forms = stem .. "ōbus"
		forms = stem .. "ābus"
		forms = stem .. "ōbus"

		forms = {stem .. "ōs", stem_with_o}
		forms = stem .. "ās"
		forms = stem_with_o

		forms = stem .. "ōbus"
		forms = stem .. "ābus"
		forms = stem .. "ōbus"

		forms = stem_with_o
		forms = stem .. "ae"
		forms = stem_with_o

		if stem == "du" then
			forms = {forms, "duum"}
			forms = {forms, "duum"}
		end

	elseif arg1:sub(-6) == "mīlle" then
		data.title = "semi-" .. glossary_link("indeclinable") .. " numeral"

		local stem = arg1:sub(1, -3)

		forms = stem .. "le"
		forms = {stem .. "ia", stem .. "lia"}

		forms = stem .. "le"
		forms = {stem .. "ium", stem .. "lium"}

		forms = stem .. "le"
		forms = {stem .. "ibus", stem .. "libus"}

		forms = stem .. "le"
		forms = {stem .. "ia", stem .. "lia"}

		forms = stem .. "le"
		forms = {stem .. "ibus", stem .. "libus"}

		forms = stem .. "le"
		forms = {stem .. "ia", stem .. "lia"}

	elseif arg1 == "ille" or arg1 == "iste" or arg1 == "ipse" then
		local stem = arg1:sub(1, -2)
		types.ius = true
		decl(data, {stem})

		data.title = glossary_link("demonstrative") .. " pronoun"

		forms = arg1
		if arg1 == "ipse" then
			local note1 = "Medieval Latin."

			add_form(forms, "nom_sg_n", stem, "ud")
			notes = note1

			add_form(forms, "acc_sg_n", stem, "ud")
			notes = note1
		else
			forms = stem .. "ud"
			forms = stem .. "ud"
		end

		empty_table(categories)

	elseif arg1 == "illic" or arg1 == "istic" then
		data.title = glossary_link("demonstrative") .. " pronoun"

		local stem, unattested = arg1:sub(1, -3), data.unattested

		forms = stem .. "ic"
		forms = stem .. "aec"
		forms = {stem .. "uc", stem .. "ucce", stem .. "oc"}

		forms = stem .. "ī̆usce"
		forms = stem .. "ī̆usce"
		forms = stem .. "ī̆usce"

		forms = stem .. "īc"
		forms = stem .. "īc"
		forms = stem .. "īc"

		forms = stem .. "unc"
		forms = stem .. "anc"
		forms = {stem .. "uc", stem .. "ucce", stem .. "oc"}

		forms = stem .. "ōc"
		forms = stem .. "āc"
		forms = stem .. "ōc"

		forms = stem .. "īsce"
		forms = stem .. "aec"
		forms = stem .. "aec"

		forms = stem .. "ōrunc"
		unattested = true
		forms = stem .. "ārunc"
		unattested = true
		forms = stem .. "ōrunc"
		unattested = true

		forms = stem .. "īsce"
		forms = stem .. "īsce"
		forms = stem .. "īsce"

		forms = stem .. "ōsce"
		forms = stem .. "āsce"
		forms = stem .. "aec"

		forms = stem .. "īsce"
		forms = stem .. "īsce"
		forms = stem .. "īsce"

	elseif arg1 == "hice" then
		data.title = glossary_link("demonstrative") .. " pronoun"

		forms = "hice"
		forms = "haece"
		forms = "hoce"
		forms = "hīce"
		forms = "haece"
		forms = "haece"

		forms = "huiusce"
		forms = "huiusce"
		forms = "huiusce"
		forms = {"hōrunce", "hōrumce"}
		forms = {"hārunce", "hārumce"}
		forms = {"hōrunce", "hōrumce"}

		forms = "huīce"
		forms = "huīce"
		forms = "huīce"
		forms = "hīsce"
		forms = "hīsce"
		forms = "hīsce"

		forms = "hunce"
		forms = "hance"
		forms = "hoce"
		forms = "hōsce"
		forms = "hāsce"
		forms = "haece"

		forms = "hōce"
		forms = "hāce"
		forms = "hōce"
		forms = "hīsce"
		forms = "hīsce"
		forms = "hīsce"

	elseif arg1 == "plūs" then
		data.title = glossary_link("irregular") .. " " .. decl_link("third") .. " comparative " .. singularize(pos)

		forms = "plūs"
		forms = "plūrēs"
		forms = "plūra"

		forms = "plūris"
		forms = "plūrium"
		forms = "plūrium"

		forms = "plūribus"
		forms = "plūribus"

		forms = "plūs"
		forms = "plūrēs"
		forms = "plūra"

		forms = "plūre"
		forms = "plūribus"
		forms = "plūribus"

		forms = "plūs"
		forms = "plūrēs"
		forms = "plūra"

		data.footnote = "Note: Singular forms take the genitive of the whole and do not function as adjectives."

		insert_if_not(categories, "Latin third declension " .. pos)
		insert_if_not(categories, "Latin third declension " .. pos .. " of one termination")

	elseif umatch(arg1, "^egō̆?$") or arg1 == "nōs" then
		data.title = glossary_link("personal") .. " pronoun"

		forms = arg1
		forms = "nōs"

		forms = "meī"
		forms = {"nostrī", "nostrum"}

		forms = "mihī̆"
		forms = "nōbīs"

		forms = {"mē", "mēmē"}
		forms = "nōs"

		forms = {"mē", "mēmē"}
		forms = "nōbīs"

		forms = arg1
		forms = "nōs"

	elseif arg1 == "tū" or arg1 == "vōs" then
		data.title = glossary_link("personal") .. " pronoun"

		forms = arg1
		forms = "vōs"

		forms = "tuī"
		forms = {"vestrī", "vestrum"}

		forms = "tibī̆"
		forms = "vōbīs"

		forms = {"tē", "tētē"}
		forms = "vōs"

		forms = {"tē", "tētē"}
		forms = "vōbīs"

		forms = arg1
		forms = "vōs"

	elseif arg1 == "suī" then
		data.title = glossary_link("reflexive") .. " pronoun"

		forms = "-"
		forms = "-"

		forms = arg1
		forms = forms

		forms = "sibi"
		forms = forms

		forms = {"sē", "sēsē"}
		forms = {"sē", "sēsē"}

		forms = {"sē", "sēsē"}
		forms = {"sē", "sēsē"}

		forms = "-"
		forms = "-"

	elseif arg1 == "is" or arg1 == "īdem" then
		data.title = glossary_link("demonstrative") .. " pronoun"

		local note1 = "The dat. singular is found spelled <small>EIEI</small> (here represented as ''ēī'') and scanned as two longs in Plautus, but also as a monosyllable. The latter is its normal scansion in Classical. Other spellings include <small>EEI, IEI</small>."

		local note2 = "The nom./dat./abl. plural forms regularly developed into a monosyllable  /iː(s)/, with later remodelling - compare the etymology of ]. This /iː/ was normally spelled as <small>EI</small> during and as <small>II</small> after the Republic; a disyllabic ''iī'', spelled <small>II, Iꟾ</small>, appears in Silver Age poetry, while disyllabic ''eīs'' is only post-Classical. Other spellings include <small>EEI(S), EIEI(S), IEI(S)</small>."

		forms = "is"
		forms = "ea"
		forms = "id"
		forms = {"iī", "eī", "ī"}
		notes = note2
		forms = "eae"
		forms = "ea"

		forms = {"eius", "ejus"}
		forms = {"eius", "ejus"}
		forms = {"eius", "ejus"}
		forms = {"eōrum", "eum"}
		forms = "eārum"
		forms = {"eōrum", "eum"}


		forms = {"eī", "e͡i", "ēī"}
		notes = note1
		forms = {"eī", "e͡i", "ēī", "eae"}
		notes = note1
		forms = {"eī", "e͡i", "ēī"}
		notes = note1
		forms = {"iīs", "eīs", "īs"}
		notes = note2
		forms = {"iīs", "eīs", "īs", "eābus"}
		notes = note2
		forms = {"iīs", "eīs", "īs"}
		notes = note2

		forms = "eum"
		forms = "eam"
		forms = "id"
		forms = "eōs"
		forms = "eās"
		forms = "ea"

		forms = "eō"
		forms = "eā"
		forms = "eō"
		forms = {"iīs", "eīs", "īs"}
		notes = note2
		forms = {"iīs", "eīs", "īs"}
		notes = note2
		forms = {"iīs", "eīs", "īs"}
		notes = note2

		if arg1 == "īdem" then
			forms = "ī"
			forms = "i"
			forms = "i"
		end

	elseif arg1 == "quis" or arg1 == "quī" then

		local note1 = "When used as an indefinite word (pronoun or adjective), the feminine nominative singular and neuter nominative/accusative plural is usually ''qua'' (with short ''ă'') instead of ''quae''. Indefinite ''quă'' is generally only found directly after '']'', '']'', '']'', or '']'' and may be considered to be either enclitic to the preceding word or (in Priscian's view) forming a compound with it; accordingly, '']'', '']'', and '']'' are sometimes written together (as also are the masculines '']'', '']'', and '']''). The form ''quă'' is never used for the feminine plural, nor for any form of the relative pronoun or of the interrogative pronoun or adjective."

		local note2 = "In Republican Latin or earlier, alternative spellings could be found for the following forms of '']''/'']'' and its compounds: the masculine nominative singular or plural ''quī'' (old spelling '']''), the genitive singular ''cuius'' (old spelling '']''), the dative singular ''cui'' (old spelling '']'' or '']''), the dative/ablative plural ''quīs'' (old spelling '']'')."

		local note3 = "Feminine ''quis'' and ''quem'' are attested mainly in early Latin authors (Ennius, Pacuvius, and Plautus)."

		local id = "id"
		if arg1 == "quī" then
			id = "od"
			forms = {"quī", "quis"}
			notes = note2
			forms = {"quae", "qua"}
			notes = note1
			forms = "quam"
			forms = "quō"
			forms = "quā"
			forms = "quō"
			data.title = glossary_link("relative") .. "/" .. glossary_link("interrogative") .. " determiner"
		else
			forms = {"quis", "quī"}
			notes = note2
			forms = {"quae", "qua", "quis"}
			notes = note1
			notes = note3
			forms = {"quam", "quem"}
			notes = note3
			forms = {"quō", "quī"}
			forms = {"quā", "quī"}
			forms = {"quō", "quī"}
			data.title = glossary_link("relative") .. "/" .. glossary_link("interrogative") .. " pronoun"
		end

		forms = "qu"..id
		forms = "quī"
		notes = note2
		forms = "quae"
		forms = {"quae", "qua"}
		notes = note1

		forms = "cuius"
		forms = "cuius"
		forms = "cuius"
		notes = note2
		notes = note2
		notes = note2
		forms = "quōrum"
		forms = "quārum"
		forms = "quōrum"

		forms = "cui"
		forms = "cui"
		forms = "cui"
		notes = note2
		notes = note2
		notes = note2
		forms = {"quibus", "quīs"}
		forms = {"quibus", "quīs"}
		forms = {"quibus", "quīs"}
		notes = note2
		notes = note2
		notes = note2

		forms = "quem"
		forms = "qu"..id
		forms = "quōs"
		forms = "quās"
		forms = {"quae", "qua"}
		notes = note1

		forms = {"quibus", "quīs"}
		forms = {"quibus", "quīs"}
		forms = {"quibus", "quīs"}
		notes = note2
		notes = note2
		notes = note2

	elseif arg1 == "aliquī" then
		data.title = glossary_link("indefinite") .. " " .. glossary_link("determiner")

		local note1 = "Normatively, ] is a determiner (used adjectivally) and ] is a pronoun (used substantively), but the opposite usages can be found, even among the best Classical writers."
		local note2 = "The feminine nominative singular form is usually ''aliqua'', but there are a handful of possible examples of ''aliquae'' as a feminine nominative singular form; see ]. The feminine nominative plural can only be ''aliquae'', and there are perhaps no solid examples of the neuter nominative/accusative plural taking any form other than ''aliqua''."
		local note3 = "Alternative spelling ] (used in Republican Latin or earlier)."
		local note4 = "Alternative spelling ] (used in Republican Latin or earlier)."
		local note5 = "Alternative spelling ] (used in Republican Latin or earlier)."

		forms = {"aliquī", "aliquis"}
		notes = note1
		forms = "aliqua"
		notes = note2
		forms = "aliquod"
		forms = "aliquī"
		forms = "aliquae"
		notes = note2
		forms = "aliqua"
		notes = note2

		forms = "alicuius"
		notes = note3
		forms = "alicuius"
		notes = note3
		forms = "alicuius"
		notes = note3
		forms = "aliquōrum"
		forms = "aliquārum"
		forms = "aliquōrum"

		forms = "alicui"
		notes = note5
		forms = "alicui"
		notes = note5
		forms = "alicui"
		notes = note5
		forms = {"aliquīs", "aliquibus"}
		notes = note4
		forms = {"aliquīs", "aliquibus"}
		notes = note4
		forms = {"aliquīs", "aliquibus"}
		notes = note4

		forms = "aliquem"
		forms = "aliquam"
		forms = "aliquod"
		forms = "aliquōs"
		forms = "aliquās"
		forms = "aliqua"
		notes = note2

		forms = "aliquō"
		forms = "aliquā"
		forms = "aliquō"
		forms = {"aliquīs", "aliquibus"}
		notes = note4
		forms = {"aliquīs", "aliquibus"}
		notes = note4
		forms = {"aliquīs", "aliquibus"}
		notes = note4

	elseif arg1 == "quisquam" then
		local note1 = "Only attested in postclassical Latin. In Classical Latin, forms of ] were used instead."
		local note2 = "Only attested as a feminine form in the preclassical Latin of authors like Plautus."
		local note3 = "Attested only once in Classical Latin. Usually ] was used instead."
		local note4 = "Attested, but rare in Classical Latin. Usually ] was used instead."

		data.title = glossary_link("negative polarity item", "negative polarity") .. " " .. glossary_link("indefinite") .. " " .. glossary_link("determiner")

		forms = "quisquam"
		forms = {"quaequam", "quisquam"}
		notes = note1
		notes = note2
		forms = "quodquam"
		notes = note1
		forms = "quīquam"
		notes = note1
		forms = "quaequam"
		notes = note1
		forms = "quaequam"
		notes = note1

		forms = "cuiusquam"
		forms = "cuiusquam"
		forms = "cuiusquam"
		forms = "quōrumquam"
		notes = note1
		forms = "quārumquam"
		notes = note1
		forms = "quōrumquam"
		notes = note1

		forms = "cuiquam"
		forms = "cuiquam"
		forms = "cuiquam"
		forms = "quibusquam"
		notes = note1
		forms = "quibusquam"
		notes = note1
		forms = "quibusquam"
		notes = note1

		forms = "quemquam"
		forms = {"quamquam", "quemquam"}
		notes = note3
		notes = note2
		forms = "quodquam"
		notes = note1
		forms = "quōsquam"
		notes = note1
		forms = "quāsquam"
		notes = note1
		forms = "quaequam"
		notes = note1

		forms = {"quōquam", "quīquam"}
		notes = note4
		notes = note2
		forms = "quāquam"
		notes = note1
		forms = "quōquam"
		notes = note4
		forms = "quibusquam"
		notes = note1
		forms = "quibusquam"
		notes = note1
		forms = "quibusquam"
		notes = note1

		forms = "quisquam"
		notes = note1
		forms = "quaequam"
		notes = note1
		forms = "quodquam"
		notes = note1
		forms = "quīquam"
		notes = note1
		forms = "quaequam"
		notes = note1
		forms = "quaequam"
		notes = note1

	elseif arg1 == "quisquis" then
		data.title = glossary_link("relative") .. "/" .. glossary_link("interrogative") .. " pronoun"

		forms = "quisquis"
		forms = "quisquis"
		forms = {"quidquid", "quicquid"}
		forms = "quīquī"
		forms = "quaequae"
		forms = "quaequae"

		forms = "cuiuscuius"
		forms = "cuiuscuius"
		forms = "cuiuscuius"
		forms = "quōrumquōrum"
		forms = "quārumquārum"
		forms = "quōrumquōrum"

		forms = "cuicui"
		forms = "cuicui"
		forms = "cuicui"
		forms = {"quibusquibus", "quīsquīs"}
		forms = {"quibusquibus", "quīsquīs"}
		forms = {"quibusquibus", "quīsquīs"}

		forms = "quemquem"
		forms = "quamquam"
		forms = {"quidquid", "quicquid"}
		forms = "quōsquōs"
		forms = "quāsquās"
		forms = "quaequae"

		forms = "quōquō"
		forms = "quāquā"
		forms = "quōquō"
		forms = {"quibusquibus", "quīsquīs"}
		forms = {"quibusquibus", "quīsquīs"}
		forms = {"quibusquibus", "quīsquīs"}

		forms = "quisquis"
		forms = "quisquis"
		forms = {"quidquid", "quicquid"}
		forms = "quīquī"
		forms = "quaequae"
		forms = "quaequae"

	elseif arg1 == "ecquis" then
		local note1 = "Unattested in classical Latin."
		local note2 = "Attested only twice in Classical Latin."

		data.title = glossary_link("interrogative") .. " pronoun"

		forms = {"ecquis", "ecquī"}
		forms = {"ecqua", "ecquae"}
		forms = "ecquid"
		forms = "ecquī"
		forms = "ecquae"
		forms = {"ecqua", "ecquae"}

		forms = "eccuius"
		forms = "eccuius"
		forms = "eccuius"
		notes = note1
		notes = note1
		notes = note1

		forms = "eccui"
		forms = "eccui"
		forms = "eccui"
		notes = note2
		notes = note2
		notes = note2

		forms = "ecquem"
		forms = "ecquam"
		forms = "ecquod"
		forms = "ecquōs"
		forms = "ecquās"
		forms = {"ecqua", "ecquae"}

		forms = {"ecquō", "ecquī"}
		forms = {"ecquā", "ecquī"}
		forms = {"ecquō", "ecquī"}

	elseif arg1 == "quīdam" then
		local note1 = "The genitive singular was spelled ] before the Augustan period."
		local note2 = "The dative singular was spelled ] before the Augustan period."
		local note3 = "An alternative masculine nominative/accusative plural form ] occurs in Accius."
		local note4 = "The dative/ablative plural has a rare alternative form ]/]."

		data.title = glossary_link("indefinite") .. " pronoun"

		forms = "quīdam"
		forms = "quaedam"
		forms = "quiddam"
		forms = "quīdam"
		notes = note3
		forms = "quaedam"
		forms = "quaedam"

		forms = "cuiusdam"
		forms = "cuiusdam"
		forms = "cuiusdam"
		notes = note1
		notes = note1
		notes = note1
		forms = {"quōrundam", "quōrumdam"}
		forms = {"quārundam", "quārumdam"}
		forms = {"quōrundam", "quōrumdam"}

		forms = "cuidam"
		forms = "cuidam"
		forms = "cuidam"
		notes = note2
		notes = note2
		notes = note2
		forms = "quibusdam"
		forms = "quibusdam"
		forms = "quibusdam"
		notes = note4
		notes = note4
		notes = note4

		forms = {"quendam", "quemdam"}
		forms = {"quandam", "quamdam"}
		forms = "quiddam"
		forms = "quōsdam"
		notes = note3
		forms = "quāsdam"
		forms = "quaedam"

		forms = "quōdam"
		forms = "quādam"
		forms = "quōdam"
		forms = "quibusdam"
		forms = "quibusdam"
		forms = "quibusdam"
		notes = note4
		notes = note4
		notes = note4

	elseif arg1 == "nēmō" then
		local note1 = "The genitive ] is not used in Classical Latin, and is generally also avoided by later authors."
		local note2 = "The ablative ] is not used in Classical Latin, but can be seen in authors from the Imperial period onwards."

		data.title = "Negative pronoun and " .. glossary_link("determiner")

		forms = "nēmō"
		forms = "nēmō"

		forms = {"nūllī̆us", "nēminis"}
		forms = {"nūllī̆us", "nēminis"}
		notes = note1
		notes = note1

		forms = "nēminī"
		forms = "nēminī"

		forms = "nēminem"
		forms = "nēminem"

		forms = {"nūllō", "nēmine"}
		forms = {"nūllā", "nēmine"}
		notes = note2
		notes = note2

	else
		error('adjective ' .. arg1 .. ' not recognized')
	end
end

return decl

-- For Vim, so we get 4-space tabs
-- vim: set ts=4 sw=4 noet: