Module:category tree/lang/mr


This module handles generating the descriptions and categorization for Marathi category pages of the format "Marathi 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 category tree system, which is a general framework for generating the descriptions and categorization of category pages.

For more information, see Module:category tree/lang/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/lang in order for the module to be recognized.


local labels = {}
local handlers = {}

local u = mw.ustring.char

for _, pos in ipairs({"nouns", "verbs", "adjectives"}) do
	labels[pos .. " with phonetic respelling"] = {
		description = "{{{langname}}} " .. pos .. " using phonetic respelling in their " ..
			(pos == "verbs" and "conjugation" or "declension") ..
			" tables due to irregular or unpredictable pronunciations.",
		additional = [=[
===See also===
* [[Wiktionary:Marathi transliteration]]
* [[Module:mr-translit]]]=],
		parents = {
			"terms by orthographic property", 
			"terms by phonemic property", 
			{name = pos, sort = "phonetic respelling"},
		},
	}
end

--------------------------------- Nouns --------------------------------

	
labels["nouns by gender and stem type"] = {
	description = "{{{langname}}} nouns categorized by gender and stem type.",
	parents = {{name = "nouns", sort = "gender and stem type"}},
	breadcrumb = "by gender and stem type",
}

table.insert(handlers, function(data)
	local gender, stem, pos
	gender, stem, pos = data.label:match("^([a-z]+ine) (independent unmarked [^ %-]*%-stem) (.*)s$")
	if not gender then
		gender, stem, pos = data.label:match("^([a-z]+) (independent [^ %-]*%-stem) (.*)s$")
	end
	if not gender then
		gender, stem, pos = data.label:match("^([a-z]+) (unmarked [^ %-]*%-stem) (.*)s$")
	end
	if not gender then
		gender, stem, pos = data.label:match("^([a-z]+) ([^ %-]*%-stem) (.*)s$")
	end
	if gender and pos == "noun" then
		local desc = "{{{langname}}} " .. gender .. " " .. stem .. " " .. pos .. "s."
		local additional
		if stem:find("independent") then
			additional = "* Here, 'independent' means that the stem ending directly " ..
			"follows a vowel and so uses the independent Devanagari form of the vowel that begins the ending."
		end
		if stem:find("unmarked") then
			additional = additional and additional .. "\n" or ""
			additional = additional .. "* Here, 'unmarked' means that the endings are added onto the full direct singular form " ..
			"without removing the stem ending."
		end
		return {
			description = desc,
			additional = additional,
			parents = {
				{name = pos .. "s by gender and stem type", sort = stem:gsub("independent ", ""):gsub("unmarked ", "")}
			},
			breadcrumb = gender .. " " .. stem,
		}
	end
end)

--------------------------------- Verbs --------------------------------

labels["verbs with Perso-Arabic roots"] = {
	description = "{{{langname}}} verbs whose {{lg|root}}s are [[Perso-Arabic]] rather than native.</br></br>For example, the verbal root of {{m|mr|आजमावणे|tr={{xlit|mr|आज़मावणे}}}} is Persian rather than native. The verbal root of {{m|mr|तपासणे}} is Arabic rather than native.",
	parents = {{name = "verbs", sort = "Perso-Arabic"}},
}

labels["verbs adopted from Sanskrit"] = {
	description = "{{{langname}}} verbs that are taken directly from Sanskrit rather than being native formations.</br></br>For example, {{m|mr|वाचणे|tr={{xlit|mr|वाच़णे}}|t=to read}} is taken directly from {{m+|sa|वाचयति}} rather than being a native formation.",
	parents = {{name = "verbs", sort = "Sanskrit"}},
}

--------------------------------- Orthographic  Properties --------------------------------

labels["geminated terms spelled with two aspirated consonants"] = {
	description = "{{{langname}}} terms with the first character of an aspirated geminated consonant being spelled with an aspirated consonant rather than its non-aspirated counterpart.</br></br>For example, terms spelled with either {{lang|mr|ख्ख}} or {{lang|mr|ठ्ठ}} instead of {{lang|mr|क्ख}} or {{lang|mr|ट्ठ}}. This is unusual since it is impossible to pronounce {{lang|mr|ख्ख}} as {{IPAchar|/kʰkʰ/}} or to pronounce {{lang|mr|ठ्ठ}} as {{IPAchar|/ʈʰʈʰ/}}.",
	parents = {{name = "terms by orthographic property", sort = "geminated aspiration"}},
}

labels["terms with hypercorrected spellings"] = {
	description = "{{{langname}}} spellings that have changed under the assumption that they are somehow better than their original spellings.</br></br>For example, the usage of {{m|mr|नाष्टा}} with retroflexion instead of {{m|mr|नाश्ता}}, even though the language of the etymon, Classical Persian, does not have retroflexion.",
	parents = {{name = "terms by orthographic property", sort = "hypercorrected"}},
}

--------------------------------- Phonemic Properties --------------------------------


labels["terms with apocope"] = {
	description = "{{{langname}}} terms with a noticeable absence of a word-final sound. This is usually refers to the word-final deletion of the high vowels {{IPAchar|/i/}} and {{IPAchar|/u/}} in the lemma form of terms borrowed from Sanskrit.</br></br>For example, the deletion of {{IPAchar|/i/}} in {{m|mr|रात्र}} from {{m+|sa|रात्रि}} and the deletion of {{IPAchar|/u/}} in {{m|mr|मध}} from {{m+|sa|मधु}}.",
	parents = {{name = "terms by phonemic property", sort = "apocope"}},
}

labels["terms with unexpected gemination"] = {
	description = "{{{langname}}} terms with an unexpected lengthening of a consonant.",
	parents = {{name = "terms by phonemic property", sort = "unexpected gemination"}},
}

--------------------------------- Etymology --------------------------------

labels["terms derived from Prakrit without cluster simplification"] = {
	description = "{{{langname}}} terms usually undergo a sound change where geminate " ..
		"clusters are {{w|Degemination|degeminated}} with " ..
		"{{w|Compensatory lengthening|compensatory lengthening}} and nasal + " ..
		"{{w|Homorganic consonant|homorganic consonant}} clusters lose the " ..
		"nasal consonant and undergo compensatory lengthening. For example, " ..
		"{{ncog|pra|𑀲𑀢𑁆𑀢|सत्त}} > {{m+|mr|सात}} and " ..
		"{{ncog|pra|𑀤𑀁𑀢|दन्त}} > {{m+|mr|दात}}.<br/><br/>" ..
		"However, some words did not participate in this sound change. For example, " ..
		"{{ncog|pra|𑀳𑀢𑁆𑀣𑀺|हत्थि}} > {{m+|mr|हत्ती}}. Words which " ..
		"failed to undergo cluster simplification are included here.",
	parents = {{ 
		name = "terms derived from Prakrit",
		sort = "without cluster simplification"
	}}
}

return {LABELS = labels, HANDLERS = handlers}
Category:Category tree data modules/lang Category:Marathi data modules Category:Marathi modules