Template:CB: Difference between revisions
Tag: Undo |
No edit summary |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
{{{2|}}}{| style=" | {{{2|}}}{| style="width:100%; table-layout: fixed; border-spacing: 0; padding: 0; margin: 0; background-color: #f8f9fa; color: #000; border-width: 1px; border-style: solid; border-color: rgb(234, 236, 240);" | ||
| | |{{#tag:pre|{{{1}}}|style="margin: 0; padding: {{{3|1em}}}; background: none; border: none; white-space: pre; overflow-x: auto; font-family: monospace;"}} | ||
|}<noinclude> | |}<noinclude> | ||
| Line 6: | Line 6: | ||
Create a code block which can be indented with the usual <code>:</code> indentation marker. Normally, a preformatted text block can be inserted with an additional space in the beginning, e.g. | Create a code block which can be indented with the usual <code>:</code> indentation marker. Normally, a preformatted text block can be inserted with an additional space in the beginning, e.g. | ||
<nowiki> MY_SPECIAL_TAG = A B C</nowiki> | <nowiki> MY_SPECIAL_TAG = A B C | ||
MY_OTHER_TAG = 1</nowiki> | |||
will print as: | will print as: | ||
MY_SPECIAL_TAG = A B C | MY_SPECIAL_TAG = A B C | ||
MY_OTHER_TAG = 1 | |||
However, this syntax does not allow indenting, e.g., in lists. The <code>CB</code> (as in '''C'''ode '''B'''lock) template allows the box to be indented any level. {{NB|warning| | However, this syntax does not allow indenting, e.g., in lists. The <code>CB</code> (as in '''C'''ode '''B'''lock) template allows the box to be indented any level.{{NB|warning|Currently, this template does not support nested templates, i.e., other templates like [[Template:TAG]] do not get properly expanded inside the code block.}} | ||
== Parameters == | == Parameters == | ||
| Line 63: | Line 65: | ||
The <code>content</code> cannot contain the "=" or "|" character because this has a special meaning for named template parameters. Therefore, we have to use the <code><nowiki>{{=}}</nowiki></code> and <code><nowiki>{{!}}</nowiki></code> template, respectively. | The <code>content</code> cannot contain the "=" or "|" character because this has a special meaning for named template parameters. Therefore, we have to use the <code><nowiki>{{=}}</nowiki></code> and <code><nowiki>{{!}}</nowiki></code> template, respectively. | ||
</noinclude> | </noinclude> | ||
Latest revision as of 13:29, 18 March 2026
{{{1}}}
|
Purpose
Create a code block which can be indented with the usual : indentation marker. Normally, a preformatted text block can be inserted with an additional space in the beginning, e.g.
MY_SPECIAL_TAG = A B C MY_OTHER_TAG = 1
will print as:
MY_SPECIAL_TAG = A B C MY_OTHER_TAG = 1
However, this syntax does not allow indenting, e.g., in lists. The CB (as in Code Block) template allows the box to be indented any level.
| Warning: Currently, this template does not support nested templates, i.e., other templates like Template:TAG do not get properly expanded inside the code block. |
Parameters
{{CB|<content>|<<indent>>|<<padding>>}}
content: The content of the code block.indent: (optional) Allows to indent the whole box with regular colon sign. Use multiple ":" signs to get any level of indentation. Can be left empty if no indentation is needed butpaddingis required. Any other character than ":" may produce unexpected results!padding: (optional) Specifies the padding of the code box, the default is1em.
Examples
Without optional arguments the following example
{{CB|MY_SPECIAL_TAG {{=}} A B C}}
gives:
MY_SPECIAL_TAG = A B C |
This should be very close to the regular preformatted text boxes we can obtain via MediaWiki syntax. Here are two examples for indentation levels:
{{CB|MY_SPECIAL_TAG {{=}} A B C|:}}
{{CB|MY_SPECIAL_TAG {{=}} A B C|::}}
results in:
MY_SPECIAL_TAG = A B C
MY_SPECIAL_TAG = A B C
Note that the boxes are correctly indented one and two levels. The padding can be reduced with the optional argument, e.g.:
{{CB|MY_SPECIAL_TAG {{=}} A B C|:|0.5em}}
{{CB|MY_SPECIAL_TAG {{=}} A B C|::|0.5em}}
gives this:
MY_SPECIAL_TAG = A B C
MY_SPECIAL_TAG = A B C
Finally, the padding can also be specified without any indentation:
{{CB|MY_SPECIAL_TAG {{=}} A B C||0.5em}}
shows as:
MY_SPECIAL_TAG = A B C |
Problems and workarounds
The content cannot contain the "=" or "|" character because this has a special meaning for named template parameters. Therefore, we have to use the {{=}} and {{!}} template, respectively.