local decl = {}
local lang = require("Module:languages").getByCode("la")
local m_links = require("Module:links")
local m_utilities = require("Module:utilities")
local rmatch = mw.ustring.match
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
local function singularize(plural)
-- THIS IS A HACK. We may be passed the word "suffix", where we need to remove
-- the -es. We also include words ending in -ch or -sh for good measure.
-- In most other cases we need to remove only the -s.
if plural:find("xes$") or plural:find("hes$") then
return plural:gsub("es$", "")
else
return plural:gsub("s$", "")
end
end
decl = function(data, args)
data.title = glossary_link("indeclinable") .. " " .. singularize(data.pos)
local stem = args
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
data.forms = stem
table.insert(data.categories, "Latin indeclinable " .. data.pos)
end
decl = function(data, args)
local singpos = singularize(data.pos)
if data.gender == "F" then
data.title = decl_link("first") .. " " .. singpos
elseif data.gender then
data.title = decl_link("second") .. " " .. singpos
else
data.title = decl_link("first", "first") .. "/" .. decl_link("second") .. " " .. singpos
end
local stem = args
local original = nil
if data.types.er then
if mw.ustring.match(stem, "er$") then
table.insert(data.subtitles, "nominative masculine singular in ''-er''")
table.insert(data.categories, "Latin first and second declension "
.. data.pos .. " with nominative masculine singular in -er")
elseif mw.ustring.match(stem, "ur$") then
table.insert(data.subtitles, "nominative masculine singular in ''-ur''")
table.insert(data.categories, "Latin first and second declension "
.. data.pos .. " with nominative masculine singular in -ur")
else
error("Unrecognized ''-r'' stem (doesn't end in ''-er'' or ''-ur''): " .. stem)
end
original = stem
stem = args
end
local us = "us"
local a_sf = "a"
local um = "um"
local ae_gsf = "ae"
local am = "am"
local a_macron = "ā"
if data.types.greekA or data.types.greekE then
table.insert(data.subtitles, "Greek-type")
table.insert(data.categories, "Latin first and second declension " ..
data.pos .. " with Greek declension")
if data.types.greekA then
us = "os"
um = "on"
am = "ān"
else
us = "os"
a_sf = "ē"
um = "on"
ae_gsf = "ēs"
am = "ēn"
a_macron = "ē"
end
end
data.forms = original or (stem .. us)
data.forms = stem .. a_sf
data.forms = stem .. um
data.forms = stem .. "ī"
data.forms = stem .. "ae"
data.forms = stem .. "a"
data.forms = stem .. "ī"
data.forms = stem .. ae_gsf
data.forms = stem .. "ī"
data.forms = stem .. "ōrum"
data.forms = stem .. "ārum"
data.forms = stem .. "ōrum"
data.forms = stem .. "ō"
data.forms = stem .. "ae"
data.forms = stem .. "ō"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
data.forms = stem .. um
data.forms = stem .. am
data.forms = stem .. um
data.forms = stem .. "ōs"
data.forms = stem .. "ās"
data.forms = stem .. "a"
data.forms = stem .. "ō"
data.forms = stem .. a_macron
data.forms = stem .. "ō"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
data.forms = original or (stem .. "e")
data.forms = stem .. a_sf
data.forms = stem .. um
data.forms = stem .. "ī"
data.forms = stem .. "ae"
data.forms = stem .. "a"
data.forms = stem .. "ī"
data.forms = stem .. "ae"
data.forms = stem .. "ī"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
if data.types.ius then
table.insert(data.subtitles, "pronominal")
--table.insert(data.subtitles, "with genitive singular in ''-ī̆us'' and dative singular in ''-ī''")
table.insert(data.categories, "Latin first and second declension " ..
data.pos .. " with genitive singular in -ī̆us")
data.forms = stem .. "ī̆us"
data.forms = stem .. "ī̆us"
data.forms = stem .. "ī̆us"
data.forms = stem .. "ī"
data.forms = stem .. "ī"
data.forms = stem .. "ī"
elseif data.types.not_ius then
table.insert(data.subtitles, "non-pronominal")
--table.insert(data.subtitles, "with normal genitive and dative singular")
end
if stem == "me" then
data.forms = "mī"
end
if data.types.ic then
table.insert(data.subtitles, "''hic''-type")
--table.insert(data.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
data.forms = stem .. "ic"
data.forms = stem .. "aec"
data.forms = stem .. oc
data.forms = stem .. "aec"
data.forms = stem .. "uius"
data.forms = stem .. "uius"
data.forms = stem .. "uius"
data.forms = stem .. "uic"
data.forms = stem .. "uic"
data.forms = stem .. "uic"
data.forms = stem .. "unc"
data.forms = stem .. "anc"
data.forms = stem .. oc
data.forms = stem .. "aec"
data.forms = stem .. "ōc"
data.forms = stem .. "āc"
data.forms = stem .. oc_macron
data.voc = false
end
if data.types.distr then
if mw.ustring.match(stem, "n$") then
table.insert(data.subtitles, "distributive, normally plural-only; short genitive plurals in ''-num'' preferred")
data.forms = {stem .. "um", stem .. "ōrum"}
data.forms = {stem .. "um", stem .. "ārum"}
data.forms = {stem .. "um", stem .. "ōrum"}
else
error("Unrecognized distributive numeral stem (doesn't end in ''n''): " .. stem)
end
original = stem
stem = args
end
table.insert(data.categories, "Latin first and second declension " ..
data.pos)
end
decl = function(data, args)
data.title = decl_link("first") .. " " .. singularize(data.pos)
table.insert(data.subtitles, "masculine and neuter forms identical to feminine forms")
local stem = args
data.forms = stem .. "a"
data.forms = stem .. "ae"
data.forms = stem .. "a"
data.forms = stem .. "ae"
data.forms = stem .. "ārum"
data.forms = stem .. "ae"
data.forms = stem .. "īs"
data.forms = stem .. "am"
data.forms = stem .. "a"
data.forms = stem .. "ās"
data.forms = stem .. "a"
data.forms = stem .. "ā"
data.forms = stem .. "īs"
data.forms = stem .. "ae"
data.forms = stem .. "īs"
data.forms = stem .. "a"
data.forms = stem .. "ae"
data.forms = stem .. "a"
table.insert(data.categories, "Latin first declension " .. data.pos)
end
decl = function(data, args)
data.title = decl_link("second") .. " " .. singularize(data.pos)
table.insert(data.subtitles, "feminine forms identical to masculine forms")
local stem = args
local us = "us"
local um = "um"
local i_pl = "ī"
if data.types.greek then
table.insert(data.subtitles, "Greek-type")
table.insert(data.categories, "Latin second declension " .. data.pos ..
" with Greek declension")
us = "os"
um = "on"
i_pl = "oe"
end
data.forms = stem .. us
data.forms = stem .. um
data.forms = stem .. i_pl
data.forms = stem .. "a"
data.forms = stem .. "ī"
data.forms = stem .. "ī"
data.forms = stem .. "ōrum"
data.forms = stem .. "ōrum"
data.forms = stem .. "ō"
data.forms = stem .. "ō"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
data.forms = stem .. um
data.forms = stem .. um
data.forms = stem .. "ōs"
data.forms = stem .. "a"
data.forms = stem .. "ō"
data.forms = stem .. "ō"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
data.forms = stem .. "ī"
data.forms = stem .. "ī"
data.forms = stem .. "īs"
data.forms = stem .. "īs"
data.forms = stem .. "e"
data.forms = stem .. um
data.forms = stem .. i_pl
data.forms = stem .. "a"
table.insert(data.categories, "Latin second declension " .. data.pos)
end
decl = function(data, args)
local singpos = singularize(data.pos)
if data.gender then
data.title = decl_link("third") .. " " .. singpos
else
data.title = decl_link("third") .. " one-termination " .. singpos
end
local stem1 = args
local stem2 = args
data.forms = stem1
data.forms = stem1
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ia"
data.forms = stem2 .. "is"
data.forms = stem2 .. "is"
data.forms = stem2 .. "ium"
data.forms = stem2 .. "ium"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "em"
data.forms = stem1
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ia"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem1
data.forms = stem1
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ia"
if data.types.par then
table.insert(data.subtitles, "non-i-stem")
data.forms = stem2 .. "a"
data.forms = stem2 .. "um"
data.forms = stem2 .. "um"
data.forms = stem2 .. "e"
data.forms = stem2 .. "e"
data.forms = {stem2 .. "ī", stem2 .. "e"}
data.forms = {stem2 .. "ī", stem2 .. "e"}
data.forms = stem2 .. "a"
data.forms = stem2 .. "a"
elseif data.types.not_par then
table.insert(data.subtitles, "i-stem")
end
if data.types.trix then
table.insert(data.subtitles, "feminine-only in the singular, feminine- and neuter-only in the plural")
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = stem1
data.forms = stem2 .. "is"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "em"
data.forms = {stem2 .. "e", stem2 .. "ī"}
data.forms = stem1
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ium"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ēs"
end
local es_base = rmatch(stem1, "^(.*)ēs$")
if es_base and es_base == stem2 then
if data.types.greek then
local note = "It is unknown if 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."
data.forms = {stem2 .. "es", stem2 .. "ēs"}
data.notes = note
data.forms = {stem2 .. "es", stem2 .. "ēs"}
data.notes = note
data.forms = {stem2 .. "es", stem2 .. "ēs"}
data.notes = note
data.forms = {stem2 .. "es", stem2 .. "ēs"}
data.notes = note
data.forms = {stem2 .. "a", stem2 .. "ia"}
data.notes = note2
data.forms = {stem2 .. "a", stem2 .. "ia"}
data.notes = note2
data.forms = {stem2 .. "a", stem2 .. "ia"}
data.notes = note2
data.forms = {stem2 .. "e", stem2 .. "ī"}
data.notes = note2
data.forms = {stem2 .. "e", stem2 .. "ī"}
data.notes = note2
data.forms = {stem2 .. "e", stem2 .. "ī"}
data.notes = note2
data.forms = {stem2 .. "um", stem2 .. "ium"}
data.notes = note2
data.forms = {stem2 .. "um", stem2 .. "ium"}
data.notes = note2
data.forms = {stem2 .. "um", stem2 .. "ium"}
data.notes = note2
table.insert(data.subtitles, "Greek-type")
elseif data.types.not_greek then
table.insert(data.subtitles, "non-Greek-type")
end
end
table.insert(data.categories, "Latin third declension " .. data.pos)
table.insert(data.categories, "Latin third declension " .. data.pos .. " of one termination")
end
decl = function(data, args)
local singpos = singularize(data.pos)
data.title = decl_link("third") .. " comparative " .. singularize(data.pos)
local stem = args
data.forms = stem .. "or"
data.forms = stem .. "or"
data.forms = stem .. "us"
data.forms = stem .. "ōrēs"
data.forms = stem .. "ōrēs"
data.forms = stem .. "ōra"
data.forms = stem .. "ōris"
data.forms = stem .. "ōris"
data.forms = stem .. "ōris"
data.forms = stem .. "ōrum"
data.forms = stem .. "ōrum"
data.forms = stem .. "ōrum"
data.forms = stem .. "ōrī"
data.forms = stem .. "ōrī"
data.forms = stem .. "ōrī"
data.forms = stem .. "ōribus"
data.forms = stem .. "ōribus"
data.forms = stem .. "ōribus"
data.forms = stem .. "ōrem"
data.forms = stem .. "ōrem"
data.forms = stem .. "us"
data.forms = {stem .. "ōrēs", stem .. "ōrīs"}
data.forms = {stem .. "ōrēs", stem .. "ōrīs"}
data.forms = stem .. "ōra"
data.forms = {stem .. "ōre", stem .. "ōrī"}
data.forms = {stem .. "ōre", stem .. "ōrī"}
data.forms = {stem .. "ōre", stem .. "ōrī"}
data.forms = stem .. "ōribus"
data.forms = stem .. "ōribus"
data.forms = stem .. "ōribus"
data.forms = {stem .. "ōrī", stem .. "ōre"}
data.forms = {stem .. "ōrī", stem .. "ōre"}
data.forms = {stem .. "ōrī", stem .. "ōre"}
data.forms = stem .. "ōribus"
data.forms = stem .. "ōribus"
data.forms = stem .. "ōribus"
data.forms = stem .. "or"
data.forms = stem .. "or"
data.forms = stem .. "us"
data.forms = stem .. "ōrēs"
data.forms = stem .. "ōrēs"
data.forms = stem .. "ōra"
table.insert(data.categories, "Latin third declension " .. data.pos)
table.insert(data.categories, "Latin comparative adjectives")
end
decl = function(data, args)
local stem1 = args
local stem2 = args
decl(data, args)
data.title = decl_link("third") .. " participle"
data.forms = {stem2 .. "e", stem2 .. "ī"}
data.notes = "When used purely as an adjective."
data.forms = {stem2 .. "e", stem2 .. "ī"}
data.notes = "When used purely as an adjective."
data.forms = {stem2 .. "ēs", stem2 .. "īs"}
end
decl = function(data, args)
local singpos = singularize(data.pos)
if data.gender then
data.title = decl_link("third") .. " " .. singpos
else
data.title = decl_link("third") .. " two-termination " .. singpos
end
local stem = args
local stem2 = args
data.forms = stem .. "is"
data.forms = stem .. "e"
data.forms = stem .. "ēs"
data.forms = stem .. "ia"
data.forms = stem .. "is"
data.forms = stem .. "is"
data.forms = stem .. "ium"
data.forms = stem .. "ium"
data.forms = stem .. "ī"
data.forms = stem .. "ī"
data.forms = stem .. "ibus"
data.forms = stem .. "ibus"
data.forms = stem .. "em"
data.forms = stem .. "e"
data.forms = {stem .. "ēs", stem .. "īs"}
data.forms = stem .. "ia"
data.forms = stem .. "ī"
data.forms = stem .. "ī"
data.forms = stem .. "ibus"
data.forms = stem .. "ibus"
data.forms = stem .. "ī"
data.forms = stem .. "ī"
data.forms = stem .. "ibus"
data.forms = stem .. "ibus"
data.forms = stem .. "is"
data.forms = stem .. "e"
data.forms = stem .. "ēs"
data.forms = stem .. "ia"
table.insert(data.categories, "Latin third declension " .. data.pos)
table.insert(data.categories, "Latin third declension " .. data.pos .. " of two terminations")
end
decl = function(data, args)
local singpos = singularize(data.pos)
if data.gender then
data.title = decl_link("third") .. " " .. singpos
else
data.title = decl_link("third") .. " three-termination " .. singpos
end
local stem1 = args
local stem2 = args
data.forms = stem1
data.forms = stem2 .. "is"
data.forms = stem2 .. "e"
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ia"
data.forms = stem2 .. "is"
data.forms = stem2 .. "is"
data.forms = stem2 .. "is"
data.forms = stem2 .. "ium"
data.forms = stem2 .. "ium"
data.forms = stem2 .. "ium"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "em"
data.forms = stem2 .. "em"
data.forms = stem2 .. "e"
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ia"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ī"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem2 .. "ibus"
data.forms = stem1
data.forms = stem2 .. "is"
data.forms = stem2 .. "e"
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ēs"
data.forms = stem2 .. "ia"
table.insert(data.categories, "Latin third declension " .. data.pos)
table.insert(data.categories, "Latin third declension " .. data.pos .. " of three terminations")
end
decl = function(data,args)
if args == "duo" or args == "ambō" then
local stem = args == "duo" and "du" or "amb"
data.title = stem == "amb" and glossary_link("irregular") .. " adjective" or "numeral"
data.num = "pl"
local stem_with_o = stem .. (stem == "amb" and "ō" or "o")
data.forms = stem_with_o
data.forms = stem .. "ae"
data.forms = stem_with_o
data.forms = stem .. "ōrum"
data.forms = stem .. "ārum"
data.forms = stem .. "ōrum"
data.forms = stem .. "ōbus"
data.forms = stem .. "ābus"
data.forms = stem .. "ōbus"
data.forms = {stem .. "ōs", stem_with_o}
data.forms = stem .. "ās"
data.forms = stem_with_o
data.forms = stem .. "ōbus"
data.forms = stem .. "ābus"
data.forms = stem .. "ōbus"
data.forms = stem_with_o
data.forms = stem .. "ae"
data.forms = stem_with_o
if stem == "du" then
data.footnote = "Note: The masculine and neuter genitive of ''duo'' can alternatively be '']'' (also spelt '']'')."
end
elseif args == "mīlle" then
data.title = "semi-" .. glossary_link("indeclinable") .. " numeral"
data.forms = "mīlle"
data.forms = {"mīlia", "mīllia"}
data.forms = "mīlle"
data.forms = {"mīlium", "mīllium"}
data.forms = "mīlle"
data.forms = {"mīlibus", "mīllibus"}
data.forms = "mīlle"
data.forms = {"mīlia", "mīllia"}
data.forms = "mīlle"
data.forms = {"mīlibus", "mīllibus"}
data.forms = "mīlle"
data.forms = {"mīlia", "mīllia"}
elseif args == "sēsquimīlle" then
data.title = "semi-" .. glossary_link("indeclinable") .. " numeral"
data.forms = "sēsquimīlle"
data.forms = {"sēsquimīlia", "sēsquimīllia"}
data.forms = "sēsquimīlle"
data.forms = {"sēsquimīlium", "sēsquimīllium"}
data.forms = "sēsquimīlle"
data.forms = {"sēsquimīlibus", "sēsquimīllibus"}
data.forms = "sēsquimīlle"
data.forms = {"sēsquimīlia", "sēsquimīllia"}
data.forms = "sēsquimīlle"
data.forms = {"sēsquimīlibus", "sēsquimīllibus"}
data.forms = "sēsquimīlle"
data.forms = {"sēsquimīlia", "sēsquimīllia"}
elseif args == "illic" then
data.title = glossary_link("demonstrative") .. " pronoun"
data.forms = "illic"
data.forms = "illaec"
data.forms = {"illuc", "illoc"}
data.forms = ""
data.forms = ""
data.forms = "illaec"
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = "illunc"
data.forms = "illanc"
data.forms = {"illuc", "illoc"}
data.forms = ""
data.forms = ""
data.forms = "illaec"
data.forms = "illōc"
data.forms = "illāc"
data.forms = "illōc"
data.forms = ""
data.forms = ""
data.forms = ""
data.voc = false
elseif args == "hice" then
data.title = glossary_link("demonstrative") .. " pronoun"
data.forms = "hice"
data.forms = "haece"
data.forms = "hoce"
data.forms = "hīce"
data.forms = "haece"
data.forms = "haece"
data.forms = "huiusce"
data.forms = "huiusce"
data.forms = "huiusce"
data.forms = {"hōrunce", "hōrumce"}
data.forms = {"hārunce", "hārumce"}
data.forms = {"hōrunce", "hōrumce"}
data.forms = "huīce"
data.forms = "huīce"
data.forms = "huīce"
data.forms = "hīsce"
data.forms = "hīsce"
data.forms = "hīsce"
data.forms = "hunce"
data.forms = "hance"
data.forms = "hoce"
data.forms = "hōsce"
data.forms = "hāsce"
data.forms = "haece"
data.forms = "hōce"
data.forms = "hāce"
data.forms = "hōce"
data.forms = "hīsce"
data.forms = "hīsce"
data.forms = "hīsce"
data.voc = false
elseif args == "plūs" then
data.title = glossary_link("irregular") .. " " .. decl_link("third") .. " comparative adjective"
data.forms = ""
data.forms = "plūs"
data.forms = "plūrēs"
data.forms = "plūra"
data.forms = ""
data.forms = "plūris"
data.forms = "plūrium"
data.forms = "plūrium"
data.forms = ""
data.forms = ""
data.forms = "plūribus"
data.forms = "plūribus"
data.forms = ""
data.forms = "plūs"
data.forms = "plūrēs"
data.forms = "plūra"
data.forms = ""
data.forms = "plūre"
data.forms = "plūribus"
data.forms = "plūribus"
data.forms = ""
data.forms = "plūs"
data.forms = "plūrēs"
data.forms = "plūra"
data.footnote = "Note: Singular forms take the genitive of the whole and do not function as adjectives."
table.insert(data.categories, "Latin third declension " .. data.pos)
table.insert(data.categories, "Latin third declension " .. data.pos .. " of one termination")
elseif args == "is" or args == "ī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>."
data.forms = "is"
data.forms = "ea"
data.forms = "id"
data.forms = {"eī", "iī", "ī"}
data.notes = note2
data.forms = "eae"
data.forms = "ea"
data.forms = {"eius", "ejus"}
data.forms = {"eius", "ejus"}
data.forms = {"eius", "ejus"}
data.forms = {"eōrum", "eum"}
data.forms = "eārum"
data.forms = {"eōrum", "eum"}
data.forms = {"eī", "e͡i", "ēī"}
data.notes = note1
data.forms = {"eī", "e͡i", "ēī", "eae"}
data.notes = note1
data.forms = {"eī", "e͡i", "ēī"}
data.notes = note1
data.forms = {"eīs", "iīs", "īs"}
data.notes = note2
data.forms = {"eīs", "iīs", "īs", "eābus"}
data.notes = note2
data.forms = {"eīs", "iīs", "īs"}
data.notes = note2
data.forms = "eum"
data.forms = "eam"
data.forms = "id"
data.forms = "eōs"
data.forms = "eās"
data.forms = "ea"
data.forms = "eō"
data.forms = "eā"
data.forms = "eō"
data.forms = {"eīs", "iīs", "īs"}
data.notes = note2
data.forms = {"eīs", "iīs", "īs"}
data.notes = note2
data.forms = {"eīs", "iīs", "īs"}
data.notes = note2
data.voc = false
if args == "īdem" then
data.forms = "ī"
data.forms = "i"
data.forms = "ī"
data.forms = "i"
end
elseif args == "ille" then
data.types.ius = true
decl(data, {"ill"})
data.title = glossary_link("demonstrative") .. " pronoun"
data.forms = "ille"
data.forms = "illud"
data.forms = "illud"
data.voc = false
data.categories = {}
elseif args == "iste" then
data.types.ius = true
decl(data, {"ist"})
data.title = glossary_link("demonstrative") .. " pronoun"
data.forms = "iste"
data.forms = "istud"
data.forms = "istud"
data.voc = false
data.categories = {}
elseif args == "ipse" then
data.types.ius = true
decl(data, {"ips"})
data.title = glossary_link("demonstrative") .. " pronoun"
data.forms = "ipse"
data.forms = "ipsum"
data.forms = "ipsum"
data.voc = false
data.categories = {}
elseif args == "quis" or args == "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 id = "id"
if args == "quī" then
id = "od"
data.forms = {"quī", "quis"}
data.notes = note2
data.forms = {"quae", "qua"}
data.notes = note1
data.forms = "quam"
data.forms = "quō"
data.forms = "quā"
data.forms = "quō"
else
data.forms = {"quis", "quī"}
data.notes = note2
data.forms = {"quae", "qua", "quis"}
data.notes = note1
data.forms = {"quam", "quem"}
data.forms = {"quō", "quī"}
data.forms = {"quā", "quī"}
data.forms = {"quō", "quī"}
end
data.title = glossary_link("relative") .. "/" .. glossary_link("interrogative") .. " pronoun"
data.forms = "qu"..id
data.forms = "quī"
data.notes = note2
data.forms = "quae"
data.forms = {"quae", "qua"}
data.notes = note1
data.forms = "cuius"
data.forms = "cuius"
data.forms = "cuius"
data.notes = note2
data.notes = note2
data.notes = note2
data.forms = "quōrum"
data.forms = "quārum"
data.forms = "quōrum"
data.forms = "cui"
data.forms = "cui"
data.forms = "cui"
data.notes = note2
data.notes = note2
data.notes = note2
data.forms = {"quibus", "quīs"}
data.forms = {"quibus", "quīs"}
data.forms = {"quibus", "quīs"}
data.notes = note2
data.notes = note2
data.notes = note2
data.forms = "quem"
data.forms = "qu"..id
data.forms = "quōs"
data.forms = "quās"
data.forms = {"quae", "qua"}
data.notes = note1
data.forms = {"quibus", "quīs"}
data.forms = {"quibus", "quīs"}
data.forms = {"quibus", "quīs"}
data.notes = note2
data.notes = note2
data.notes = note2
data.voc = false
elseif args == "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)."
data.forms = {"aliquī", "aliquis"}
data.notes = note1
data.forms = "aliqua"
data.notes = note2
data.forms = "aliquod"
data.forms = "aliquī"
data.forms = "aliquae"
data.notes = note2
data.forms = "aliqua"
data.notes = note2
data.forms = "alicuius"
data.notes = note3
data.forms = "alicuius"
data.notes = note3
data.forms = "alicuius"
data.notes = note3
data.forms = "aliquōrum"
data.forms = "aliquārum"
data.forms = "aliquōrum"
data.forms = "alicui"
data.notes = note5
data.forms = "alicui"
data.notes = note5
data.forms = "alicui"
data.notes = note5
data.forms = {"aliquīs", "aliquibus"}
data.notes = note4
data.forms = {"aliquīs", "aliquibus"}
data.notes = note4
data.forms = {"aliquīs", "aliquibus"}
data.notes = note4
data.forms = "aliquem"
data.forms = "aliquam"
data.forms = "aliquod"
data.forms = "aliquōs"
data.forms = "aliquās"
data.forms = "aliqua"
data.notes = note2
data.forms = "aliquō"
data.forms = "aliquā"
data.forms = "aliquō"
data.forms = {"aliquīs", "aliquibus"}
data.notes = note4
data.forms = {"aliquīs", "aliquibus"}
data.notes = note4
data.forms = {"aliquīs", "aliquibus"}
data.notes = note4
data.voc = false
elseif args == "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")
data.forms = "quisquam"
data.forms = {"quaequam", "quisquam"}
data.notes = note1
data.notes = note2
data.forms = "quodquam"
data.notes = note1
data.forms = "quīquam"
data.notes = note1
data.forms = "quaequam"
data.notes = note1
data.forms = "quaequam"
data.notes = note1
data.forms = "cuiusquam"
data.forms = "cuiusquam"
data.forms = "cuiusquam"
data.forms = "quōrumquam"
data.notes = note1
data.forms = "quārumquam"
data.notes = note1
data.forms = "quōrumquam"
data.notes = note1
data.forms = "cuiquam"
data.forms = "cuiquam"
data.forms = "cuiquam"
data.forms = "quibusquam"
data.notes = note1
data.forms = "quibusquam"
data.notes = note1
data.forms = "quibusquam"
data.notes = note1
data.forms = "quemquam"
data.forms = {"quamquam", "quemquam"}
data.notes = note3
data.notes = note2
data.forms = "quodquam"
data.notes = note1
data.forms = "quōsquam"
data.notes = note1
data.forms = "quāsquam"
data.notes = note1
data.forms = "quaequam"
data.notes = note1
data.forms = {"quōquam", "quīquam"}
data.notes = note4
data.notes = note2
data.forms = "quāquam"
data.notes = note1
data.forms = "quōquam"
data.notes = note4
data.forms = "quibusquam"
data.notes = note1
data.forms = "quibusquam"
data.notes = note1
data.forms = "quibusquam"
data.notes = note1
data.forms = "quisquam"
data.notes = note1
data.forms = "quaequam"
data.notes = note1
data.forms = "quodquam"
data.notes = note1
data.forms = "quīquam"
data.notes = note1
data.forms = "quaequam"
data.notes = note1
data.forms = "quaequam"
data.notes = note1
data.voc = true
elseif args == "quisquis" then
data.title = glossary_link("relative") .. "/" .. glossary_link("interrogative") .. " pronoun"
data.forms = "quisquis"
data.forms = "quisquis"
data.forms = {"quidquid", "quicquid"}
data.forms = "quīquī"
data.forms = "quaequae"
data.forms = "quaequae"
data.forms = "cuiuscuius"
data.forms = "cuiuscuius"
data.forms = "cuiuscuius"
data.forms = "quōrumquōrum"
data.forms = "quārumquārum"
data.forms = "quōrumquōrum"
data.forms = "cuicui"
data.forms = "cuicui"
data.forms = "cuicui"
data.forms = {"quibusquibus", "quīsquīs"}
data.forms = {"quibusquibus", "quīsquīs"}
data.forms = {"quibusquibus", "quīsquīs"}
data.forms = "quemquem"
data.forms = "quamquam"
data.forms = {"quidquid", "quicquid"}
data.forms = "quōsquōs"
data.forms = "quāsquās"
data.forms = "quaequae"
data.forms = "quōquō"
data.forms = "quāquā"
data.forms = "quōquō"
data.forms = {"quibusquibus", "quīsquīs"}
data.forms = {"quibusquibus", "quīsquīs"}
data.forms = {"quibusquibus", "quīsquīs"}
data.forms = "quisquis"
data.forms = "quisquis"
data.forms = {"quidquid", "quicquid"}
data.forms = "quīquī"
data.forms = "quaequae"
data.forms = "quaequae"
data.voc = true
elseif args == "ecquis" then
local note1 = "Unattested in classical Latin."
local note2 = "Attested only twice in Classical Latin."
data.title = glossary_link("interrogative") .. " pronoun"
data.forms = {"ecquis", "ecquī"}
data.forms = {"ecqua", "ecquae"}
data.forms = "ecquid"
data.forms = "ecquī"
data.forms = "ecquae"
data.forms = {"ecqua", "ecquae"}
data.forms = "eccuius"
data.forms = "eccuius"
data.forms = "eccuius"
data.notes = note1
data.notes = note1
data.notes = note1
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = "eccui"
data.forms = "eccui"
data.forms = "eccui"
data.notes = note2
data.notes = note2
data.notes = note2
data.forms = ""
data.forms = ""
data.forms = ""
data.forms = "ecquem"
data.forms = "ecquam"
data.forms = "ecquod"
data.forms = "ecquōs"
data.forms = "ecquās"
data.forms = {"ecqua", "ecquae"}
data.forms = {"ecquō", "ecquī"}
data.forms = {"ecquā", "ecquī"}
data.forms = {"ecquō", "ecquī"}
data.forms = ""
data.forms = ""
data.forms = ""
data.voc = false
elseif args == "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"
data.forms = "quīdam"
data.forms = "quaedam"
data.forms = "quiddam"
data.forms = "quīdam"
data.notes = note3
data.forms = "quaedam"
data.forms = "quaedam"
data.forms = "cuiusdam"
data.forms = "cuiusdam"
data.forms = "cuiusdam"
data.notes = note1
data.notes = note1
data.notes = note1
data.forms = {"quōrundam", "quōrumdam"}
data.forms = {"quārundam", "quārumdam"}
data.forms = {"quōrundam", "quōrumdam"}
data.forms = "cuidam"
data.forms = "cuidam"
data.forms = "cuidam"
data.notes = note2
data.notes = note2
data.notes = note2
data.forms = "quibusdam"
data.forms = "quibusdam"
data.forms = "quibusdam"
data.notes = note4
data.notes = note4
data.notes = note4
data.forms = {"quendam", "quemdam"}
data.forms = {"quandam", "quamdam"}
data.forms = "quiddam"
data.forms = "quōsdam"
data.notes = note3
data.forms = "quāsdam"
data.forms = "quaedam"
data.forms = "quōdam"
data.forms = "quādam"
data.forms = "quōdam"
data.forms = "quibusdam"
data.forms = "quibusdam"
data.forms = "quibusdam"
data.notes = note4
data.notes = note4
data.notes = note4
data.voc = false
elseif args == "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")
data.forms = "nēmō"
data.forms = "nēmō"
data.forms = {"nūllī̆us", "nēminis"}
data.forms = {"nūllī̆us", "nēminis"}
data.notes = note1
data.notes = note1
data.forms = "nēminī"
data.forms = "nēminī"
data.forms = "nēminem"
data.forms = "nēminem"
data.forms = {"nūllō", "nēmine"}
data.forms = {"nūllā", "nēmine"}
data.notes = note2
data.notes = note2
data.voc = false
else
error('adjective ' .. args .. ' not recognized')
end
end
return decl
-- For Vim, so we get 4-space tabs
-- vim: set ts=4 sw=4 noet: