This template is used to present markup or code side by side with the output it renders.
<templatedata> { "description": " ", "paramOrder": [ "margin-left", "width", "style", "noheaders", "title", "colheaderstyle", "col1headerstyle", "col1", "col2headerstyle", "col2", "codestyle", "outputstyle", "1", "2", "3", "4", "39", "40" ], "params": { "1": { "description": "row 1, first column (markup/code)'s content.", "type": "string" }, "2": { "description": "row 1, second column (output)'s content.", "type": "string" }, "3": { "description": "row 2, first column's content (etc).", "type": "string" }, "4": { "description": "row 2, second column's content (etc).", "type": "string" }, "39": { "description": "First column's content in last possible row.", "type": "string" }, "40": { "description": "Second column's content in last possible row.", "type": "string" }, "width": { "description": "To set the table's overall width.", "type": "string", "default": "100%" }, "margin-left": { "description": "To set a margin on the table's lefthand side.", "type": "string", "default": "0" }, "style": { "description": "For CSS styles amending the table's overall appearance.", "type": "string" }, "title": { "description": "Title above table.", "type": "string" }, "noheaders": { "description": "Set (as e.g. noheaders=on) to suppress the columns' headings and table's title.", "type": "string" }, "col1": { "description": "First column (markup/code)'s heading.", "type": "string", "default": "\"Markup\"" }, "col2": { "description": "Second column (output)'s heading.", "type": "string", "default": "\"Renders as\"" }, "codestyle": { "description": "For CSS styles amending the presentation of the first column (markup/code)'s content (e.g. a smaller font-size).", "type": "string", "aliases": [ "markupstyle" ] }, "outputstyle": { "description": "For CSS styles amending the presentation of the second column (output)'s content.", "type": "string" }, "col1headerstyle": { "description": "For CSS styling to amend the appearance of the first column's heading. Overrides (but does not replace) colheaderstyle.", "type": "string" }, "col2headerstyle": { "description": "For CSS styling to amend the appearance of the second column's heading. Overrides (but does not replace) colheaderstyle.", "type": "string" }, "colheaderstyle": { "description": "For CSS styling to amend the appearance of each column's heading.", "type": "string" } } } </templatedata>
Usage
Each cell in the first ("Markup") column uses <pre>
to retain newlines and spaces but styled to allow content to wrap within it. It is usually desirable to escape the content of these cells so that the markup is displayed by wrapping the markup in <nowiki>
. It is technically not possible to add this feature to the template.
Each cell in the second ("Renders as") column is usually the unescaped markup copied from the corresponding "Markup" cell before it. There are instances where this may differ:
- If the first line includes wikimarkup that must start on a new line such as #, * or ; then use
<nowiki />
before the first line; see examples below. - Header markup such as
will show in the page table of contents; use==
{{fake heading}}
. - Some templates will place the page in a maintenance category, which is usually undesired:
- Instead of
{{citation needed}}
, use{{fake citation needed}}
.
- Instead of
- Some templates may have error checking that places the page in a maintenance category. Suppress the category as possible:
- Citation Style 1 templates can suppress the maintenance category by setting
|template doc demo=true
.
- Citation Style 1 templates can suppress the maintenance category by setting
Limitations
<nowiki>
If you don't wrap the content of the markup cell in <nowiki>
, then any template markup will not be escaped, it will be expanded.
This example shows the markup for {{tl|tag}}:
Renders as | Expected rendering |
---|---|
{{[[Template:tag|tag]]}} |
{{tl|tag}} |
HTML entities
HTML entities are parsed in the markup cell:
Nowikied markup shows as | Expected markup |
---|---|
– |
– |
To work around this, replace the &
with &
thus &nbsp;
will show as
List and indent markup
If the first line includes wikimarkup that must start on a new line such as #, * or ; then use <nowiki />
:
Markup | Renders as |
---|---|
# Item 1 # Item 2 # Item 3 # Item 4 |
# Item 1
|
Markup | Renders as |
---|---|
<nowiki /> # Item 1 # Item 2 # Item 3 # Item 4 |
|
Examples
Simple
Markup | Renders as |
---|---|
'''Bold text''' |
Bold text |
''Italic text'' |
Italic text |
More complex
Note that {{Markup}}
's second argument here uses {{fake heading}}
and {{fake citation needed}}
.
Markup | Renders as |
---|---|
The quick brown fox jumps over the lazy dog.{{#tag:ref|A footnote.<ref>A reference for the footnote.</ref>|group=nb}} The cow jumped over the moon.{{fact}} == Notes == {{reflist|group=nb}} == References == {{reflist}} |
The quick brown fox jumps over the lazy dog.[nb 1] The cow jumped over the moon.Template:Fake citation needed
|
Multiple rows
Markup | Renders as |
---|---|
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
With title
Markup | Renders as |
---|---|
The quick brown fox jumps over the lazy dog. |
The quick brown fox jumps over the lazy dog. |
Showing rendered HTML
When a template is enclosed within {{code}}, it shows the rendered HTML:
Markup | Renders as |
---|---|
{{cite book |last=White |first=T. H. |title=The Book of Merlyn |year=1977}} |
Template:Cite book |
{{code|{{cite book |last=White |first=T. H. |title=The Book of Merlyn |year=1977}}}} |
|
See also
- {{Markup2}} for bulleted and indented markup.
- {{Markupv}} for the vertical presentation (above/below) of markup/code and its output.