Template:Demo
<syntaxhighlight lang="wikitext"></syntaxhighlight>
![]() | This template uses Lua: |
This template simply places template code (or any other code) in a <syntaxhighlight lang="wikitext">...</syntaxhighlight>
tag and then places the rendering of that code below.
<syntaxhighlight lang="wikitext">
<syntaxhighlight lang="wikitext">{{your template}}</syntaxhighlight>Template:Your template
</syntaxhighlight>
IMPORTANT: You must wrap <nowiki>...</nowiki>
tags around the source to be demonstrated (or use {{escape}}, which has a demo-escape example), like so:
<syntaxhighlight lang="wikitext" inline><syntaxhighlight lang="wikitext">[template source]</syntaxhighlight>[template source]</syntaxhighlight>
Failure to wrap <nowiki>...</nowiki>
tags around the source may cause the source to be executed before it reaches this template.
<syntaxhighlight lang="wikitext" inline><syntaxhighlight lang="wikitext">✗ Fail</syntaxhighlight>✗ Fail</syntaxhighlight> produces:
<syntaxhighlight lang="wikitext">✗ Fail</syntaxhighlight>✗ Fail
Pre style
Set |style=
to add any CSS text to the <pre>...</pre>
tag.
For example, <syntaxhighlight lang="wikitext" inline><syntaxhighlight lang="wikitext" style="margin-left: 1.6em;">{{done}}</syntaxhighlight> Done</syntaxhighlight> will produce:
<syntaxhighlight lang="wikitext" style="margin-left: 1.6em;">{{done}}</syntaxhighlight> Done
Separator
You can change the separator between the <syntaxhighlight>
and the template by setting the |sep=
parameter.
<syntaxhighlight lang="wikitext"><syntaxhighlight lang="wikitext">{{done}}</syntaxhighlight> produces Done</syntaxhighlight>
<syntaxhighlight lang="wikitext">{{done}}</syntaxhighlight> produces
Done
You may use |sep=<td>
can make the demonstration fit in a table:
<syntaxhighlight lang="wikitext">{{done}}</syntaxhighlight> | ![]() |
Instead of using |sep=
, you can also specify the number of line breaks between the code and the template in the |br=
parameter.
Reverse order
Use |reverse=1
to show the code snippet and the result in reverse order:
<syntaxhighlight lang="wikitext">{{template}}<syntaxhighlight lang="wikitext">{{tl|template}}</syntaxhighlight></syntaxhighlight>
will produce
{{template}}<syntaxhighlight lang="wikitext">{{tl|template}}</syntaxhighlight>
Category removal
For templates that add categories (e.g. {{Asbox}}), set |nocat=
(or |demo_kill_categories=
) to anything to prevent them from showing up in the output:
<syntaxhighlight lang="wikitext">{{Asbox
| image = Østfold_våpen.svg
| pix = 30
| subject = Østfold location
| name = Template:Østfold-geo-stub
| category = Østfold geography stubs
| tempsort = *
}}
Module
If the template used is based on Lua, you can pass args directly to the demonstrated module by invoking Module:Demo like so: (this would reduce server stress) <syntaxhighlight lang="wikitext"> {{#invoke:Demo|module|demo_module=RoundN|demo_module_func=N2|demo_template=Round2 |bold_winner=high |May 1|Team A|1|Team B|2 }}</syntaxhighlight> <syntaxhighlight lang="wikitext">{{Round2 |bold_winner=high |May 1|Team A|1|Team B|2
}}</syntaxhighlight>Final | ||
May 1 | ||
Team A | 1 | |
Team B | 2 | |
Note: It will attempt to preserve line breaks for unnamed params, but such is impossible for named params since those are stripped of whitespace/order before being passed to the module. Also note, you should use |demo_sep=
instead of |sep=
(all args you don't want being passed should be prefixed with demo_
if not already)
TemplateData
TemplateData for Demo
No description.
Parameter | Description | Type | Status | |
---|---|---|---|---|
Content | 1 | must be wrapped in <nowiki> | Unknown | optional |
sep | sep | Number of line breaks, or wikitext to fill in as the linebreak | Unknown | optional |
nocat | nocat demo_kill_categories | no description | Boolean | optional |
result_arg | result_arg | no description | Unknown | optional |
<syntaxhighlight> style | style | no description | Unknown | optional |
Reverse order | reverse | Show the code snippet and the result in reverse order
| Boolean | optional |
See also
- {{Demo-inline}}, for an inline version of this template
- {{Escape}} - which has an example of this template without nowiki tags
- {{Nowiki template demo}} which uses Module:Template test case
- {{Automarkup}} which uses Module:Automarkup
Other formatting templates
{{#lsth:Template:Template-linking_templates|Other formatting templates}}