Template:Demo
This template simply places template code (or any other code) in a <syntaxhighlight lang="wikitext">...</syntaxhighlight>
tag and then places the template below the code.
{demo
|sep =
|nocat =
|<nowiki>{your template}</nowiki>
}
IMPORTANT: You must wrap include <nowiki>...</nowiki>
tags around the source to be demonstrated (or use {escape}, which has a demo-escape example), like so:
{demo|<nowiki>[template source]</nowiki>}
<nowiki>...</nowiki>
tags around the source may cause the source to be executed before it reaches this template: {demo|{fail}
<big style="color:#DF0A24; font-size:1.4em;">✗</big> '''Fail'''
Pre style
Set |style=
to add any CSS text to the <pre>...</pre>
tag.
{demo|style=margin-left: 1.6em;|<nowiki>{done}</nowiki>}
{done}
Separator
You can change the separator between the <syntaxhighlight>
and the template by setting the |sep=
parameter.
{demo|sep=produces|<nowiki>{done}</nowiki>}
{done}
You may use |sep=<td>
can make the demonstration fit in a table:
{done}
| Done |
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:
{demo|reverse=1|<nowiki>{tl|template}</nowiki>}
will produce
{template}{tl|template}
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:
{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)
{#invoke:Demo|module|demo_module=RoundN|demo_module_func=N2|demo_template=Round2
|bold_winner=high
|May 1|Team A|1|Team B|2
}
{Round2
|bold_winner=high
|May 1|Team A|1|Team B|2
}
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)
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
Code example | Effect | Notes |
---|---|---|
{Tj|Hatnote|Some text|selfref: yes|category: no|lang: fr}
|
Supports colors, placeholder texts, named and unnamed parameters | |
<syntaxhighlight lang="wikitext">
{Hatnote
| Some text
| selfref = yes
| category = no
| lang = fr
}
</syntaxhighlight>
|
{Hatnote
| Some text
| selfref = yes
| category = no
| lang = fr
}
|
Same as above |
{Tji|Hatnote|Some text|selfref: yes|category: no|lang: fr}
|
{Hatnote |
Supports colors, placeholder texts, named and unnamed parameters |
|
{Hatnote|Some text|selfref=yes|category=no|lang=fr}
|
Same as above |
{tl2|Hatnote|lang=fr}
|
{hatnote} |
Supports linking to sister projects (e.g., fr:Hatnote) |
{demo|<nowiki>{Hatnote|lang=fr|Some text}</nowiki>}
|
{hatnote|lang=fr|Some text}
|
Shows code and example |
{tln|Hatnote}
|
Template:Hatnote | Produces a normal link to the template |
{elc|Template:Hatnote} {elc|Template:Hatnote|Hatnote}
|
[[Template:Hatnote]] [[Template:Hatnote|Hatnote]] |
Formats wikilink, with optional piped link text and blended suffix |
{ml|Example|hello}
|
{#invoke:Example|hello} | Counterpart to {tl} for linking to Lua modules |
{mfl|Example|hello}
|
{#invoke:Example|hello} | Similar to {ml}, but expects the function to be documented and creates a link to the corresponding section |
{mlx|Example|hello}
|
{#invoke:Example|hello} |
Counterpart to {tlx} for linking to Lua modules |
{ml-lua|Module:Example|hello}
|
require('Module:Example') |
Link to Lua modules and built-in libraries, showing Lua code. |
{para|title|<var>book title</var>}
|
|title=book title |
Formats template parameters for display, with or without values |
{sclx|LASTING}
|
[[WP:LASTING]] |
Takes a shortcut suffix in project namespace and displays it with brackets and the WP: alias in a <code>...</code> tag.
|
{tag|ref} {xtag|templatedata}
|
<ref>...</ref> <templatedata> |
Formats [X]HTML tags; can add content, choose opening, closing, or self-closing |
{dtl|Ping project}
|
{d:Ping project} | Wikidata counterpart to {tl} |
{pf|if} {pf|if|{1}|true|false}
|
{#if} {#if:{1}|true|false} |
Parser function equivalent to {tl} |
{magic word|uc:}
|
{uc:} | Magic word links |
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 |