|
|
| (14 intermediate revisions by 2 users not shown) |
| Line 3: |
Line 3: |
|
| |
|
| --------------------------------- Nouns/Pronouns/Numerals -------------------------------- | | --------------------------------- Nouns/Pronouns/Numerals -------------------------------- |
| | labels["lenite nouns"] = { |
| | description = "{{{langname}}} nouns which trigger lenition in the following term.", |
| | parents = "nouns by inflection type", |
| | } |
|
| |
|
| labels["n-stem nouns"] = { | | labels["radical nouns"] = { |
| description = "{{{langname}}} ''n''-stem nouns, deriving from Proto-Indo-European ''n''-stem nouns.", | | description = "{{{langname}}} nouns which do not trigger lenition in the following term.", |
| displaytitle = "{{{langname}}} ''n''-stem nouns",
| | parents = "nouns by inflection type", |
| additional = "This is not a single class in {{{langdisp}}}, but several related gender-differentiated classes.",
| |
| breadcrumb = "''n''-stem",
| |
| parents = {"nouns by inflection type"},
| |
| } | | } |
|
| |
|
| --[=[
| | labels["eclipse nouns"] = { |
| Noun declension specifications. The top-level key is the stem class, and the value is an object containing properties of
| | description = "{{{langname}}} nouns which trigger eclipsis in the following term.", |
| the stem class. If the stem class contains the word 'GENDER' in it, it expands into labels both for a parent category
| | parents = "nouns by inflection type", |
| that subsumes several genders (obtained by removing the word 'GENDER' and following whitespace) as well as
| |
| gender-specific children categories (obtained by replacing the word 'GENDER' with the genders specified in the
| |
| `possible_genders` field). The stem class can contain literal Latin-script text (e.g. suffixes), which will be
| |
| italicized in breadcrumbs and titles. The fields of the property object for a given stem class are as follows:
| |
| * `gender`: The description of the gender(s) of the stem class. If preceded by ~, the description is preceded by
| |
| "most commonly". This appears in the `additional` field of the label properties. It is not used in gender-specific
| |
| children categories; instead the gender of that category is used.
| |
| * `possible_genders`: The possible genders this class occurs in. If this is specified, the word 'GENDER' must occur in
| |
| the stem class, and gender-specific variants of the stem class (with GENDER replaced by the possible genders) are
| |
| handled along with a parent category subsuming all genders.
| |
| * `nom_sg`: The nominative singular ending. Use <...> to enclose literal Latin-script text (e.g. suffixes), which will
| |
| be italicized.
| |
| * `GENDER_nom_sg`: The nominative singular ending for the GENDER variant of this stem class. If not specified, the
| |
| value of `nom_sg` is used.
| |
| * `gen_sg`: The genitive singular ending. Conventions are the same as for `nom_sg`.
| |
| * `GENDER_gen_sg`: The genitive singular ending for the GENDER variant of this stem class. If not specified, the value
| |
| of `gen_sg` is used.
| |
| * `nom_pl`: The nominative plural ending. Conventions are the same as for `nom_sg`.
| |
| * `GENDER_nom_pl`: The nominative plural ending for the GENDER variant of this stem class. If not specified, the value
| |
| of `nom_pl` is used.
| |
| * `breadcrumb`: The breadcrumb for the category, appearing in the trail of breadcrumbs at the top of the page. If this
| |
| stem has gender-specific variants, the breadcrumb specified here is used only for the parent category, while the
| |
| gender-specific child categories use the gender as the breadcrumb. If not specified, it defaults to `sortkey`. If that
| |
| is also not specified, or if the breadcrumb has the value "+", the stem class (without the word 'GENDER') is used.
| |
| (Use "+" when a sortkey is specified but the stem class should be used as the breadcrumb.)
| |
| * `parent`: The parent category or categories. If specified, the actual category label is formed by appending the part
| |
| of speech (e.g. "nouns"). Defaults to "POS by inflection type" where POS is the part of speech. Note that
| |
| gender-specific child categories do not use this, but always have the gender-subsuming parent stem class category as
| |
| their parent.
| |
| * `sortkey`: The sort key used for sorting this category among its parent's children. Defaults to the stem class
| |
| (without the word 'GENDER'). Note that gender-specific child categories do not use this, but always use the gender
| |
| as the sort key.
| |
| ]=] | |
| local noun_decls = {
| |
| ["<a>-stem"] = { | |
| gender = "masculine",
| |
| possible_genders = {"masculine", "neuter"},
| |
| nom_sg = "when masculine, <-r> (which assimilates to a preceding <l>, <n> or <s>)",
| |
| masculine_nom_sg = "<-r> (which assimilates to a preceding <l>, <n> or <s>)",
| |
| neuter_nom_sg = "the bare stem",
| |
| gen_sg = "<-s> or sometimes <-ar>", | |
| nom_pl = "when masculine, <-ar>",
| |
| masculine_nom_pl = "<-ar>",
| |
| },
| |
| ["<ōn>-stem"] = {
| |
| gender = "feminine",
| |
| nom_sg = "<-a>",
| |
| gen_sg = "bare stem with U-UMLAUT",
| |
| nom_pl = "<-orr> with U-UMLAUT",
| |
| },
| |
| } | | } |
|
| |
|
| require("Module:category tree/utilities").add_inflection_labels {
| | -- Verbs -- |
| labels = labels, | | for _, part in ipairs{"i", "è"} do |
| pos = "noun",
| | labels[part .. "-negative verbs"] = { |
| stem_classes = noun_decls,
| | description = "{{{langname}}} verbs which use {{l|snon|" .. part .. "}} to form the negative.", |
| mark_up_spec = function(spec, nolink)
| | parents = "verbs", |
| -- umlauts
| | displaytitle = "{{{langname}}} ''" .. part .. "''-negative verbs", |
| spec = spec:gsub("I%-UMLAUT", "{{w|Old Norse#Umlaut|i-umlaut}}") | | breadcrumb = part, |
| spec = spec:gsub("U%-UMLAUT", "{{w|Old Norse#U-umlaut|u-umlaut}}") | | } |
| if nolink then
| | end |
| spec = require("Module:links").remove_links(spec)
| | |
| end
| | local prepositions = { |
| return (spec:gsub("<(.-)>", "''%1''"))
| | "{{l|snon|til}} > {{l|snon|tilmì}}", |
| end, | | "{{l|snon|frà}} > {{l|snon|fràmhì}}", |
| principal_parts = {
| | "{{l|snon|i}} > {{l|snon|inì}}", |
| {"nom_sg", "nominative singular"},
| |
| {"gen_sg", "genitive singular"},
| |
| {"nom_pl", "nominative plural"},
| |
| },
| |
| addl = "The stem classes are named from the perspective of [[:Category:Proto-Germanic language|Proto-Germanic]] " .. | |
| "and may not still be visible in {{{langname}}} inflections.", | |
| } | | } |
| | |
| | for i, desc in ipairs(prepositions) do |
| | local num = tostring(i) |
| | labels["class " .. num .. " prepositions"] = { |
| | description = "{{{langname}}} prepositions of pattern " .. num .. ", e.g. " .. desc .. ".", |
| | parents = {{name="prepositions by inflection type", sort = num}}, |
| | breadcrumb = num, |
| | } |
| | end |
|
| |
|
| return {LABELS = labels} | | return {LABELS = labels} |