Template:Demo

From TechInfoDepot
Jump to navigationJump to search
Documentation icon Template documentation[view] [edit] [history] [purge]

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;
{{!(}} Template:!( &#91;
{{)!}} Template:)! &#93;
{{!((}} [[ &#91;&#91;
{{))!}} ]] &#93;&#93;
{{(}} Template:( &#123;
{{)}} Template:) &#125;
{{((}} {{ &#123;&#123;
{{))}} }} &#125;&#125;
{{(((}} Template:((( &#123;&#123;&#123;
{{)))}} Template:))) &#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:

[[:Template:Fail]]
Template:Fail

Pre style

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}}
Template: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}}
produces Template:Done

You may use |sep=<td> can make the demonstration fit in a table:

{{done}}
Template: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 = *
}}
produces:


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

Lua error in package.lua at line 80: module 'Module:RoundN' not found.

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

This is the TemplateData for this template, which is used by TemplateWizard, the VisualEditor and still other tools.

TemplateData for Demo


No description.

Template parameters[Edit template data]

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

Other formatting templates

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