Module:Check for unknown parameters/doc: Difference between revisions
From the Croc Wiki, the Croc encyclopedia
Jump to navigationJump to search
Content added Content deleted
(Listed for merging with Module:Check for deprecated parameters; see Wikipedia:Templates for discussion/Log/2019 December 30#Module:Check for deprecated parameters. (TW)) |
(←Blanked the page) |
||
Line 1: | Line 1: | ||
{{Tfm/dated|page=Check for unknown parameters/doc|otherpage=Check for deprecated parameters|link=Wikipedia:Templates for discussion/Log/2019 December 30#Module:Check for unknown parameters|type=module|help=off|bigbox=yes}}{{High-risk|8200000+}} |
|||
{{module rating|p}} |
|||
<!-- Categories go at the bottom of this page and interwikis go in Wikidata. --> |
|||
This module may be appended to a template to check for uses of unknown parameters. |
|||
== Usage == |
|||
=== Basic usage === |
|||
<pre> |
|||
{{#invoke:check for unknown parameters|check |
|||
|unknown=[[Category:Some tracking category]] |
|||
|arg1|arg2|arg3|argN}} |
|||
</pre> |
|||
or to sort the entries in the tracking category by parameter with a preview error message |
|||
<pre> |
|||
{{#invoke:check for unknown parameters|check |
|||
|unknown=[[Category:Some tracking category|_VALUE_]] |
|||
|preview=unknown parameter "_VALUE_" |
|||
|arg1|arg2|...|argN}} |
|||
</pre> |
|||
or for an explicit red error message |
|||
<pre> |
|||
{{#invoke:check for unknown parameters|check |
|||
|unknown=<span class="error">Sorry, I don't recognize _VALUE_</span> |
|||
|arg1|arg2|...|argN}} |
|||
</pre> |
|||
Here, <code>arg1</code>, <code>arg2</code>, ..., <code>argN</code>, are the known parameters. Unnamed (positional) parameters can be added too: <code><nowiki>|1|2|argname1|argname2|...</nowiki></code>. Any parameter which is used, but not on this list, will cause the module to return whatever is passed with the <code>unknown</code> parameter. The <code>_VALUE_</code> keyword, if used, will be changed to the name of the parameter. This is useful for either sorting the entries in a tracking category, or for provide more explicit information. |
|||
By default, the module makes no distinction between a defined-but-blank parameter and a non-blank parameter. That is, both unlisted {{para|foo|x}} and {{para|foo}} are reported. To only track non-blank parameters use {{para|ignoreblank|1}}. |
|||
By default, the module ignores blank positional parameters. That is, an unlisted {{para|2}} is ignored. To ''include'' blank positional parameters in the tracking use {{para|showblankpositional|1}}. |
|||
=== Lua patterns === |
|||
This module supports [[:mw:Extension:Scribunto/Lua reference manual#Patterns|Lua patterns]] (similar to [[regular expression]]s), which are useful when there are many known parameters which use a systematic pattern. For example, [[template:infobox3cols]] uses |
|||
<pre> |
|||
| regexp1 = header[%d][%d]* |
|||
| regexp2 = label[%d][%d]* |
|||
| regexp3 = data[%d][%d]*[abc]? |
|||
| regexp4 = class[%d][%d]*[abc]? |
|||
| regexp5 = rowclass[%d][%d]* |
|||
| regexp6 = rowstyle[%d][%d]* |
|||
| regexp7 = rowcellstyle[%d][%d]* |
|||
</pre> |
|||
to match all parameters of the form <code>headerNUM</code>, <code>labelNUM</code>, <code>dataNUM</code>, <code>dataNUMa</code>, <code>dataNUMb</code>, <code>dataNUMc</code>, ..., <code>rowcellstyleNUM</code>, where NUM is a string of digits. |
|||
== Example == |
|||
<pre> |
|||
{{Infobox |
|||
| above = {{{name|}}} |
|||
| label1 = Height |
|||
| data1 = {{{height|}}} |
|||
| label2 = Weight |
|||
| data2 = {{{weight|}}} |
|||
| label3 = Website |
|||
| data3 = {{{website|}}} |
|||
}}<!-- |
|||
end infobox, start tracking |
|||
-->{{#invoke:Check for unknown parameters|check |
|||
| unknown = {{main other|[[Category:Some tracking category|_VALUE_]]}} |
|||
| preview = unknown parameter "_VALUE_" |
|||
| name |
|||
| height | weight |
|||
| website |
|||
}} |
|||
</pre> |
|||
==See also== |
|||
* {{clc|Unknown parameters}} (category page can have header {{tl|Unknown parameters category}}) |
|||
* [[Module:Check for deprecated parameters]] – similar module that checks for deprecated parameters |
|||
* [[Module:TemplatePar]] – similar function (originally from dewiki) |
|||
* [[Template:Parameters]] and [[Module:Parameters]] – generates a list of parameter names for a given template |
|||
* [[Project:TemplateData]] based template parameter validation |
|||
** [[:he:Module:ParamValidator]] – parameter validation system on hewiki, relies on TemplateData. module doc in English. checks the following: |
|||
***use of undeclared parameters |
|||
*** use of parameters marked in templatedata "deprecated" |
|||
*** mistyped (mainly, parameters declared in templatedata as "number" receiving non-numerical value) |
|||
***missing parameters marked in TemplateData as "required" |
|||
***understands aliases, and warns when more than one alias of a parameter is used |
|||
** [[:cs:Module:CheckParameters]] – another parameter check system on cswiki that relies on TemplateData |
|||
* [[s:cs:Module:MonitorTemplateArguments]] – a template parameter monitoring system based on tracking categories |
|||
<includeonly>{{sandbox other|| |
|||
<!-- Categories go here and interwikis go in Wikidata. --> |
|||
}}</includeonly> |