This data submodule defines part of Wiktionary's category structure.

For an introduction to the poscatboiler system and a description of how to add or modify categories, see Module:category tree/poscatboiler/data/documentation.


local labels = {}
local handlers = {}

local lang = require("Module:languages").getByCode("nl")


labels["คำกริยาแบ่งตามชนิดการแปลง"] = {
	intro = "{{wikipedia|Dutch conjugation#By derivation}}",
	description = "Dutch verbs categorized by the type of derivation.",
	parents = {{name = "คำกริยา", sort = "การแปลง"}},
}
labels["verbs by derivation type"] = labels["คำกริยาแบ่งตามชนิดการแปลง"]

labels["คำกริยาพื้นฐาน"] = {
	description = "This category contains Dutch verbs that are neither prefixed nor separable.",
	parents = {{name = "คำกริยาแบ่งตามชนิดการแปลง", sort = "พื้นฐาน"}},
}
labels["basic verbs"] = labels["คำกริยาพื้นฐาน"]

labels["คำกริยาเติมอุปสรรค"] = {
	description = "This category contains Dutch prefixed verbs, which are verbs that are compounded with an unstressed prefix, such as " ..
	"{{m|nl|be-}}, {{m|nl|ver-}} or {{m|nl|ont-}}. The unstressed prefix replaces the {{m|nl||ge-}} prefix that normally occurs in the " ..
	"past participle.",
	parents = {{name = "คำกริยาแบ่งตามชนิดการแปลง", sort = "เติมอุปสรรค"}},
}
labels["prefixed verbs"] = labels["คำกริยาเติมอุปสรรค"]

labels["คำกริยาแยกได้"] = {
	intro = "{{wikipedia}}",
	description = "This category contains Dutch separable verbs, which are verbs that are compounded with a particle, " ..
	"often an adverb. When the particle is immediately followed by the verb form, it is written together with it as one word. " ..
	"In other cases, it is separated from the main verb by a space and possibly other words.",
	parents = {{name = "คำกริยาแบ่งตามชนิดการแปลง", sort = "แยกได้"}},
}
labels["separable verbs"] = labels["คำกริยาแยกได้"]

table.insert(handlers, function(data)
	local pref = data.label:match("^คำกริยาเติมอุปสรรค (.+%-) $")
	if pref then
		local link = require("Module:links").full_link({ lang = lang, term = pref }, "term")
		local altlink = require("Module:links").full_link({ lang = lang, alt = pref }, "term")
		return {
			description = "Dutch prefixed verbs with the prefix " .. link .. ".",
			displaytitle = "Dutch prefixed verbs with " .. altlink,
			breadcrumb = altlink,
			parents = {{name = "คำกริยาเติมอุปสรรค", sort = pref}},
		}
	end
end)

table.insert(handlers, function(data)
	local particle = data.label:match("^คำกริยาแยกได้ด้วย (.+) $")
	if particle then
		local link = require("Module:links").full_link({ lang = lang, term = particle }, "term")
		local altlink = require("Module:links").full_link({ lang = lang, alt = particle }, "term")
		return {
			description = "Dutch separable verbs with the particle " .. link .. ".",
			displaytitle = "Dutch separable verbs with " .. altlink,
			breadcrumb = altlink,
			parents = {{name = "คำกริยาแยกได้", sort = particle}},
		}
	end
end)


return {LABELS = labels, HANDLERS = handlers}