Module:Check for unknown parameters/doc: Difference between revisions

From greek.doctor
w>Jonesey95
m (Reverted 1 edit by 2404:160:8075:59AF:1786:59EB:15CB:7CC0 (talk) to last revision by Grufo)
(No difference)

Revision as of 21:06, 19 September 2023

This module may be appended to a template to check for uses of unknown parameters. Unlike many other modules, this module is not implemented by a template.

Usage

Basic usage

<syntaxhighlight lang="wikitext">

</syntaxhighlight> or to sort the entries in the tracking category by parameter with a preview error message <syntaxhighlight lang="wikitext">

</syntaxhighlight> or for an explicit red error message <syntaxhighlight lang="wikitext">

</syntaxhighlight> Here, arg1, arg2, ..., argN, are the known parameters. Unnamed (positional) parameters can be added too: |1|2|argname1|argname2|.... Any parameter which is used, but not on this list, will cause the module to return whatever is passed with the unknown parameter. The _VALUE_ 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 |foo=x and |foo= are reported. To only track non-blank parameters use |ignoreblank=1.

By default, the module ignores blank positional parameters. That is, an unlisted |2= is ignored. To include blank positional parameters in the tracking use |showblankpositional=1.

Lua patterns

This module supports Lua patterns (similar to regular expressions), which are useful when there are many known parameters which use a systematic pattern. For example, Infobox3cols uses <syntaxhighlight lang="lua"> regexp1 = "header[%d]+", regexp2 = "label[%d]+", regexp3 = "data[%d]+[abc]?", regexp4 = "class[%d]+[abc]?", regexp5 = "rowclass[%d]+", regexp6 = "rowstyle[%d]+", regexp7 = "rowcellstyle[%d]+", </syntaxhighlight> to match all parameters of the form headerNUM, labelNUM, dataNUM, dataNUMa, dataNUMb, dataNUMc, ..., rowcellstyleNUM, where NUM is a string of digits.

Example

<syntaxhighlight lang="wikitext"> </syntaxhighlight>

Call from within Lua code

See the end of Module:Rugby box for a simple example or Module:Infobox3cols or Module:Flag for more complicated examples.

See also