NearReality:Template policy
Templates are very often used on the Old School Near-Reality Wiki, and they can be anything from static wikicode, shown on a page whenever it's placed on it, to extremely complex calculations and dynamic tables.
When you create a template, you may have it use parameters to insert some text defined by the editor who uses your template, or have it use magic words so it acts differently according to the page it's used on. If a template uses parameters or magic words beyond just displaying text, it should have documentation.
Basic templates don't need documentationEdit
If, when an editor invokes a template, what's shown never changes under any circumstances, the template's page may simply show this content without any usage information. An editor then knows that they can use the template by entering its name, enclosed in {{
and }}
.
DocumentationEdit
To create a template's documentation page, go to the template's page, for example Template:Sandbox, and add /doc
at the end of the URL. You will then be ready to edit the documentation page.
Marking the documentation pageEdit
The first thing in a template documentation page should be a transclusion of the {{Documentation}}
template, which has the effect of marking the documentation page as such on the page of the template to be documented.
See Documentation's documentation here.
High-level summaryEdit
The next thing should be a high-level summary of the template's results. For example, "Template:Example displays a table of all available Dungeoneering items made with a certain material."
Parameter descriptionsEdit
Templates that use parameters need to have a summary of how to specify and use each of the parameters. A template's parameters may be numbered or named, or both. Additionally, the value may need to be in a certain format for the template to use it; this format also needs to be mentioned. Template:Coins, for example, expects its parameter to have no commas.
Numbered parametersEdit
Template:FloorNumber is an example of a template that uses a numbered parameter. Since it has only one numbered parameter, it does not need to specify which parameter comes first, but its documentation needs to state that the parameter has no name= prefix. Otherwise, an editor could try {{FloorNumber|floor=1}}
and fail to produce the correct result.
See FloorNumber's documentation here.
Named parametersEdit
Most infobox templates on the wiki are examples of templates that use named parameters. Each parameter produces a cell in the infobox's table, and their order doesn't matter, only their presence in the parameter list. The function of each named parameter should be in its own section in the documentation page. The name of the section should match the name of the parameter; for example, documenting {{Foo|bar=baz{{
would be at Template:Foo/doc, starting with == bar ==
.
See Infobox Item's documentation here.
Templates with lots of named parametersEdit
If a template has a lot of named parameters, like Template:Infobox Item, it may be helpful to provide an invocation of the template with all of its parameters already present but not filled in, inside a <pre>
tag. This way, an editor who knows what the template's name is but not all of its parameters can visit its page and copy-paste an invocation on a page.
Usage examplesEdit
Templates with parameters should have, following the description of each parameter, a few examples to demonstrate the combinations available and the results they produce.
For example, Template:Block can accept a numbered parameter, but its presence is not required; Template:Closure, to request the closure of a discussion, can accept one or two parameters, and the meaning of its first parameter is special when it is in a list of recognised words.
See Block's documentation and Closure's documentation.
ExceptionsEdit
Some templates are unique in that they do not need their own documentation subpage or should have a different formatting than the usual documentation, due to unique circumstances surrounding these templates. In these cases, the following exceptions will apply.
UserboxesEdit
Userboxes should link to the userbox template documentation. This is due to the fact that all documentation for userboxes would essentially be the same. Linking to their parent template's documentation allows a uniform format for them. In these cases, the following code should be used.
<noinclude>{{Userbox/doc}}</noinclude>
Edit
Navboxes do not need their own documentation. Navboxes do not change, and only display a navigational template. As a result, they should not have their own documentation. Instead, Navboxes should use the standard Navbox documentation {{Navbox/doc}}
.
SignaturesEdit
Signatures are similar to userboxes, in that they should have a uniform documentation. However, signatures tend to change on a semi-regular basis, and only display a line of text. As a result, signatures should not have their own documentation.
DocumentationEdit
Documentation subpages are technically templates themselves. However, they should not have their own documentation. Doing so would result in an infinite number of subpages.
Linking the documentation and the templateEdit
After you are done creating a template documentation page (i.e. a /doc subpage), go back to the template itself and add this to its wikicode:
<noinclude>{{/doc}}</noinclude>
This will show the "Template documentation" section under the template.
See alsoEdit
- NearReality:Templates, a non-exhaustive list of templates available
- NearReality:Personal Templates