This module handles generating the descriptions and categorization for Galician category pages of the format "Galician LABEL" where LABEL can be any text. Examples are Category:Bulgarian conjugation 2.1 verbs and Category:Russian velar-stem neuter-form nouns. This module is part of the poscatboiler system, which is a general framework for generating the descriptions and categorization of category pages.
For more information, see Module:category tree/poscatboiler/data/lang-specific/documentation.
NOTE: If you add a new language-specific module, you must add the language code to the list at the top of Module:category tree/poscatboiler/data/lang-specific in order for the module to be recognized.
local labels = {}
-----------------------------------------------------------------------------
-- --
-- VERBS --
-- --
-----------------------------------------------------------------------------
local conjugations = {
= "{{{langname}}} first conjugation verbs, derived from Latin ].",
= "{{{langname}}} second conjugation verbs, derived from Latin ] or ] verbs.",
= "{{{langname}}} third conjugation verbs, derived from Latin ] or ] verbs.",
= "{{{langname}}} verbs ending in {{m|gl||-or}}, {{m|gl||-ór}} or {{m|gl||-ôr}}, all of which are derivatives of {{m|gl|pór}} ({{m|gl|pôr}} in reintegrationist spelling).",
}
labels = {
description = "{{{langname}}} verbs categorized by conjugation.",
parents = {"verbs by inflection type"},
}
for conj, conjdesc in pairs(conjugations) do
labels = {
description = conjdesc,
displaytitle = "{{{langname}}} verbs ending in {{m|gl||-" .. conj .. "}}",
parents = {
{name = "verbs by conjugation", sort = conj},
},
breadcrumb = "{{m|gl||-" .. conj .. "}}",
}
end
labels = {
description = "{{{langname}}} verbs categorized by type of vowel alternation.",
parents = {"verbs by inflection type"},
}
labels = {
description = "{{{langname}}} verbs categorized by type of consonant alternation.",
parents = {"verbs by inflection type"},
}
-- Add labels for e.g. ].
local vowel_alternations = {
= {
desc = "with <i> in the first-person singular present indicative, throughout the present subjunctive and in the "
.. "singular imperative, and <e> elsewhere when the stem is stressed",
displaytitle = "<i-e> alternation in present singular",
},
= {
desc = "with <i> in all forms where the stem is stressed (singular present indicative and imperative, third-person "
.. "plural present indicative and imperative) and throughout the present subjunctive, and <e> elsewhere",
displaytitle = "<e> becoming <i> when stressed",
},
= {
desc = "with <ei> in all forms where the stem is stressed (singular present indicative and imperative, third-person "
.. "plural present indicative and imperative) and throughout the present subjunctive, and <e> elsewhere",
displaytitle = "<e> becoming <ei> when stressed",
},
= {
desc = "with <ei> in all forms where the stem is stressed (singular present indicative and imperative, third-person "
.. "plural present indicative and imperative) and throughout the present subjunctive, and <i> elsewhere",
displaytitle = "<i> becoming <ei> when stressed",
},
= {
desc = "with <í> in all forms where the stem is stressed (singular present indicative, subjunctive and imperative; "
.. "third-person plural present indicative, subjunctive and imperative) and <i> elsewhere",
displaytitle = "<i> becoming <í> when stressed",
},
= {
desc = "with <u> in the first-person singular present indicative, throughout the present subjunctive and in the "
.. "singular imperative, and <o> elsewhere when the stem is stressed",
displaytitle = "<u-o> alternation in present singular",
},
= {
desc = "with <u> in all forms where the stem is stressed (singular present indicative and imperative, third-person "
.. "plural present indicative and imperative) and throughout the present subjunctive, and <o> elsewhere",
displaytitle = "<o> becoming <u> when stressed",
},
= {
desc = "with <ú> in all forms where the stem is stressed (singular present indicative, subjunctive and imperative; "
.. "third-person plural present indicative, subjunctive and imperative) and <u> elsewhere",
displaytitle = "<u> becoming <ú> when stressed",
},
}
for alt, obj in pairs(vowel_alternations) do
local function replace_angle_brackets(spec)
local retval = spec:gsub("<(.-)>", "{{m|gl||%1}}") -- discard second return value
return retval
end
local breadcrumb = replace_angle_brackets(obj.displaytitle)
labels = {
description = "{{{langname}}} verbs " .. replace_angle_brackets(obj.desc) .. ".",
displaytitle = "{{{langname}}} verbs with " .. breadcrumb,
parents = {{name = "verbs by vowel alternation", sort = alt}},
breadcrumb = breadcrumb,
}
end
-- Add labels for e.g. ].
local consonant_alternations = {
= {"qu", "c"},
= {"c", "ç"},
= {"c", "z"},
= {"gu", "g"},
= {"g", "j"},
= {"gü", "gu"},
}
for alt, frontback in pairs(consonant_alternations) do
local desc
local front, back = unpack(frontback)
desc = "{{{langname}}} verbs whose final consonant alternates between ''" .. front .. "'' before front vowels (''e'', ''i'') " ..
"and ''" .. back .. "'' before back vowels (''a'', ''o'', ''u'')."
labels = {
description = desc,
displaytitle = "{{{langname}}} verbs with {{m|gl||" .. alt .. "}} alternation",
parents = {{name = "verbs by consonant alternation", sort = alt}},
breadcrumb = "{{m|gl||" .. alt .. "}}",
}
end
labels = {
description = "{{{langname}}} verbs with forms that exist only in the third person, and have no imperatives.",
parents = {{name = "defective verbs"}},
breadcrumb = "third-person-only",
}
labels = {
description = "{{{langname}}} verbs with an irregular short past participle (typically used with {{m|gl|ser}} "
.. "and {{m|gl|estar}}) that contrasts with a regularly formed \"long\" past participle (typically used with "
.. "{{m|gl|ter}} and {{m|gl|haber}}).",
parents = {{name = "irregular verbs", sort = "short past participle"}},
breadcrumb = "irregular short past participle",
}
return {LABELS = labels}