Template:Poscatboiler
This template should be used on pages in the Category: namespace, and automatically generates descriptions and categorization for categories of a recognized type (see below). It is implemented by Module:category tree and its submodule Module:category tree/poscatboiler. It is preferable not to invoke this template directly, but to simply use {{auto cat}}
(with no parameters), which will automatically invoke this template on appropriately-named category pages.
- The following documentation is located at Template:Poscatboiler/documentation. [edit]
- Useful links: subpage list • transclusions • redirects • sandbox
This template automatically generates descriptions and categorization for categories whose name follows the format "(language name) (label)" and "(label) by language".
Parameters
|1=
- The language code (see Project:Languages) of the language that the category name begins with, and which the category's contents belongs to. Leave this empty for "by language" type categories.
|2=
- The label of the category. This is the part of the category name that follows the language name. It cannot be empty.
|sc=
- The script code (see Project:Scripts), if this is a script-specific subcategory. This is used for languages whose entries are categorised separately by script.
Examples
- On Category:English lemmas:
{{poscatboiler|en|lemmas}}
- On Category:English adverbs:
{{poscatboiler|en|adverbs}}
- On Category:Adverbs by language:
{{poscatboiler||adverbs}}
- On Category:German terms by etymology:
{{poscatboiler|de|terms by etymology}}
Adding, removing or modifying categories
The information on each label for this template is contained in Module:category tree/poscatboiler/data and its submodules. For a list of all data modules, see Category:Category tree data modules/poscatboiler.
The following values are recognised in these data modules:
parents
- A table listing one or more parent labels of this label.
- An item in the table can be either a single string, or a table containing two elements called
name
andsort
. In the latter case,name
value specifies the parent label name, while thesort
value specifies the sort key to use to sort it in that category. - If a parent label begins with
Category:
it is interpreted as a raw category name, rather than as a label name. It can still have its own sort key as usual.
- An item in the table can be either a single string, or a table containing two elements called
fundamental
- The "fundamental" category name, which is the parent category that all umbrella categories are collected in.
sortparentumbrella
- The sort key used to sort the umbrella category within the fundamental category. This generally defaults to the display name, but can be overridden with something like
**
for root categories to make them easier to find. description
- A plain English description for the label.
|can_be_empty = true
- Specifies that the category should not be deleted when empty. This should be used for maintenance categories.
Special template-like parameters can be used inside the parents
and description
values. These are replaced by the equivalent text.
{{{langname}}}
- The name of the language that the category belongs to.
{{{langcat}}}
- The name of the language's main category, which adds "language" to the regular name.
It is also possible to have handlers that can handle arbitrarily-formed labels, e.g. "###-syllable words" for any ### or "terms in XXX script" for any XXX. See Module:category tree/poscatboiler/data/words by number of syllables or Module:category tree/poscatboiler/data/terms by script for examples. Note that if a handler is specified, the module should return a table holding both the label and handler data; see the above modules.