Jump to content

Requests for technical support from the VASP team should be posted in the VASP Forum.

Template:CB: Difference between revisions

From VASP Wiki
Singraber (talk | contribs)
Created page with "{{{1}}}<noinclude> == Purpose == Create a code block which can be indented with the usual <code>:</code> indentation marker. == Parameters == <nowiki> {{CB|<content>|<<padding>>}}</nowiki> == Examples == Without optional arguments these boxes are available: <nowiki> {{CB|MY_SPECIAL_TAG = A B C}} {{CB|MY_SPECIAL_TAG = A B C}} </noinclude>"
 
No edit summary
 
(11 intermediate revisions by one other user not shown)
Line 1: Line 1:
{{{1}}}<noinclude>
{{{2|}}}{| style="width:100%; table-layout: fixed; border-spacing: 0; padding: 0; margin: 0; background-color: var(--vCB-bg); color: var(--vdefault-text); border-width: 1px; border-style: solid; border-color: var(--vCB-border);"
|{{#tag:pre|{{{1}}}|style="margin: 0; padding: {{{3|1em}}}; background: none; border: none; white-space: pre; overflow-x: auto; font-family: monospace;"}}
|}<noinclude>


== Purpose ==
== Purpose ==
Create a code block which can be indented with the usual <code>:</code> indentation marker.
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
MY_OTHER_TAG  = 1</nowiki>
 
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 <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 ==


  <nowiki> {{CB|<content>|<<padding>>}}</nowiki>
  <nowiki> {{CB|<content>|<<indent>>|<<padding>>}}</nowiki>
 
* <code>content</code>: The content of the code block.
* <code>indent</code>: ('''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 <code>padding</code> is required. Any other character than ":" may produce unexpected results!
* <code>padding</code>: ('''optional''') Specifies the padding of the code box, the default is <code>1em</code>.


== Examples ==
== Examples ==


Without optional arguments these boxes are available:
Without optional arguments the following example
 
<nowiki>{{CB|MY_SPECIAL_TAG {{=}} A B C}}</nowiki>
 
gives:
 
{{CB|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:
 
<nowiki>{{CB|MY_SPECIAL_TAG {{=}} A B C|:}}</nowiki>
<nowiki>{{CB|MY_SPECIAL_TAG {{=}} A B C|::}}</nowiki>
 
results in:
 
{{CB|MY_SPECIAL_TAG {{=}} A B C|:}}
{{CB|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.:
 
<nowiki>{{CB|MY_SPECIAL_TAG {{=}} A B C|:|0.5em}}</nowiki>
<nowiki>{{CB|MY_SPECIAL_TAG {{=}} A B C|::|0.5em}}</nowiki>
 
gives this:
 
{{CB|MY_SPECIAL_TAG {{=}} A B C|:|0.5em}}
{{CB|MY_SPECIAL_TAG {{=}} A B C|::|0.5em}}
 
Finally, the padding can also be specified without any indentation:
 
<nowiki>{{CB|MY_SPECIAL_TAG {{=}} A B C||0.5em}}</nowiki>
 
shows as:


<nowiki> {{CB|MY_SPECIAL_TAG = A B C}}
{{CB|MY_SPECIAL_TAG {{=}} A B C||0.5em}}


{{CB|MY_SPECIAL_TAG = A B C}}
== Problems and workarounds ==


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:12, 13 April 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.

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.