Pergi ke kandungan

Modul:category tree/templates

Daripada Wikikamus

Submodul data ini mentakrifkan sebahagian daripada struktur kategori Wikikamus.

Untuk pengenalan kepada sistem poscatboiler dan penerangan tentang cara menambah atau mengubah suai kategori, lihat Modul:category tree/data/doc.


local labels = {}
local raw_categories = {}
local raw_handlers = {}

local languages_module = "Module:languages"

local insert = table.insert


-----------------------------------------------------------------------------
--                                                                         --
--                                  LABELS                                 --
--                                                                         --
-----------------------------------------------------------------------------


labels["Templat"] = {
	description = "[[Wikikamus:Templat|Templat]] bahasa {{{langname}}}, yang mengandungi kod wiki boleh guna semula untuk membantu mencipta dan mengurus entri.",
	umbrella = {
		parents = {{name = "Templat", sort = " "}},
		breadcrumb = "mengikut bahasa",
	},
	parents = {{name = "{{{langcat}}}", raw = true}},
}

labels["Templat jadual automatik"] = {
	description = "Templat yang mengandungi jadual bahasa {{{langname}}} yang dijana secara automatik.",
	additional = "Templat ini menggunakan awalan <code>table:</code>. Contohnya, lihat [[Template:table:chess pieces/en]].",
	parents = {"Templat pautan"},
}

labels["Templat boilerplate kategori"] = {
	description = "Templat yang digunakan untuk menjana keterangan dan pengkategorian bagi laman kategori.",
	parents = {"Templat"},
}

labels["Templat penukaran"] = {
	description = "Templat yang digunakan dalam entri bahasa {{{langname}}} untuk menukar antara perwakilan ortografi atau angka yang berbeza.",
	parents = {"Templat"},
}

labels["Templat takrifan"] = {
	description = "Templat yang digunakan dalam [[Wikikamus:Glosari#baris takrifan|baris takrifan]] entri bahasa {{{langname}}} untuk membantu mencipta takrifan.",
	parents = {"Templat"},
}

labels["Templat entri"] = {
	description = "Templat yang digunakan untuk membantu penciptaan entri bahasa {{{langname}}}.",
	umbrella_parents = {"Subkategori templat mengikut bahasa", "Templat entri"},
	parents = {"Templat"},
}

labels["Templat etimologi"] = {
	description = "Templat yang digunakan dalam bahagian etimologi entri bahasa {{{langname}}}.",
	parents = {"Templat"},
}

labels["Templat percubaan"] = {
	description = "Templat yang digunakan untuk menguji kandungan yang mungkin digunakan dalam entri bahasa {{{langname}}}.",
	parents = {"Templat"},
}

labels["Templat bentuk bagi"] = {
	description = "Templat yang digunakan pada baris takrifan entri untuk bentuk terinfleksi bagi kata dalam {{{langdisp}}}, untuk memautkan kembali kepada bentuk utama.",
	parents = {"Templat takrifan", "Templat pautan"},
}

labels["Templat baris pengepala kata"] = {
	description = "Templat yang digunakan dalam entri bahasa {{{langname}}} untuk memaparkan baris yang mengandungi kata kepala.",
	parents = {"Templat"},
}

labels["Templat indeks"] = {
	description = "Templat yang digunakan untuk menyusun indeks bahasa {{{langname}}}.",
	parents = {"Templat pautan"},
}

labels["Templat jadual infleksi"] = {
	description = "Templat yang digunakan untuk memaparkan jadual infleksi bagi istilah bahasa {{{langname}}}.",
	parents = {"Templat"},
}

-- Jenis-jenis khusus templat jadual infleksi.
for _, pos in ipairs({
	{"adjektif", "adjektif"},
	{"kata keterangan", "kata keterangan"},
	{"penentu", "penentu"},
	{"nominal", "nominal"},
	{"kata nama", "kata nama"},
	{"kata bilangan", "kata bilangan"},
	{"partisipl", "partisipl"},
	{"pascakata", "pascakata"},
	{"partikel", "partikel"},
	{"kata sendi nama", "kata sendi nama"},
	{"kata ganti nama", "kata ganti nama"},
	{"kata kerja", "kata kerja"},
}) do
	labels["Templat jadual infleksi " .. pos[1]] = {
		description = "Templat yang digunakan untuk memaparkan jadual deklensi bagi " .. pos[2] .. " bahasa {{{langname}}}.",
		parents = {"Templat jadual infleksi"},
	}
end

labels["Templat pautan"] = {
	description = "Templat bahasa {{{langname}}} yang digunakan untuk mencipta pautan kepada entri lain.",
	parents = {"Templat"},
}

labels["Templat senarai"] = {
	description = "Templat yang mengandungi senarai bahasa {{{langname}}}.",
	additional = "Templat ini menggunakan awalan <code>list:</code>. Contohnya, lihat [[Template:list:Latin script letters/en]].<br />" ..
	"Lihat juga [[:Kategori:Templat senarai]].",
	parents = {"Templat pautan"},
}

labels["Templat mutasi"] = {
	description = "Templat yang digunakan untuk menunjukkan mutasi kata bahasa {{{langname}}}.",
	parents = {"Templat"},
}

labels["Templat navigasi"] = {
	description = "Templat bahasa {{{langname}}} yang digunakan untuk mencipta kotak navigasi supaya laman lain yang serupa dapat dipautkan dengan mudah.",
	additional = "Contohnya termasuk semua ahli bagi kelas tertentu (misalnya kata ganti nama diri, interogatif, demonstratif), nombor kardinal sehingga 100, templat isi kandungan kategori, dan sebagainya.",
	parents = {"Templat pautan"},
}

labels["Templat sebutan"] = {
	description = "Templat yang digunakan untuk menjana sebutan IPA, rima, pemenggalan kata, dan sebagainya bagi entri bahasa {{{langname}}}.",
	umbrella_parents = {"Subkategori templat mengikut bahasa", "Kategori:Templat sebutan"},
	parents = {"Templat"},
}

labels["Templat penghasilan isyarat"] = {
	description = "Templat yang digunakan untuk menghuraikan dan menunjukkan penghasilan isyarat bahasa {{{langname}}}.",
	parents = {"Templat sebutan"},
}

labels["Templat petikan"] = {
	description = "Templat yang digunakan untuk menjana petikan bagi entri bahasa {{{langname}}}.",
	umbrella_parents = {"Subkategori templat mengikut bahasa", "Kategori:Templat sitasi"},
	parents = {"Templat"},
}

labels["Templat navigasi petikan"] = {
	description = "Templat yang digunakan dalam pendokumenan [[Wikikamus:Petikan/Templat|templat petikan]] bahasa {{{langname}}} untuk memautkan templat petikan bagi karya lain oleh pengarang yang sama.",
	umbrella_parents = {"Subkategori templat mengikut bahasa", "Kategori:Templat navigasi", "Kategori:Templat petikan mengikut bahasa"},
	parents = {"Templat petikan", "Templat pautan"},
}

labels["Templat rujukan"] = {
	topright = function(data)
		if data.lang and data.lang:getCode() == "ine-pro" then
			return "{{shortcut|WT:RTINE}}"
		end
	end,
	umbrella = {
		preceding = "{{also|Wikikamus:Templat rujukan}}\n{{also|Template:refcat}}",
		parents = {"Subkategori templat mengikut bahasa", "Kategori:Templat rujukan"},
		breadcrumb = "mengikut bahasa",
	},
	description = "Templat yang digunakan untuk menjana nota kaki rujukan bagi entri bahasa {{{langname}}}.",
	parents = {"Templat pautan"},
}

labels["Templat navigasi rujukan"] = {
	description = "Templat yang digunakan dalam pendokumenan templat rujukan untuk memautkan templat rujukan yang berkaitan.",
	umbrella_parents = {"Subkategori templat mengikut bahasa", "Kategori:Templat navigasi", "Kategori:Templat rujukan mengikut bahasa"},
	parents = {"Templat rujukan", "Templat pautan"},
}

labels["Templat tambahan"] = {
	description = "Templat yang digunakan untuk menyimpan kandungan bagi templat bahasa {{{langname}}} yang lain.",
	parents = {"Templat"},
}

labels["Subtemplat jadual infleksi"] = {
	description = "Templat yang digunakan untuk membantu membina bahagian-bahagian templat jadual infleksi bahasa {{{langname}}}.",
	parents = {"Templat tambahan"},
}

labels["Templat penggunaan"] = {
	description = "Templat yang digunakan untuk menunjukkan nota penggunaan dalam entri bahasa {{{langname}}}.",
	parents = {"Templat"},
}


local function add_breadcrumb_from_parent(data, key, categories)
	if data.breadcrumb then
		return
	end
	local parent = data.parents and data.parents[1]
	while true do
		if type(parent) == "string" then
			local escaped_parent = require("Module:string utilities").pattern_escape(parent)
			-- Malay category labels are normally written as LABEL + qualifier, e.g. "Templat jadual infleksi kata nama".
			if key:find("^" .. escaped_parent .. " ") then
				data.breadcrumb = key:gsub("^" .. escaped_parent .. " ", "")
				break
			end
			-- Keep the English-style fallback in case a label is kept in the old order.
			local parent_re = " " .. require("Module:string utilities").pattern_escape(mw.getContentLanguage():lcfirst(parent)) .. "$"
			if key:find(parent_re) then
				data.breadcrumb = key:gsub(parent_re, "")
				break
			end
			if categories[parent] then
				parent = categories[parent].parents[1]
			else
				break
			end
		else
			break
		end
	end
end

for key, data in pairs(labels) do
	-- Add 'umbrella_parents' key if not already present.
	if not data.umbrella and not data.umbrella_parents then
		data.umbrella_parents = "Subkategori templat mengikut bahasa"
	end
	add_breadcrumb_from_parent(data, key, labels)
end


-----------------------------------------------------------------------------
--                                                                         --
--                              RAW CATEGORIES                             --
--                                                                         --
-----------------------------------------------------------------------------


raw_categories["Templat"] = {
	topright = "{{shortcut|WT:T}}",
	description = "Kategori pengurusan untuk semua templat yang sedang digunakan di Wikikamus.",
	additional = "''Lihat juga: [[Wikikamus:Templat]], [[meta:Help:Template]]''",
	parents = {"Wiktionary"},
}

raw_categories["Templat pentadbiran"] = {
	description = "Templat yang digunakan dalam pentadbiran Wikikamus.",
	additional = "Templat ini hanya digunakan di luar ruang nama utama dan berbeza daripada [[:Kategori:Templat penyelenggaraan|templat penyelenggaraan]], yang digunakan untuk menyelenggara entri.",
	parents = {"Templat"},
}

raw_categories["Templat arkib"] = {
	description = "Templat yang digunakan pada laman yang diarkibkan atau tidak aktif.",
	parents = {"Templat pentadbiran"},
}

raw_categories["Templat CheckUser"] = {
	description = "Templat berkaitan dengan [[Wikikamus:Permohonan untuk checkuser|permohonan checkuser]].",
	parents = {"Templat pentadbiran"},
}

raw_categories["Notis suntingan"] = {
	description = "Templat yang digunakan untuk memaparkan notis dalam mod suntingan.",
	parents = {"Templat pentadbiran"},
}

raw_categories["Templat lampiran"] = {
	description = "Templat yang digunakan dalam lampiran atau untuk memautkan kepada lampiran.",
	parents = {"Templat", "Kategori:Lampiran"},
}

raw_categories["Templat senarai Swadesh"] = {
	description = "Templat yang digunakan pada laman yang mengandungi [[w:Swadesh list|senarai Swadesh]].<br />" ..
	"Lihat juga [[Wikikamus:Templat Swadesh]] dan [[Wikikamus:Templat Swadesh berkategori]].",
	parents = {"Templat lampiran"},
}

raw_categories["Templat astrologi"] = {
	description = "Templat yang memaparkan rajah atau kotak berkaitan astrologi.",
	parents = {"Templat"},
}

raw_categories["Templat audio"] = {
	description = "Templat yang digunakan untuk memainkan atau memohon fail audio.",
	parents = {"Templat"},
}

raw_categories["Templat jadual automatik"] = {
	description = "Templat yang digunakan untuk menjana jadual kata (seperti [[Template:table:seasons]]).",
	additional = "Lihat juga [[:Kategori:Templat jadual automatik mengikut bahasa]].",
	parents = {"Templat"},
}

raw_categories["Templat kotak"] = {
	description = "Templat kotak untuk kegunaan umum.",
	additional = "Jika anda ingin mencipta templat yang kelihatan seperti kotak, semak kategori ini dahulu!",
	parents = {"Templat"},
}

raw_categories["Templat pengkategorian"] = {
	preceding = "{{also|:Kategori:Modul kategori}}",
	description = "Templat yang digunakan untuk mengkategorikan istilah atau entri.",
	additional = "([[:Kategori:Templat kategori]] pula mengandungi templat yang digunakan dalam ruang nama kategori.)",
	parents = {"Templat"},
}

raw_categories["Templat kategori"] = {
	description = "Templat yang digunakan dalam ruang nama kategori.",
	additional = "([[:Kategori:Templat pengkategorian]] pula mengandungi templat yang digunakan untuk mengkategorikan laman.)",
	parents = {"Templat"},
}

raw_categories["Templat boilerplate kategori"] = {
	description = "Templat yang digunakan untuk menjana teks bagi laman kategori.",
	parents = {"Templat kategori"},
}

raw_categories["Templat isi kandungan"] = {
	description = "Templat yang digunakan untuk menjana senarai huruf berpaut bagi menavigasi laman yang disenaraikan dalam kategori.",
	parents = {"Templat kategori", "Templat navigasi"},
}

raw_categories["Templat maklumat aksara"] = {
	description = "Templat yang menggunakan {{temp|character info}}.",
	parents = {"Templat"},
}

raw_categories["Templat sisipan aksara"] = {
	description = "Templat yang menyediakan cara lebih mudah untuk menaip aksara yang tidak terdapat pada kebanyakan susun atur papan kekunci.",
	parents = {"Templat"},
}

raw_categories["Templat penjana aksara kod wiki"] = {
	description = "Templat yang digunakan untuk menjana aksara yang dikhaskan untuk fungsi kod wiki tertentu dan tidak boleh dimasukkan secara langsung.",
	additional = "Sebagai alternatif kepada templat ini, entiti HTML seperti <code>&amp;#91</code> " ..
	"boleh digunakan untuk tanda kurung siku kiri.<br />" ..
	"Perhatian: templat di bawah disusun mengikut aksara pertama dalam kod wiki yang dijana oleh setiap templat.",
	parents = {"Templat sisipan aksara"},
}

raw_categories["Templat kimia"] = {
	description = "Templat yang memaparkan rajah atau kotak berkaitan kimia.",
	parents = {"Templat"},
}

raw_categories["Templat catur"] = {
	description = "Templat yang memaparkan rajah catur.",
	parents = {"Templat"},
}

raw_categories["Templat sitasi"] = {
	preceding = "{{ombox|type=speedy|text=Sesetengah templat mungkin ditandakan '''UNTUK PERCUBAAN SAHAJA'''. Jangan gunakan templat ini dalam entri jika diminta sedemikian pada laman templat itu sendiri. Sila semak laman templat sebelum menggunakannya.}}",
	description = "Templat yang digunakan untuk menjana sitasi dan petikan.",
	additional = [=[
{{citation templates}}

==Lihat juga==
* [[Wikikamus:Petikan]]
* [[:Kategori:Templat rujukan]] untuk templat khusus bagi sumber terkenal dan digunakan secara meluas.]=],
	parents = {"Templat"},
}

-- Dilangkau: Concordance templates

raw_categories["Templat aliran kawalan"] = {
	description = "Templat untuk membantu binaan aliran kawalan, yang biasanya terhad dalam bahasa templat.",
	parents = {"Templat"},
}

raw_categories["Templat rujuk silang"] = {
	description = "Templat yang digunakan untuk mencipta rujuk silang antara bahagian.",
	parents = {"Templat"},
}

raw_categories["Templat tarikh"] = {
	description = "Templat untuk memaparkan tarikh.",
	parents = {"Templat"},
}

raw_categories["Templat takrifan"] = {
	description = "Templat yang digunakan dalam [[Wikikamus:Glosari#baris takrifan|baris takrifan]] untuk membantu mencipta takrifan.",
	parents = {"Templat"},
}

raw_categories["Templat bentuk bagi"] = {
	description = "Templat yang digunakan untuk mentakrifkan infleksi atau kelainan bagi sesuatu lema.",
	parents = {"Templat takrifan"},
}

raw_categories["Templat bentuk tatabahasa"] = {
	description = "Templat yang digunakan untuk mentakrifkan istilah yang mempunyai hubungan tatabahasa tertentu dengan sesuatu lema.",
	parents = {"Templat bentuk bagi"},
}

raw_categories["Templat bentuk konjugasi"] = {
	description = "Templat yang digunakan untuk mentakrifkan istilah yang mewakili bentuk kata kerja tertentu (contohnya partisip lampau) bagi sesuatu lema.",
	parents = {"Templat bentuk tatabahasa"},
}

raw_categories["Templat bentuk deklensi"] = {
	description = "Templat yang digunakan untuk mentakrifkan istilah yang mewakili bentuk kata nama atau adjektif tertentu (contohnya jamak maskulin) bagi sesuatu lema.",
	parents = {"Templat bentuk tatabahasa"},
}

raw_categories["Templat nama"] = {
	description = "Templat yang digunakan dalam [[Wikikamus:Glosari#baris takrifan|baris takrifan]] untuk membantu mencipta takrifan bagi nama.",
	parents = {"Templat takrifan"},
}

raw_categories["Templat penggunaan objek"] = {
	description = "Templat yang digunakan dalam [[Wikikamus:Glosari#baris takrifan|baris takrifan]] untuk menunjukkan penggunaan kasus dan adposisi bagi objek kata kerja dan binaan yang serupa.",
	parents = {"Templat takrifan"},
}

raw_categories["Templat nama tempat"] = {
	description = "Templat yang digunakan untuk mentakrifkan nama tempat atau demonim yang merujuk kepada nama tempat.",
	parents = {"Templat takrifan"},
}

raw_categories["Templat entri"] = {
	description = "Templat yang digunakan untuk membantu mencipta entri baharu.",
	parents = {"Templat"},
}

raw_categories["Templat etimologi"] = {
	description = "Templat yang digunakan dalam bahagian etimologi untuk mentakrifkan etimologi sesuatu istilah.",
	parents = {"Templat"},
}

raw_categories["Templat terbitan asing"] = {
	description = "Templat yang digunakan dalam bahagian etimologi untuk menunjukkan terbitan daripada bahasa yang berbeza daripada bahasa entri semasa.",
	parents = {"Templat etimologi"},
}

raw_categories["Templat morfologi"] = {
	description = "Templat yang digunakan dalam bahagian etimologi untuk menentukan morfologi sesuatu istilah.",
	parents = {"Templat etimologi"},
}

raw_categories["Templat morfologi khusus bahasa"] = {
	description = "Templat morfologi khusus yang digunakan dalam bahagian etimologi istilah bagi bahasa tertentu.",
	parents = {"Templat morfologi"},
}

raw_categories["Templat baris pengepala kata"] = {
	preceding = "{{also|Wikikamus:Templat baris pengepala kata}}",
	description = "Templat yang digunakan untuk mentakrifkan [[Wikikamus:Glosari#baris pengepala kata|baris pengepala kata]] bagi sesuatu istilah.",
	parents = {"Templat"},
}

raw_categories["Templat perbincangan"] = {
	description = "Templat yang dimaksudkan hanya untuk perbincangan dan pendokumenan templat serta modul.",
	parents = {"Templat"},
}

raw_categories["Templat infrastruktur bilik perbincangan sublaman bulanan"] = {
	description = "Templat yang digunakan untuk menjana dan menyelenggara forum perbincangan bulanan seperti [[Wikikamus:Grease pit|Grease pit]] dan [[Wikikamus:Beer parlour|Beer parlour]].",
	parents = {"Templat perbincangan"},
}

raw_categories["Templat pendokumenan"] = {
	description = "Templat yang digunakan pada laman pendokumenan templat dan modul.",
	parents = {"Templat"},
}

raw_categories["Templat fail"] = {
	description = "Templat yang digunakan dalam ruang nama Fail.",
	parents = {"Templat"},
}

raw_categories["Templat amaran pengesahan bahasa"] = {
	description = "Templat yang memberi amaran kepada pengguna tentang status pengesahan entri atau makna daripada sesuatu bahasa.",
	parents = {"Templat"},
}

raw_categories["Templat susun atur"] = {
	description = "Templat yang digunakan untuk mencipta susun atur tertentu dalam entri.",
	parents = {"Templat"},
}

raw_categories["Templat kotak boleh lipat"] = {
	description = "Templat yang digunakan untuk mencipta kotak boleh lipat.",
	parents = {"Templat susun atur"},
}

raw_categories["Templat lajur"] = {
	preceding = "{{also|Wikikamus:Templat#Lajur}}",
	description = "Templat yang digunakan untuk menyusun senarai dalam lajur.",
	parents = {"Templat susun atur"},
}

raw_categories["Templat jadual"] = {
	description = "Templat yang digunakan untuk memformat jadual.",
	parents = {"Templat susun atur"},
}

raw_categories["Templat pautan"] = {
	description = "Templat yang digunakan untuk memautkan kepada istilah lain, projek MediaWiki lain, atau laman web luaran.",
	parents = {"Templat"},
}

raw_categories["Templat nyahkekaburan"] = {
	description = "Templat yang digunakan untuk menyahkekaburkan beberapa istilah yang serupa.",
	parents = {"Templat pautan"},
}

raw_categories["Templat pautan luar"] = {
	description = "Templat yang memautkan kepada laman web di luar lingkungan Yayasan Wikimedia.",
	additional = "Lihat juga [[:Kategori:Templat sitasi]] untuk templat lain.",
	parents = {"Templat pautan"},
}

raw_categories["Templat pautan dalaman"] = {
	description = "Templat yang memautkan antara entri Wikikamus.",
	parents = {"Templat pautan"},
}

raw_categories["Templat pautan dalaman khusus bahasa"] = {
	description = "Templat khusus bahasa yang memautkan antara entri Wikikamus dalam bahasa tertentu.",
	parents = {"Templat pautan dalaman"},
}

raw_categories["Templat pautan antara wiki"] = {
	description = "Templat yang memautkan kepada projek Wikimedia lain.",
	parents = {"Templat pautan"},
}

raw_categories["Templat pautan antara wiki sebaris"] = {
	description = "Templat sebaris yang memautkan kepada projek Wikimedia lain.",
	parents = {"Templat pautan antara wiki"},
}

raw_categories["Templat pautan antara wiki bar sisi"] = {
	description = "Templat bar sisi yang memautkan kepada projek Wikimedia lain.",
	parents = {"Templat pautan antara wiki"},
}

raw_categories["Templat pautan Wikidata"] = {
	description = "Templat sebaris yang memautkan kepada Wikidata.",
	parents = {"Templat pautan antara wiki"},
}

raw_categories["Templat pautan Wikisumber"] = {
	description = "Templat sebaris yang memautkan kepada Wikisumber.",
	parents = {"Templat pautan antara wiki"},
}

raw_categories["Templat senarai"] = {
	description = "Templat yang digunakan untuk menjana senarai.",
	additional = "Lihat juga [[:Kategori:Templat senarai mengikut bahasa]].",
	parents = {"Templat"},
}

raw_categories["Templat senarai aksara"] = {
	description = "Templat yang digunakan untuk menjana senarai aksara.",
	parents = {"Templat senarai"},
}

raw_categories["Templat bebas Lua"] = {
	description = "Versi bebas Lua (iaitu versi \"ringan\") bagi templat yang menggunakan Lua.",
	additional = "Templat bebas Lua digunakan pada laman panjang untuk mengelakkan [[Wikikamus:Ralat memori Lua|ralat memori Lua]].",
	parents = {"Templat"},
}

raw_categories["Templat penyelenggaraan"] = {
	preceding = "{{also|Wikikamus:Templat penyelenggaraan}}",
	description = "Templat yang digunakan dalam penyelenggaraan entri Wikikamus dan laman lain.",
	additional = "Templat ini berbeza daripada [[:Kategori:Templat pentadbiran|templat pentadbiran]], yang hanya digunakan di luar ruang nama utama.",
	parents = {"Templat", "Kategori:Penyelenggaraan Wikikamus"},
}

raw_categories["Templat pembersihan"] = {
	description = "Templat yang digunakan untuk memohon pembersihan entri.",
	additional = "Sebahagian templat ini digunakan apabila entri diimport secara kelompok daripada sumber lain.",
	parents = {"Templat penyelenggaraan", "Templat permohonan"},
}

raw_categories["Templat penghapusan"] = {
	description = "Templat yang digunakan untuk memohon penghapusan entri.",
	parents = {"Templat penyelenggaraan", "Templat permohonan"},
}

raw_categories["Templat pengesahan"] = {
	description = "Templat yang digunakan untuk memohon pengesahan entri yang mungkin tidak betul.",
	parents = {"Templat penyelenggaraan", "Templat permohonan"},
}

raw_categories["Templat Wikikamus"] = {
	description = "Templat yang digunakan dalam operasi dalaman Wikikamus.",
	parents = {"Templat", "Wiktionary"},
}

raw_categories["Metatemplat"] = {
	description = "Templat yang digunakan dalam templat lain atau untuk mencipta templat lain.",
	parents = {"Templat"},
}

raw_categories["Templat manipulasi rentetan"] = {
	description = "Templat yang digunakan untuk memanipulasi rentetan.",
	additional = "Lihat juga [[Module:string/templates]], yang boleh diseru daripada templat untuk melakukan manipulasi rentetan.",
	parents = {"Metatemplat"},
}

------------ TEMPLAT NAVIGASI ------------

raw_categories["Templat navigasi"] = {
	description = "Templat yang digunakan untuk mencipta kotak navigasi supaya laman lain yang serupa dapat dipautkan dengan mudah.",
	parents = {"Templat"},
}

raw_categories["Templat nombor khusus bahasa"] = {
	description = "Templat khusus bahasa yang menjana kotak atau senarai nombor bagi bahasa tertentu.",
	additional = "Bezakan dengan {{catlink|Templat nombor}}, yang mengandungi templat umum (tidak khusus bahasa) untuk menukar nombor atau menjana kotak atau senarai nombor dalam sesuatu bahasa.",
	parents = {"Templat navigasi"},
}

raw_categories["Templat kotak pro-bentuk"] = {
	description = "Templat khusus bahasa yang menjana kotak navigasi untuk memaparkan pro-bentuk (kata ganti nama, penentu, kata keterangan pronomina, dan sebagainya) bagi bahasa tertentu.",
	parents = {"Templat navigasi"},
}

raw_categories["Templat kotak demonstratif"] = {
	description = "Templat khusus bahasa yang menjana kotak kata ganti nama, penentu dan kata keterangan demonstratif bagi bahasa tertentu.",
	parents = {"Templat kotak pro-bentuk"},
}

raw_categories["Templat kotak artikel tatabahasa"] = {
	description = "Templat khusus bahasa yang menjana kotak artikel tatabahasa (tentu, tak tentu, partitif, dan sebagainya) bagi bahasa tertentu.",
	parents = {"Templat kotak pro-bentuk"},
}

raw_categories["Templat kotak interogatif"] = {
	description = "Templat khusus bahasa yang menjana kotak kata ganti nama, penentu dan kata keterangan interogatif bagi bahasa tertentu.",
	parents = {"Templat kotak pro-bentuk"},
}

raw_categories["Templat kotak kata ganti nama diri"] = {
	description = "Templat khusus bahasa yang menjana kotak kata ganti nama diri bagi bahasa tertentu.",
	additional = [=[
Format piawai bagi templat-templat ini ialah:

* Jika bahasa tidak berinfleksi (contohnya Samoa {{tl|sm-personal pronouns}}) atau bahasa berinfleksi tetapi kotak hanya menunjukkan bentuk lema kata ganti nama (contohnya Basque {{tl|eu-personal pronouns}}), '''bilangan''' (tunggal/jamak) diletakkan melintang di bahagian atas dan '''persona''' (pertama/kedua/ketiga) diletakkan menegak di sebelah kiri.
* Jika bahasa berinfleksi, '''kasus''' diletakkan melintang di bahagian atas. Di sebelah kiri, pengepala (dari kiri ke kanan) ialah '''bilangan''', '''persona''', kemudian subbentuk jika berkenaan. Contoh: Jerman Hulu Pertengahan {{tl|gmh-personal pronouns}}
** Pengecualian:
*** Jika terdapat terlalu banyak kasus untuk dimuatkan pada skrin sebagai lajur, templat boleh ditransposisikan supaya kasus disusun secara menegak. Contoh: Yukaghir Utara {{tl|ykg-personal pronouns}}
*** Jika bentuk tunggal dan jamak sangat serupa, pertimbangkan untuk meletakkan pengepala persona di luar bilangan. Contoh: Punjabi {{tl|pa-personal pronouns}}
]=],
	parents = {"Templat kotak pro-bentuk"},
}

raw_categories["Templat kotak kata ganti nama dan penentu milik"] = {
	description = "Templat khusus bahasa yang menjana kotak kata ganti nama dan penentu milik bagi bahasa tertentu.",
	parents = {"Templat kotak pro-bentuk"},
}

raw_categories["Templat kotak kata ganti nama dan penentu refleksif"] = {
	description = "Templat khusus bahasa yang menjana kotak kata ganti nama dan penentu refleksif bagi bahasa tertentu.",
	parents = {"Templat kotak pro-bentuk"},
}

raw_categories["Templat kotak kata ganti nama dan penentu relatif"] = {
	description = "Templat khusus bahasa yang menjana kotak kata ganti nama dan penentu relatif bagi bahasa tertentu.",
	parents = {"Templat kotak pro-bentuk"},
}

raw_categories["Templat nombor"] = {
	description = "Templat umum (tidak khusus bahasa) yang digunakan untuk menukar nombor atau menjana kotak atau senarai nombor dalam sesuatu bahasa.",
	additional = "Bezakan dengan {{catlink|Templat nombor khusus bahasa}}, yang mengandungi templat khusus bahasa untuk menjana kotak atau senarai nombor dalam sesuatu bahasa.",
	parents = {"Templat"},
}

raw_categories["Templat kelainan ortografi dan wilayah"] = {
	description = "Templat yang digunakan untuk menjana senarai pautan kepada bentuk alternatif sesuatu istilah, sama ada merentas sistem ortografi, skrip, atau variasi wilayah atau dialek.",
	parents = {"Templat skrip", "Templat pautan dalaman"},
}

raw_categories["Templat nama laman"] = {
	description = "Templat yang digunakan untuk mendapatkan nama laman atau sifat nama laman, atau untuk memanipulasi nama laman.",
	parents = {"Templat"},
}

raw_categories["Templat pramuat"] = {
	description = "Templat yang tidak dimaksudkan untuk ditransklusikan, tetapi kandungannya dipramuatkan ke dalam ruang suntingan melalui parameter URL atau modul.",
	parents = {"Templat"},
}

raw_categories["Templat sebutan"] = {
	description = "Templat yang digunakan untuk memformat bahagian sebutan dan aksara yang digunakannya.",
	additional = "Lihat juga [[:Kategori:Templat skrip]] dan [[Wikikamus:Sebutan]].",
	parents = {"Templat"},
}

raw_categories["Templat rima"] = {
	description = "Templat yang digunakan untuk memformat laman [[Wikikamus:Rima|rima]], pautan kepadanya daripada bahagian sebutan, dan sebagainya.",
	parents = {"Templat sebutan"},
}

raw_categories["Templat bahasa isyarat"] = {
	description = "Templat yang digunakan untuk memformat carta sebutan bahasa isyarat.",
	parents = {"Templat sebutan"},
}

raw_categories["Templat penentu dan glos"] = {
	description = "Templat untuk memaparkan penentu, glos dan seumpamanya.",
	parents = {"Templat"},
}

raw_categories["Templat lencongan"] = {
	description = "Templat yang digunakan untuk memformat laman lencongan.",
	parents = {"Templat"},
}

raw_categories["Templat rujukan"] = {
	preceding = "{{also|Wikikamus:Templat rujukan|:Kategori:Templat rujukan mengikut bahasa}}",
	description = "Templat yang digunakan untuk memformat rujukan.",
	parents = {"Templat"},
}

raw_categories["Templat agama"] = {
	description = "Templat yang memaparkan rajah atau kotak berkaitan agama.",
	parents = {"Templat"},
}

raw_categories["Templat permohonan"] = {
	topright = "{{shortcut|WT:RT}}",
	description = "Templat permohonan untuk entri kamus dalam ruang nama utama.",
	parents = {"Templat", "Permohonan"},
}

raw_categories["Templat kotak pasir"] = {
	description = "Versi kotak pasir bagi templat yang digunakan untuk tujuan percubaan.",
	additional = "'''PERHATIAN:''' Penggunaan templat kotak pasir dalam ruang nama utama amat tidak digalakkan. Sila letakkan semua templat kotak pasir dalam ruang pengguna anda.",
	parents = {"Templat"},
}

raw_categories["Templat skrip"] = {
	preceding = "{{mainwikt|Skrip}}",
	description = "Templat yang digunakan untuk menukar antara skrip atau memaparkan teks dalam skrip tertentu.",
	parents = {"Templat"},
}

raw_categories["Templat hubungan semantik"] = {
	description = "Templat yang diletakkan di bawah [[Wikikamus:Glosari#baris takrifan|baris takrifan]] untuk menunjukkan istilah lain yang berkaitan secara semantik dengan makna tertentu.",
	parents = {"Templat"},
}

raw_categories["Templat penggunaan satu laman"] = {
	description = "Templat yang digunakan hanya pada satu laman dan tidak mungkin digunakan semula di tempat lain.",
	parents = {"Templat"},
}

raw_categories["Templat tambahan"] = {
	description = "Himpunan umum templat yang digunakan untuk membantu templat lain.",
	additional = "Templat-templat ini patut dikategorikan semula mengikut fungsi.",
	parents = {"Templat"},
}

raw_categories["Templat taksonomi"] = {
	description = "Templat yang digunakan dalam entri taksonomi Translingual dan dalam rujukan kepada entri tersebut.",
	parents = {"Templat"},
}

raw_categories["Templat hipernim taksonomi"] = {
	description = "Templat dan subkategori yang mengandungi templat sedemikian. Templat ini mengandungi teks untuk dipaparkan di bawah pengepala Hipernim bagi entri nama taksonomi.",
	additional = "Setiap templat mempunyai nama takson tempat ia bermula. Templat dalam kategori ini pada masa ini ialah banyak templat yang bermula dengan nama keluarga taksonomi. Templat lain berada dalam subkategori.",
	breadcrumb = "Hipernim",
	parents = {"Templat taksonomi"},
}

raw_categories["Templat nama taksonomi"] = {
	description = "Templat yang digunakan untuk mempersembahkan nama taksonomi pada baris takrifan.",
	breadcrumb = "Nama",
	parents = {"Templat taksonomi", "Templat takrifan"},
}

raw_categories["Templat rujukan taksonomi"] = {
	description = "Templat yang digunakan untuk memformat rujukan bagi nama taksonomi.",
	breadcrumb = "Rujukan",
	parents = {"Templat taksonomi", "Templat rujukan"},
}

raw_categories["Templat yang mesti digantikan"] = {
	description = "Templat yang tidak dimaksudkan untuk transklusi dengan <code><nowiki>{{ }}</nowiki></code>, " ..
	"dan mesti digantikan dengan <code><nowiki>{{subst: }}</nowiki></code> di mana-mana sahaja templat itu wujud.",
	additional = "Sebahagian ahli kategori ini adalah kekal, kerana templat ditulis sedemikian rupa sehingga " ..
	"ia mesti digantikan untuk berfungsi dengan betul. Mungkin juga terdapat templat dalam kategori ini yang telah lapuk, " ..
	"dan dalam keadaan itu kandungannya telah digantikan dengan kod yang diutamakan.",
	parents = {"Templat", "Permohonan"},
}

raw_categories["Templat dengan pemecutan"] = {
	description = "Templat boleh ditambahkan pada kategori ini dengan menambahkan {{tl|isAccelerated}} pada laman pendokumenannya.",
	additional = "Kehadiran dalam kategori ini menunjukkan bahawa sekurang-kurangnya sebahagian entri \"bentuk bagi\" untuk kata tersebut boleh dijana secara separa automatik oleh pengguna yang mengaktifkan penyuntingan [[Wikikamus:ACCEL|dipercepat]].",
	parents = {"Templat"},
}

raw_categories["Templat format teks"] = {
	description = "Templat yang menyediakan pintasan untuk memformat teks biasa.",
	parents = {"Templat"},
}

raw_categories["Templat tesaurus"] = {
	description = "Templat untuk memautkan kepada atau memformat entri tesaurus.",
	parents = {"Templat"},
}

raw_categories["Templat terjemahan"] = {
	description = "Templat yang digunakan untuk memformat entri dalam dan bahagian jadual terjemahan.",
	parents = {"Templat"},
}

raw_categories["Templat pengguna"] = {
	description = "Templat yang dimaksudkan untuk digunakan dalam ruang pengguna.",
	parents = {"Templat"},
}

raw_categories["Templat kotak pasir pengguna"] = {
	description = "Templat untuk kegunaan peribadi dan percubaan oleh penyunting individu.",
	additional = "Semua templat ini patut bermula dengan <code>User:</code> diikuti nama pengguna. Jika beberapa " ..
	"templat kotak pasir diperlukan oleh seorang pengguna, sublaman boleh dicipta. Templat ini tidak patut digunakan dalam laman " ..
	"kandungan sebenar Wikikamus, kerana semua kandungan pada laman tersebut patut boleh disunting oleh sesiapa sahaja dan, jika perlu, dilindungi daripada suntingan.",
	parents = {"Templat kotak pasir", "Templat"},
}

raw_categories["Subtemplat kawalan kewibawaan"] = {
	description = "Subtemplat yang digunakan bersama-sama dengan {{tl|authority control}}.",
	parents = {"Templat pengguna"},
}

raw_categories["Templat kecekapan pengguna"] = {
	description = "Templat yang digunakan untuk menunjukkan kecekapan pengguna dalam bahasa semula jadi, skrip atau bahasa pengaturcaraan tertentu.",
	additional = "Templat ini digunakan bersama-sama dengan {{tl|Babel}}, yang menyeru templat-templat ini apabila diperlukan.",
	parents = {"Templat pengguna"},
}

raw_categories["Templat pengguna pengaturcara"] = {
	description = "Templat yang digunakan untuk menunjukkan kecekapan pengguna dalam bahasa pengaturcaraan tertentu.",
	additional = "Templat ini digunakan bersama-sama dengan {{tl|Babel}}, yang menyeru templat-templat ini apabila diperlukan.",
	parents = {"Templat kecekapan pengguna"},
}

raw_categories["Templat pengguna bahasa"] = {
	description = "Templat yang digunakan untuk menunjukkan kecekapan pengguna dalam bertutur dalam bahasa tertentu.",
	additional = "Templat ini digunakan bersama-sama dengan {{tl|Babel}}, yang menyeru templat-templat ini apabila diperlukan.",
	parents = {"Templat kecekapan pengguna"},
}

raw_categories["Templat pengguna skrip"] = {
	description = "Templat yang digunakan untuk menunjukkan kecekapan pengguna dalam membaca skrip tertentu.",
	additional = "Templat ini digunakan bersama-sama dengan {{tl|Babel}}, yang menyeru templat-templat ini apabila diperlukan.",
	parents = {"Templat kecekapan pengguna"},
}

raw_categories["Templat perkataan hari ini"] = {
	description = "Templat yang digunakan untuk menyokong Perkataan Hari Ini.",
	parents = {"Templat Wikikamus"},
}

raw_categories["Templat perkataan asing hari ini"] = {
	description = "Templat yang digunakan untuk menyokong Perkataan Asing Hari Ini.",
	parents = {"Templat perkataan hari ini"},
}

raw_categories["Templat dan modul bukan produksi"] = {
	description = "Templat dan modul yang kini tidak digunakan dalam produksi.",
	additional = "{{also|Special:UnusedTemplates|Kategori:Templat tidak digunakan}}",
	parents = {"Templat", "Modul", "Kategori:Penyelenggaraan Wikikamus"},
}

raw_categories["Subkategori templat mengikut bahasa"] = {
	description = "Kategori payung yang meliputi topik berkaitan templat.",
	additional = "{{{umbrella_meta_msg}}}",
	parents = {
		"Metakategori payung",
		{name = "Templat", is_label = true, sort = " "},
	},
}

-- Add breadcrumb by chopping off the parent (or the parent's parent, etc.) from the label, if possible.
for key, data in pairs(raw_categories) do
	add_breadcrumb_from_parent(data, key, raw_categories)
end

-----------------------------------------------------------------------------
--                                                                         --
--                               RAW HANDLERS                              --
--                                                                         --
-----------------------------------------------------------------------------

insert(raw_handlers, function(data)
	-- Allow 'Templat rujukan Foo' for etym-only varieties.
	local langname = data.category:match("^Templat rujukan bahasa (.+)$")
	if not langname then
		return nil
	end
	local lang = require(languages_module).getByCanonicalName(langname, nil, true)
	if lang and lang:hasType("etymology-only") then
		local first_parent
		local lang_parent = lang:getParent()
		if lang_parent:hasType("etymology-only") then
			-- In case there are nested etymology templates, return the parent's reference template cat, not the
			-- full lang's reference template cat.
			first_parent = "Templat rujukan bahasa " .. lang_parent:getCanonicalName()
		else
			first_parent = {name = "Templat rujukan", lang = lang_parent:getCode(), is_label = true}
		end
		return {
			lang = lang:getCode(),
			description = "Templat yang digunakan untuk menjana nota kaki rujukan bagi entri bahasa {{{langname}}}.",
			parents = {
				first_parent,
				lang:getCategoryName(),
			},
			breadcrumb_and_first_sort_key = langname,
		}
	end
end)


return {LABELS = labels, RAW_CATEGORIES = raw_categories, RAW_HANDLERS = raw_handlers}