Template:Demo/doc

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

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 it.

The template's skeleton is:

{{demo|<nowiki>{{your template}}</nowiki>}}
Template call
(m for magic word)
Output (delayed interpretation as wikimarkup) HTML alternative (never interpreted as wikimarkup)
{{!}} (m) | &#124; or {{pipe}}
{{=}} (m) = &#61;
{{!!}} || &#124;&#124;
{{!(}} [ &#91;
{{)!}} ] &#93;
{{!((}} [[ &#91;&#91;
{{))!}} ]] &#93;&#93;
{{(}} { &#123;
{{)}} } &#125;
{{((}} {{ &#123;&#123;
{{))}} }} &#125;&#125;
{{(((}} {{{ &#123;&#123;&#123;
{{)))}} }}} &#125;&#125;&#125;
{{(!}} {| &#123;&#124;
{{!+}} |+ &#124;&#43;
{{!-}} |- &#124;&#45;
{{!)}} |} &#124;&#125;

Failure to wrap <nowiki>...</nowiki> tags around the source may cause the source to be executed before it reaches this template. {{demo|{{fail}}}} produces:

<big style="color:#DF0A24; font-size:1.4em;">&#x2717;</big>&nbsp;'''Fail'''

 Fail

Pre style

[edit source]

Set |style= to add any CSS text to the <pre>...</pre> tag.

For example, {{demo|style=margin-left: 1.6em;|<nowiki>{{done}}</nowiki>}} will produce:

{{done}}

 Done

Separator

[edit source]

You can change the separator between the <syntaxhighlight> and the template by setting the |sep= parameter.

{{demo|sep=produces|<nowiki>{{done}}</nowiki>}}
{{done}}

produces  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

[edit source]

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

[edit source]

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 = *
}}

produces:


Module

[edit source]

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 A1
 
 
Team B2
 

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

[edit source]
This is the TemplateData for this template used by TemplateWizard, VisualEditor and other tools. See a monthly parameter usage report for Template:Demo in articles based on its TemplateData.

TemplateData for Demo

This template takes wikitext and displays it in syntax highlighting and displays the rendering of the wikitext below.

Template parameters

ParameterDescriptionTypeStatus
Content1

must be wrapped in <nowiki>

Unknownoptional
sepsep

Number of line breaks, or wikitext to fill in as the linebreak

Unknownoptional
nocatnocat demo_kill_categories

no description

Booleanoptional
result_argresult_arg

no description

Unknownoptional
<syntaxhighlight> stylestyle

no description

Unknownoptional
Reverse orderreverse

Show the code snippet and the result in reverse order

Default
0
Auto value
1
Booleanoptional

See also

[edit source]

Other formatting templates

[edit source]

{{#lsth:Template:Template-linking_templates|Other formatting templates}}