Template:Redirect category shell/doc

This template is similar to WikiProject banner shell in that it may be used to add one or more appropriate redirect category (rcat) templates, along with their parameters, to redirects. Additionally, this template automatically senses, describes, categorizes and changes protection levels when appropriate. A third important function is to help editors learn more about redirect categorization by use of the. For more information see the page below and the main rcat index.

Purpose
As with the This is a redirect template, this template is based on a proposal to standardize redirect templates (rcats). Its basic purpose is to simplify the process of tagging and categorizing redirects.

Like the This is a redirect template, this shell template is also able to help newer contributors learn the redirect category system. Details of this part of the purpose of this shell template may be found in the When used alone section below.

Protection levels are automatically detected by this template by use of pp-protected and pp-move. When edit protection or move protection (or both) is applied to a redirect that has been tagged with this template, the protection level is automatically detected, and the redirect will be tagged with a protection rcat and sorted to the appropriate protection-related category(ies). When protection is altered or removed, then the protection-related rcats and category(ies) will also be (automatically) changed or removed from the redirect.

This template can categorize and display the text (with parameters) of any number of rcats that are needed (usually from one to seven).

Where the printworthiness of a mainspace redirect is concerned, there are three kinds of rcats: At present, those that are types 1 and 2 will populate the appropriate printworthiness category, however the notice will not appear within the mbox of this template unless either R printworthy or R unprintworthy is listed as an rcat within this template. For example, if a redirect is tagged with:
 * 1) those that populate the  category by default,
 * 2) those that populate the  category by default, and
 * 3) those that do not default to either of the above, and which leave it to the editor to decide based upon best knowledge whether or not a mainspace redirect is suitable for a printed or DVD version of Wikipedia.

...then the hidden categories populated will be, and any appropriate protection categories. These will appear at the bottom of the redirect page only to registered users who are logged in and who have set their preferences to see hidden categories. The mbox that will appear to all readers would look like:

To show the printability or printworthiness information in the mbox, then the redirect must be tagged with either the printworthy or unprintworthy rcat as in the following example:

...which produces:

Only then will the printability, printworthy or unprintworthy, be described within this template's mbox on the redirect page.

Usage
Used by itself with no parameters, for example, (and its alias ), the template will appear as it does at the top of this page, and the redirect will populate. That category will also be populated if the first parameter is left empty while rcats occupy the second parameter. This is useful when an editor adds rcats and yet feels unsure that there may be at least one other rcat with category that may be used to tag the redirect. Monitors of the Miscellaneous redirects category will then help decide if another rcat(s) is needed. Then the empty first parameter may be excluded by removing either the first or second pipe. That will remove the redirect from Category:Miscellaneous redirects. See below for more information.

This template may hold any number of different redirect category (rcat) templates, usually from one to seven. The choices for editors are listed at Template index/Redirect pages both alphabetically and by function. Any of those rcats may be used either with their full template name, e.g., R from alternative language, or with an alias (shortcut redirect), which may be found in each rcat's documentation.

An unnamed parameter, 1, has been introduced in this template and works as follows:


 * or the may be omitted:

As with all templates that have unnamed (numbered) parameters, the numbers and equal signs may be omitted.

"N" represents the highest number of rcats that can be used in this template, and at this point the only limit would be any wiki markup ceiling that may exist. Usually, from one to seven rcats suffice; however, more rcats can be used if required.

The actual sequence of rcats is left to editors – there is no priority as to which rcat should be "first" and which rcats should "follow" in any particular order.

A second unnamed parameter, 2, has also been introduced. This gives this template the same "help" functionality that is used in the This is a redirect template. If the first parameter is left "empty", then will be populated:


 * or if a second pipe is placed directly after the first pipe, then that will accomplish the same manifold sort:

Note the double pipe after the word "shell" above, which indicates an empty first parameter. Editors who monitor the Miscellaneous redirects category will come to the redirect and check, add or remove rcats as needed.

Also, when used by itself this template will appear as it does at the top of this page and populate the Miscellaneous redirects category:

This template may be added to a redirect page in the following manner:
 * 1) REDIRECT (target page name)


 * It can be noted here that the rcats can also go on the same line as the Redirect category shell template:


 * 1) REDIRECT (target page name)


 * Again, note the double pipe after "shell" above, which indicates an empty first parameter. Leave the first parameter empty to sort a redirect to  in addition to the categories of the rcats that are used.  In this case the  and  categories will also be populated.  Monitors of the "Miscellaneous redirects" category will help editors when needed.

Generally for good readability on the edit screen, this template is placed beginning on the third line of that screen as follows: Line 1: #REDIRECT (target page name) Line 2: Line 3:
 * See also: section titled Mbox note below.

Parameters
In addition to the unnamed 1 and 2 parameters, there is a "hatnote" parameter, h, which provides an italicized TOP note when needed. For example:

...uses the rcat R from airport code and produces:


 * An error box appears that illustrates what happens if an editor uses an rcat in the wrong namespace. Correct namespaces are found on individual rcat documentation pages.  In addition to the error box, the redirect will not be sorted to the rcat's category; instead it will populate ! If an error box appears when an edit is previewed, then appropriate changes can be made before the redirect page is actually saved.


 * Also, note the pipe symbol (|) that follows the text in the h parameter. If this pipe is omitted, very unusual results will be seen when your edit is previewed or saved. Be sure to include that pipe at the very end of the text if the h parameter is used to form a hatnote.

Rcat parameters
In addition to this template's ability to act as a shell template for rcats, it accepts all of the parameters that rcats accept. Rcat parameters, when needed, will work in this template as follows:

This subdues the category to which R from plural defaults and populates the  category instead. The position an rcat holds will have no effect on the parameters of other rcats that are used to tag a redirect:



In the above example, R from plural is the sixth rcat, and its first parameter is used to change from "unprintworthy" to "printworthy". R from alternative language) holds the 4th position, and its first parameter is used to house the ISO 639 language code of the source language, in this case   for English. Its second parameter houses the language code for the targeted page, in this case   for the Spanish language.  It does not matter if the relative position of these rcats changes for any reason, their individual parameters will continue to be effective.

If more rcat parameters are used, then they work the same way. For example, if a redirect exists that is a misspelling of a title, it can be tagged with R from misspelling in the following manner:

In this case, the rcat's 1 parameter is the correct spelling (used only if the target of the redirect is not the correct spelling). The rcat's 2 parameter can be used to change from the default "unprintworthy" categorization. Some misspellings may be helpful in a printed version of Wikipedia, so the second parameter in R from misspelling above is used to subdue its default "unprintworthy" category sort, and the redirect will populate instead. In this shell template, the order of the rcats will not affect the rcats' parameters. If an editor checks the page history and finds that the above redirect is also the result of a page move and inserts R from move at the top of the order:

...the parameters of the R from misspelling rcat template will not be affected, as they may be when used in the This is a redirect template.

An example of a "printworthy misspelling" can be found at template R from misspelling.

Another example:

The above code will sort the redirect into three categories:
 * (ja),
 * (es) and

''See the lists of ISO 639-1 and ISO 639-2 codes for two- and three-letter language codes that can be used this way. See also Template messages/Redirect language codes for common codes that are already used on redirects.''

When used alone
This template is designed to help contributors who are unfamiliar with categorizing redirects by enabling them to sort redirects into the monitored category. Do not hesitate to use this important function to help with sorting redirects to correct and appropriate categories.

There are two ways to sort a redirect into the Miscellaneous redirects category. When this template is used without any rcats, it will perform the miscellaneous sort:

...

Also, if one or more rcats are known, but an editor is unsure that there might be one or more other rcats that are needed, then leave the first parameter blank (type two pipes together → ):

Monitors of the Miscellaneous redirects category will check the redirect, add other rcats if needed and then remove the empty first parameter.

Comparison
Template:Redirect category shell/Comparison shows the difference in the appearance of text between when individual rcats are used and when this template is used.

Other templates
This template may also carry and hold other templates within it. Even the DEFAULTSORT magic word and a sort key may be used either inside this template or below it. Another template commonly used within the Redirect category shell template is Italic title and its shortcut to format titles in italics. Some rcats such as R from book and R from film automatically format the redirect names in italics. Any appropriate template may be used within this shell template in the following manner:

TemplateData
{	"params": { "1": {			"label": "Redirect categories", "description": "1 or more redirect category templates.", "example": "", "type": "content", "suggested": true },		"2": {			"label": "Redirect categories (more needed)", "description": "Same as Redirect categories, except that the redirect is also added to Category:Miscellaneous redirects.", "type": "content" },		"h": { "label": "Hatnote", "description": "A hatnote to display above the redirect categories.", "type": "line" },		"nocat": { "label": "No category", "description": "Don't add this redirect to Category:Miscellaneous redirects, even if Redirect categories has been left empty.", "type": "boolean" },		"category": { "label": "Category", "description": "The category to add this redirect to if the Redirect categories parameter is empty. Defaults to Category:Miscellaneous redirects.", "example": "", "type": "line" }	},	"description": "This template may be used to add one or more appropriate redirect category (rcat) templates, along with their parameters, to redirects. Additionally, this template automatically senses, describes, categorizes and changes protection levels when appropriate.", "paramOrder": [ "1",		"2",		"h", "nocat", "category" ] }