Template:CB: Difference between revisions

From VASP Wiki
No edit summary
No edit summary
 
Line 1: Line 1:
{{{2|}}}{| style="white-space: pre; width:100%; table-layout: fixed; font-family: monospace; line-height: 1em; border-spacing: 0; padding: 0; margin: 0; background-color: #f8f9fa; color: #000; border-width: 1px; border-style: solid; border-color: rgb(234, 236, 240);"
{{{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);"
|<div style="width: calc(100% - 3*{{{3|1em}}}); overflow-x: auto; float: left; padding: {{{3|1em}}}">{{{1}}}</div>
|{{#tag:pre|{{{1}}}|style="margin: 0; padding: {{{3|1em}}}; background: none; border: none; white-space: pre; overflow-x: auto; font-family: monospace;"}}
|}<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 but padding is required. Any other character than ":" may produce unexpected results!
  • padding: (optional) Specifies the padding of the code box, the default is 1em.

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.