Called by {{li-conj-auto}}
. Do not use directly.
local m_gender = require("Module:gender and number")
local m_links = require("Module:links")
local m_utils = require("Module:utilities")
local lang = require("Module:languages").getByCode("li")
local export = {}
-- Verbs that take "zeen" in the past participle.
local AUX_ZEEN = {
"baere",
"gaon"
}
-- Functions that do the actual inflecting by creating the forms of a basic term.
local inflections = {}
local irregular = {}
-- The main entry point.
-- This is the only function that can be invoked from a template.
function export.show(frame)
local parent_args = frame:getParent().args
local infl_type = parent_args == nil and guess_conjugation(frame) or parent_args
if not inflections then
error("Unknown inflection type '" .. infl_type .. "'")
end
local data = {forms = {}, categories = {}}
data.info = ""
local args = require("Module:parameters").process(parent_args, inflections.params)
local word = (mw.title.getCurrentTitle().nsText == "Template" and "blósse" or mw.title.getCurrentTitle().text)
data.aux = AUX_ZEEN.word and "zeen" or "höbbe"
-- Generate default pronouns
-- Generate the forms
inflections.func(args, data)
return make_table(data)
end
function guess_conjugation(frame)
-- Strip final -e
local stem = (mw.title.getCurrentTitle().nsText == "Template" and "blóss" or mw.title.getCurrentTitle().text):sub(1, -2)
if irregular then
return "irregular"
end
if frame:getParent().args then
local final_vowel = stem:sub(-4, -2)
-- second, third, fifth, sixth
if final_vowel == "ae" then
return "second"
elseif final_vowel == "ei" then
return "third"
elseif final_vowel == "ou" then
return "fifth"
elseif final_vowel:sub(-2, -1) == "a" then
return "sixth"
else
return "irregular"
end
else
local final = stem:sub(-2, -1)
-- first, fourth, seventh
if final:find("") then
return "first"
elseif final:find("") or final == "ch" then
return "fourth"
elseif final == "mm" then
return "seventh"
else
return "irregular"
end
end
end
inflections = {
params = {
= {},
= {},
},
func = function(args, data)
local base = mw.title.getCurrentTitle().nsText == "Template" and "-" or mw.title.getCurrentTitle().text
-- If the final consonant is doubled, simplify it for certain forms
local single = (base:sub(-3, -3) == base:sub(-2, -2)) and base:sub(1, -3) or base
data.info = " (first conjugation)"
table.insert(data.categories, "Limburgish first conjugation verbs")
data.forms = {base}
data.forms = {base}
data.forms = {base .. "ndj"}
data.forms = {"ge" .. single}
data.forms = {"ge" .. single .. "dje", "ge" .. single .. "djer", "ge" .. single .. "djes"}
data.forms = {"ge" .. single .. "dj", "ge" .. single .. "djelik"}
data.forms = {single}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single}
data.forms = {single .. "dje-n"}
data.forms = {base .. "-n"}
data.forms = {single .. "s"}
data.forms = {single .. "djes"}
data.forms = {base}
data.forms = {single .. "s"}
data.forms = {single .. "djes"}
data.forms = {base .. "r"}
data.forms = {single .. "tj"}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "tj'r"}
data.forms = {single .. "dje"}
data.forms = {base .. "r"}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "tj"}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "tj"}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "tj"}
data.forms = {single .. "dje"}
data.forms = {base .. "tj"}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base .. "r"}
data.forms = {"ge" .. single}
data.forms = {single}
data.forms = {single .. "tj"}
data.forms = {single .. "tj", base .. "tj"}
data.forms = {single .. "tj"}
data.forms = {base .. "m"}
end
}
inflections = {
params = {
= {},
= {},
},
func = function(args, data)
local base = mw.title.getCurrentTitle().nsText == "Template" and "-" or mw.title.getCurrentTitle().text
-- If the final consonant is doubled, simplify it for certain forms
local single = (base:sub(-3, -3) == base:sub(-2, -2)) and base:sub(1, -3) or base
data.info = " (fourth conjugation)"
table.insert(data.categories, "Limburgish fourth conjugation verbs")
data.forms = {base}
data.forms = {base}
data.forms = {base .. "ndj"}
data.forms = {"ge" .. single}
data.forms = {"ge" .. single .. "dje", "ge" .. single .. "djer", "ge" .. single .. "djes"}
data.forms = {"ge" .. single, "ge" .. single .. "djelik"}
data.forms = {single}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single}
data.forms = {single .. "dje-n"}
data.forms = {base .. "-n"}
data.forms = {single:sub(-1, -1) == "s" and single or single .. "s"}
data.forms = {single .. "djes"}
data.forms = {base}
data.forms = {single:sub(-1, -1) == "s" and single or single .. "s"}
data.forms = {single .. "djes"}
data.forms = {base .. "r"}
data.forms = {single}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single}
data.forms = {single .. "dje"}
data.forms = {base .. "r"}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "tj"}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single, single .. "tj"}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single, single .. "tj"}
data.forms = {single .. "dje"}
data.forms = {base .. "tj"}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base .. "r"}
data.forms = {"ge" .. single}
data.forms = {single}
data.forms = {single, single .. "tj"}
data.forms = {base .. "tj"}
data.forms = {single .. "tj"}
data.forms = {base .. "m"}
end
}
inflections = {
params = {
= {},
= {},
},
func = function(args, data)
local base = mw.title.getCurrentTitle().nsText == "Template" and "-" or mw.title.getCurrentTitle().text
-- If the final consonant is doubled, simplify it for certain forms
local single = (base:sub(-3, -3) == base:sub(-2, -2)) and base:sub(1, -3) or base
data.info = " (seventh conjugation)"
table.insert(data.categories, "Limburgish seventh conjugation verbs")
data.forms = {base}
data.forms = {base}
data.forms = {base .. "ndj"}
data.forms = {"ge" .. single .. "p"}
data.forms = {"ge" .. single .. "pdje", "ge" .. single .. "pdjer", "ge" .. single .. "pdjes"}
data.forms = {"ge" .. single .. "p", "ge" .. single .. "pdjelik"}
data.forms = {single}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single}
data.forms = {single .. "dje-n"}
data.forms = {base .. "-n"}
data.forms = {single .. "s"}
data.forms = {single .. "djes"}
data.forms = {base}
data.forms = {single .. "s"}
data.forms = {single .. "djes"}
data.forms = {base .. "r"}
data.forms = {single .. "p"}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "p"}
data.forms = {single .. "dje"}
data.forms = {base .. "r"}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "p"}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "p"}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {single .. "p"}
data.forms = {single .. "dje"}
data.forms = {base .. "tj"}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base}
data.forms = {base}
data.forms = {single .. "dje"}
data.forms = {base .. "r"}
data.forms = {"ge" .. single}
data.forms = {single}
data.forms = {single, single .. "p"}
data.forms = {single .. "tj", base .. "tj"}
data.forms = {single .. "p"}
data.forms = {base .. "m"}
end
}
inflections = {
params = {
= {},
= {}
},
func = function(args, data)
local base = args or (mw.title.getCurrentTitle().nsText == "Template" and "zeen" or mw.title.getCurrentTitle().text)
if irregular then
irregular(data)
else
error("Unknown irregular verb '" .. base .. "'.")
end
end
}
irregular = function(data)
table.insert(data.categories, "Limburgish irregular verbs")
data.info = " (irregular)"
data.forms = {"baere"}
data.forms = {"baere"}
data.forms = {"baerendj"}
data.forms = {"gebaore"}
data.forms = {"gebaore", "gebaorer", "gebaores"}
data.forms = {"gebaorelik"}
data.forms = {"baer"}
data.forms = {"boor"}
data.forms = {"baere"}
data.forms = {"bèr"}
data.forms = {"boor"}
data.forms = {"baere-n"}
data.forms = {"bèrs"}
data.forms = {"boors"}
data.forms = {"baere"}
data.forms = {"bèrs"}
data.forms = {"boors"}
data.forms = {"bèrrer"}
data.forms = {"bèrtj"}
data.forms = {"boor"}
data.forms = {"baere"}
data.forms = {"bèrtj'r"}
data.forms = ""
data.forms = {"boor"}
data.forms = {"bèrrer"}
data.forms = {"baere"}
data.forms = {"bore"}
data.forms = {"baere"}
data.forms = {"bèrtj"}
data.forms = {"boortj"}
data.forms = {"bèrre"}
data.forms = {"baertj"}
data.forms = {"boortj"}
data.forms = {"baere"}
data.forms = {"baertj"}
data.forms = {"boortj"}
data.forms = {"bèrretj"}
data.forms = {"baere"}
data.forms = {"bore"}
data.forms = {"baere"}
data.forms = {"baere"}
data.forms = {"bore"}
data.forms = {"bèrrer"}
data.forms = {"gebèr"}
data.forms = {"baer"}
data.forms = {"bèrtj"}
data.forms = {"bèr"}
data.forms = {"baertj"}
data.forms = {"baerem"}
end
irregular = function(data)
table.insert(data.categories, "Limburgish irregular verbs")
data.info = " (irregular)"
data.forms = {"bèdzje"}
data.forms = {"bèdzje"}
data.forms = {"bèdzjendje"}
data.forms = {"gebótsj"}
data.forms = {"gebótsj", "gebódzje", "gebódzjer", "gebódzjes"}
data.forms = {"gebódzjelik"}
data.forms = {"bètsj"}
data.forms = {"batsj"}
data.forms = {"bèdzje"}
data.forms = {"bètsj"}
data.forms = {"batsj"}
data.forms = {"bèdzje-n"}
data.forms = {"bèdzjes"}
data.forms = {"badzjes"}
data.forms = {"bèdzje"}
data.forms = {"bèdzjes"}
data.forms = {"badzjes"}
data.forms = {"bèdzjer"}
data.forms = {"bètsj"}
data.forms = {"batsj"}
data.forms = {"bèdzje"}
data.forms = {"bètsj"}
data.forms = {"batsj"}
data.forms = {"bèdzjer"}
data.forms = {"bèdzje"}
data.forms = {"badzje"}
data.forms = {"bèdzje"}
data.forms = {"bètsj"}
data.forms = {"batsj"}
data.forms = {"bèdzje"}
data.forms = {"bètsj"}
data.forms = {"batsj"}
data.forms = {"bèdzje"}
data.forms = {"bètsj"}
data.forms = {"batsj"}
data.forms = {"bèdzjetj"}
data.forms = {"bèdzje"}
data.forms = {"badzje"}
data.forms = {"bèdzje"}
data.forms = {"bèdzje"}
data.forms = {"badzje"}
data.forms = {"bèdzjer"}
data.forms = {"gebótsj"}
data.forms = {"bètsj"}
data.forms = {"bötsj"}
data.forms = {"buuetsj"}
data.forms = {"boeatsj"}
data.forms = {"bötsjem"}
end
irregular = function(data)
table.insert(data.categories, "Limburgish irregular verbs")
data.info = " (irregular)"
data.forms = {"doon"}
data.forms = {"doon"}
data.forms = {"donendje"}
data.forms = {"gedaon"}
data.forms = {"gedaon", "gedaone", "gedaoner", "gedaones"}
data.forms = {"gedäöndjelik"}
data.forms = {"doon"}
data.forms = {"di-j"}
data.forms = {"daon"}
data.forms = {"doon"}
data.forms = {"di-j"}
data.forms = {"daon"}
data.forms = {"deis"}
data.forms = {"di-js"}
data.forms = {"daons"}
data.forms = {"deis"}
data.forms = {"di-js"}
data.forms = {"daons"}
data.forms = {"deitj"}
data.forms = {"di-j"}
data.forms = {"daontj"}
data.forms = {"deitj'r"}
data.forms = ""
data.forms = {"di-j"}
data.forms = {"daontj'r"}
data.forms = ""
data.forms = {"doon"}
data.forms = {"di-jje"}
data.forms = {"daone"}
data.forms = {"doontj"}
data.forms = {"di-jtj"}
data.forms = {"daontj"}
data.forms = {"doontj"}
data.forms = {"di-j"}
data.forms = {"daontj"}
data.forms = {"doontj"}
data.forms = {"di-j", "di-jtj"}
data.forms = {"daontj"}
data.forms = {"doon"}
data.forms = {"di-jje"}
data.forms = {"daone"}
data.forms = {"doon"}
data.forms = {"di-jje"}
data.forms = {"daone"}
data.forms = {"gedoons"}
data.forms = {"dooch"}
data.forms = {"dootj"}
data.forms = {"doon"}
data.forms = {"doontj"}
data.forms = {"daonem"}
end
irregular = function(data)
table.insert(data.categories, "Limburgish irregular verbs")
data.info = " (irregular)"
data.forms = {"dönke"}
data.forms = {"dönke"}
data.forms = {"dönkendje"}
data.forms = {"gedóch"}
data.forms = {"gedóch", "gedóchtje", "gedóchtjer", "gedóchtjes"}
data.forms = {"gedóch", "gedóchtjelik"}
data.forms = {"dönk"}
data.forms = {"dóch"}
data.forms = {"tönke"}
data.forms = {"dönk"}
data.forms = {"dóch"}
data.forms = {"tönke-n"}
data.forms = {"dönks"}
data.forms = {"dóchs"}
data.forms = {"tönks"}
data.forms = {"dönks"}
data.forms = {"dóchs"}
data.forms = {"tönks"}
data.forms = {"dönk"}
data.forms = {"dóch"}
data.forms = {"tönk"}
data.forms = {"dönk"}
data.forms = {"dóch"}
data.forms = {"tönk"}
data.forms = {"dönke"}
data.forms = {"dóchte"}
data.forms = {"tönke"}
data.forms = {"dönke"}
data.forms = {"dóchte"}
data.forms = {"tönktj"}
data.forms = {"tönk"}
data.forms = {"dóch"}
data.forms = {"tönk"}
data.forms = {"tönk"}
data.forms = {"dóch"}
data.forms = {"tönketj"}
data.forms = {"dönke"}
data.forms = {"dóchte"}
data.forms = {"tönke"}
data.forms = {"dönke"}
data.forms = {"dóchte"}
data.forms = {"tönke"}
data.forms = {"gedönk"}
data.forms = {"duuch"}
data.forms = {"duutj"}
data.forms = {"duuetj"}
data.forms = {"duutj"}
data.forms = {"dönkem"}
end
irregular = function(data)
table.insert(data.categories, "Limburgish irregular verbs")
table.insert(data.categories, "Limburgish suppletive verbs")
data.info = " (irregular, suppletive)"
data.forms = {"gaon"}
data.forms = {"gaon"}
data.forms = {"gäöndje"}
data.forms = {"gegange"}
data.forms = {"gegange", "geganger", "geganges"}
data.forms = {"gegäöndjelik"}
data.forms = {"gaon"}
data.forms = {"góng"}
data.forms = {"gank"}
data.forms = {"gaon"}
data.forms = {"góng"}
data.forms = {"gank"}
data.forms = {"geis"}
data.forms = {"gónks"}
data.forms = {"ganks"}
data.forms = {"geis"}
data.forms = {"gónks"}
data.forms = {"ganks"}
data.forms = {"geitj"}
data.forms = {"góng"}
data.forms = {"gank"}
data.forms = {"geitj'r"}
data.forms = {"góng"}
data.forms = {"gank"}
data.forms = {"gaon"}
data.forms = {"gónge"}
data.forms = {"gange"}
data.forms = {"gaontj"}
data.forms = {"gónk"}
data.forms = {"gank"}
data.forms = {"gaontj"}
data.forms = {"góng"}
data.forms = {"gank"}
data.forms = {"gaontj"}
data.forms = {"gónk"}
data.forms = {"gank"}
data.forms = {"gaon"}
data.forms = {"gónge"}
data.forms = {"gange"}
data.forms = {"gaon"}
data.forms = {"gónge"}
data.forms = {"gange"}
data.forms = {"gegaon"}
data.forms = {"gank"}
data.forms = {"gank"}
data.forms = {"gènk"}
data.forms = {"gank"}
data.forms = {"gaonem"}
end
irregular = function(data)
table.insert(data.categories, "Limburgish irregular verbs")
data.info = " (irregular)"
data.forms = {"lieje"}
data.forms = {"lieje"}
data.forms = {"liejendj"}
data.forms = {"geleeje"}
data.forms = {"geleeje", "geleejer", "geleejes"}
data.forms = {"geleejelik"}
data.forms = {"liej"}
data.forms = {"leej"}
data.forms = {"lieje"}
data.forms = {"liej"}
data.forms = {"leej"}
data.forms = {"lieje-n"}
data.forms = {"lietsj"}
data.forms = {"leejs"}
data.forms = {"lieje"}
data.forms = {"lietsj"}
data.forms = {"leejs"}
data.forms = {"liejer"}
data.forms = {"lietj"}
data.forms = {"leej"}
data.forms = {"lieje"}
data.forms = {"lietj'r"}
data.forms = {"leej"}
data.forms = {"liejer"}
data.forms = {"lieje"}
data.forms = {"leeje"}
data.forms = {"lieje"}
data.forms = {"lietj"}
data.forms = {"leetj"}
data.forms = {"lieje"}
data.forms = {"lietj"}
data.forms = {"leej"}
data.forms = {"lieje"}
data.forms = {"lietj"}
data.forms = {"leetj"}
data.forms = {"lieëtj"}
data.forms = {"lieje"}
data.forms = {"leeje"}
data.forms = {"lieje"}
data.forms = {"lieje"}
data.forms = {"leeje"}
data.forms = {"liejer"}
data.forms = {"geliej"}
data.forms = {"liej"}
data.forms = {"lietj"}
data.forms = {"lieëtj"}
data.forms = {"lietj"}
data.forms = {"lieëm"}
end
irregular = function(data)
error("Ambiguous conjugation: please specify zeen-1 (to see) or zeen-2 (to be)")
end
irregular = function(data)
table.insert(data.categories, "Limburgish irregular verbs")
data.info = " (irregular)"
data.forms = {"zeen"}
data.forms = {"zeen"}
data.forms = {"zeendje"}
data.forms = {"gezeen"}
data.forms = {"gezeen", "gezene", "gezener", "gezenes"}
data.forms = {"gezenelik"}
data.forms = {"zeen"}
data.forms = {"zoog", "zaag"}
data.forms = {"zene"}
data.forms = {"zeen"}
data.forms = {"zoog", "zaag"}
data.forms = {"zene-n"}
data.forms = {"zuus"}
data.forms = {"zoogs", "zaags"}
data.forms = {"zene"}
data.forms = {"zuus"}
data.forms = {"zoogs", "zaags"}
data.forms = {"zener"}
data.forms = {"zuutj"}
data.forms = {"zoog", "zaag"}
data.forms = {"zene"}
data.forms = {"zuutj'r"}
data.forms = {"zoog", "zaag"}
data.forms = {"zener"}
data.forms = {"zeen"}
data.forms = {"zoge", "zage"}
data.forms = {"zene"}
data.forms = {"zeentj"}
data.forms = {"zoge", "zage"}
data.forms = {"zene"}
data.forms = {"zuutj"}
data.forms = {"zoog", "zaag"}
data.forms = {"zene"}
data.forms = {"zuutj"}
data.forms = {"zoog", "zaag"}
data.forms = {"zenetj"}
data.forms = {"zeen"}
data.forms = {"zoge", "zage"}
data.forms = {"zene"}
data.forms = {"zeen"}
data.forms = {"leeje"}
data.forms = {"zener"}
data.forms = {"gezeen"}
data.forms = {"zuug"}
data.forms = {"zuutj"}
data.forms = {"zuuetj"}
data.forms = {"zuutj"}
data.forms = {"zenem"}
end
irregular = function(data)
table.insert(data.categories, "Limburgish irregular verbs")
table.insert(data.categories, "Limburgish suppletive verbs")
data.info = " (highly irregular, suppletive)"
data.aux = "zeen"
data.forms = {"zeen", "waeze"}
data.forms = {"zeen"}
data.forms = {"?"}
data.forms = {"gewaes"}
data.forms = {"gewaes", "gewaeze", "gewaezer", "gewaezes"}
data.forms = {"gewaezelik"}
data.forms = {"bön"}
data.forms = {"woor", "waas", "waar"}
data.forms = {"bönne"}
data.forms = {"bön"}
data.forms = {"woor", "waas", "waar"}
data.forms = {"bönne-n"}
data.forms = {"bös"}
data.forms = {"woors", "waas", "waars"}
data.forms = {"bönne"}
data.forms = {"bös"}
data.forms = {"woors", "waas", "waars"}
data.forms = {"bonner"}
data.forms = {"is"}
data.forms = {"woor", "waas", "waar"}
data.forms = {"bönne"}
data.forms = {"is"}
data.forms = {"woor", "waas", "waar"}
data.forms = {"bönner"}
data.forms = {"zeen"}
data.forms = {"wore", "ware"}
data.forms = {"bönne"}
data.forms = {"zeetj"}
data.forms = {"woortj"}
data.forms = {"bönne"}
data.forms = {"zeetj", "zeentj"}
data.forms = {"woortj", "waartj"}
data.forms = {"bönne"}
data.forms = {"zeetj", "zeentj"}
data.forms = {"woortj", "waartj"}
data.forms = {"bönneetj"}
data.forms = {"zeen", "zeent"}
data.forms = {"wore", "ware"}
data.forms = {"bönne"}
data.forms = {"zeen"}
data.forms = {"wore", "ware"}
data.forms = {"bönner"}
data.forms = {"gezeen"}
data.forms = {"bön"}
data.forms = {"zeetj", "zeentj"}
data.forms = {"eertj"}
data.forms = {"zeetj", "zeentj"}
data.forms = {"bönnem"}
end
-- Make the table
function make_table(data)
local function show_form(form)
if not form then
return "—"
end
local ret = {}
for key, subform in ipairs(form) do
table.insert(ret, m_links.full_link({lang = lang, term = subform}))
end
return table.concat(ret, ", ")
end
local function repl(param)
if param == "lemma" then
return m_links.full_link({lang = lang, alt = mw.title.getCurrentTitle().text}, "term")
elseif param == "info" or param == "aux" then
return data
elseif param == "n" then
return m_gender.format_list({"n"})
else
return show_form(data.forms)
end
end
local wikicode = [=[
<div class="NavFrame">
<div class="NavHead" style="text-align: left">Montfortian conjugation of {{{lemma}}}{{{info}}}</div>
<div class="NavContent">
{| border="1px solid #cdcdcd" style="border-collapse:collapse;background:#FEFEFE;width:100%;text-align:center;" class="inflection-table"
|-
! rowspan=2 style="background:#C0C0C0" | non-finite forms
! style="background:#C0C0C0" | infinitive
! style="background:#C0C0C0" | gerund
! style="background:#C0C0C0" | present participle
! style="background:#C0C0C0" | past participle
! style="background:#C0C0C0" | adjective
! style="background:#C0C0C0" | adverb
|-
| (tö) {{{inf}}}
| 't {{{ger}}} {{{n}}}
| {{{pres_p}}}
| {{{aux}}} {{{past_p}}}
| {{{adj}}}
| {{{adv}}}
|-
! rowspan=2 style="background:#C0C0C0" | number & tense
! colspan=3 style="background:#C0C0C0" | ]
! colspan=3 style="background:#C0C0C0" | verb-first order
|-
! style="background:#C0C0C0" | present
! style="background:#C0C0C0" | past
! style="background:#C0C0C0" | subjunctive
! style="background:#C0C0C0" | present
! style="background:#C0C0C0" | past
! style="background:#C0C0C0" | subjunctive
|-
! style="background:#c0cfe4" | first person singular
| {{{pres_1s_sv}}}
| {{{past_1s_sv}}}
| {{{sub_1s_sv}}}
| {{{pres_1s_vs}}}
| {{{past_1s_vs}}}
| {{{sub_1s_vs}}}
|-
! style="background:#c0cfe4" | second person singular
| {{{pres_2s_sv}}}
| {{{past_2s_sv}}}
| {{{sub_2s_sv}}}
| {{{pres_2s_vs}}}
| {{{past_2s_vs}}}
| {{{sub_2s_vs}}}
|-
! style="background:#c0cfe4" | third person singular
| {{{pres_3s_sv}}}
| {{{past_3s_sv}}}
| {{{sub_3s_sv}}}
| {{{pres_3s_vs}}}
| {{{past_3s_vs}}}
| {{{sub_3s_vs}}}
|-
! style="background:#c0cfe4" | first person plural
| {{{pres_1p_sv}}}
| {{{past_1p_sv}}}
| {{{sub_1p_sv}}}
| {{{pres_1p_vs}}}
| {{{past_1p_vs}}}
| {{{sub_1p_vs}}}
|-
! style="background:#c0cfe4" | second person plural
| {{{pres_2p_sv}}}
| {{{past_2p_sv}}}
| {{{sub_2p_sv}}}
| {{{pres_2p_vs}}}
| {{{past_2p_vs}}}
| {{{sub_2p_vs}}}
|-
! style="background:#c0cfe4" | third person plural
| {{{pres_3p_sv}}}
| {{{past_3p_sv}}}
| {{{sub_3p_sv}}}
| {{{pres_3p_vs}}}
| {{{past_3p_vs}}}
| {{{sub_3p_vs}}}
|-
! rowspan=2 style="background:#C0C0C0" | other forms
! style="background:#C0C0C0" | noun
! style="background:#C0C0C0" | imperative singular impolite
! style="background:#C0C0C0" | imperative singular polite
! style="background:#C0C0C0" | imperative dual
! style="background:#C0C0C0" | imperative plural
! style="background:#C0C0C0" | inclusive
|-
| 't {{{noun}}} {{{n}}}
| {{{imp_sg_imp}}}!
| {{{imp_sg_pol}}}!
| {{{imp_du}}}!
| {{{imp_pl}}}!
| {{{incl}}}
|}</div></div>]=]
return (mw.ustring.gsub(wikicode, "{{{(+)}}}", repl)) .. m_utils.format_categories(data.categories, lang)
end
return export