Sjabloon:Yesno/doc
40px | This is a documentation subpage for Sjabloon:Yesno. It contains usage information, categories, interlanguage links and other content that is not part of the original sjabloon page. |
This template is used on 6,000,000+ pages. To avoid large-scale disruption and unnecessary server load, any changes to this template should first be tested in its /sandbox or /testcases subpages, or in your own user space. The tested changes can then be added to this page in one single edit. Please consider discussing any changes on the talk page before implementing them. |
This template normalises an input to be a yes/no output.
Usage
The template discerns five possible logical outputs depending on the first parameter (input if you will).
In its simplest usage these will all be either "yes" or "" (blank — nothing no characters).
- {{yesno|yes}} result "yes" (also applies to "Yes", "YeS", etc, "Y", "y" and "1")
- {{yesno|no}} result "" (also applies to "No", "NO", "nO", "N", "n" and "0")
- {{yesno}} result ""
- {{yesno|¬}} result ""
- {{yesno|purplemonkeydishwasher}} result "yes" (also applies to any other value not given above).
Each of these can be over-ridden.
- {{yesno|yes|yes=bacon}} result "bacon" (also applies to "Yes", "YeS", etc, "Y", "y" and "1")
- {{yesno|no|no=ham}} result "ham": (also applies to "No", "NO", "nO", "N", "n" and "0")
- {{yesno||blank=eggs}} result "eggs"
- but {{yesno||no=ham}} result "ham"
- and {{yesno||blank=eggs|no=ham}} result "eggs"
- {{yesno|¬|¬=sausage}} result "sausage"
- {{yesno|purplemonkeydishwasher|def=cup-of-tea}} result "cup-of-tea" (also applies to any other value not given above).
- but {{yesno|purplemonkeydishwasher|yes=bacon}} result "bacon"
- but {{yesno|purplemonkeydishwasher|def=cup-of-tea|yes=bacon}} result "cup-of-tea"
This may be used (apparently perversely) thus:
- {{yesno|yes|yes=no|no=yes}} result "no"
- {{yesno|no|yes=no|no=yes}} result "yes"
This creates a logical inversion.
Full parameter list
Unnamed parameter 1= the input value to be evaluated. The other parameters (all named, all optional), are the return values for their respective logical outcome. When set, each one overrules their default return value.
{{yesno | | yes = | no = | blank= | ¬ = | def = }}
Overview of {{yesno}} logical values and their associated texts
| ||||||
---|---|---|---|---|---|---|
Input parameter 1 ( )
|
In code | Logical return value | Default return text |
Return text when set:
|
Note | |
yes, y, 1* |
|
|
"yes" | "Pos" | * Case-insensitive (Y=y) | |
Some Text |
|
|
"yes" | "Def" | "Pos" when
| |
no, n, 0* |
|
|
"" | "Neg" | * Case-insensitive (N=n) | |
<blank> |
|
|
"" | "Blank" | "Neg" when
| |
1=<blank> |
|
|
"" | "Blank" | "Neg" when
| |
¬ |
|
|
"" | "Undefined" | ||
<omitted> |
|
|
"" | "Undefined" |
<templatedata>
{
"description": "This template normalises an input to be a yes/no output.", "params": { "": { "label": "Value", "description": "The value to be evaluated", "type": "string", "required": true }, "yes": { "label": "Output on yes", "description": "Defines a value to output on yes", "type": "string", "required": false
},
"no": { "label": "Output on no", "description": "Defines a value to output on no", "type": "string", "required": false
},
"blank": { "label": "Output on blank input", "description": "Defines a value to output if blank input", "type": "string", "required": false
},
"¬": { "label": "Output on ¬", "description": "Defines a value to output when input = ¬", "type": "string", "required": false
},
"def": { "label": "Definite output", "description": "Defines the output when value = yes", "type": "string", "required": false } }
} </templatedata>