Vorlage:Code snippet/doc: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
imported>Oetterer Keine Bearbeitungszusammenfassung |
||
| Zeile 7: | Zeile 7: | ||
If the content includes an equals sign (=), you must specify the parameter explicitly: <code><nowiki>{{code snippet|1=date=30 Feb 2010}}</nowiki></code>. | If the content includes an equals sign (=), you must specify the parameter explicitly: <code><nowiki>{{code snippet|1=date=30 Feb 2010}}</nowiki></code>. | ||
The template uses the <code><nowiki><syntaxhighlight></nowiki></code> tag with the attribute <code> | The template uses the <code><nowiki><syntaxhighlight></nowiki></code> tag with the attribute <code>inline</code>. This works like the combination of the <code><nowiki><code></nowiki></code> and <code><nowiki><nowiki></nowiki></code> tags, applied to the expanded wikitext. For example, <code><nowiki>{{code snippet|some '''wiki''' text}}</nowiki></code> will '''''not''''' render the word "wiki" in bold, and will render the tripled-single-quotes: | ||
:{{code snippet|some '''wiki''' text}} | :{{code snippet|some '''wiki''' text}} | ||
However, <code><nowiki>{{code snippet|a {{tl}} call}}</nowiki></code> will still invoke the template: | However, <code><nowiki>{{code snippet|a {{tl|Classgeneretor}} call}}</nowiki></code> will still invoke the template: | ||
:{{code snippet|a {{tl}} call}} | :{{code snippet|a {{tl|Classgeneretor}} call}} | ||
Use {{tag|nowiki}} around the template name to avoid this problem: | Use {{tag|nowiki}} around the template name to avoid this problem: | ||
| Zeile 20: | Zeile 20: | ||
When used inline with regular text, {{tnull|code}} generally looks best and is easiest to read when it is explicitly spaced apart from the regular text: | When used inline with regular text, {{tnull|code}} generally looks best and is easiest to read when it is explicitly spaced apart from the regular text: | ||
:{{code snippet|foo <nowiki>{{code|bar baz}}</nowiki> quux.}} | :{{code snippet|foo <nowiki>{{code snippet|bar baz}}</nowiki> quux.}} | ||
is well spaced: | is well spaced: | ||
:foo {{code snippet|bar baz}} quux. | :foo {{code snippet|bar baz}} quux. | ||
| Zeile 30: | Zeile 30: | ||
Use parameter {{{2}}} (unnamed, as {{para|2}}, or more explicitly as {{para|lang}}) to specify a language for [[mw:Extension:SyntaxHighlight GeSHi]]. This option defaults to plain-text, i.e. no highlighting. There is no highlighting option for wikitext as a markup language, though {{code snippet|html4strict}} and {{code snippet|html5}} are valid values, as are {{code snippet|php}}, {{code snippet|perl}}, {{code snippet|css}}, {{code snippet|javascript}}, {{code snippet|mysql}} and many others. Attempting to use an invalid one causes a list of valid ones to be displayed in place of the template output, when the page is previewed or saved. | Use parameter {{{2}}} (unnamed, as {{para|2}}, or more explicitly as {{para|lang}}) to specify a language for [[mw:Extension:SyntaxHighlight GeSHi]]. This option defaults to plain-text, i.e. no highlighting. There is no highlighting option for wikitext as a markup language, though {{code snippet|html4strict}} and {{code snippet|html5}} are valid values, as are {{code snippet|php}}, {{code snippet|perl}}, {{code snippet|css}}, {{code snippet|javascript}}, {{code snippet|mysql}} and many others. Attempting to use an invalid one causes a list of valid ones to be displayed in place of the template output, when the page is previewed or saved. | ||
This template does not need to be [[Wikipedia:Template substitution|substituted]]. | This template does not need to be [[Wikipedia:Template substitution|substituted]]. | ||
| Zeile 44: | Zeile 42: | ||
|The declaration {{code snippet|lang=cpp |int foo(const std::string& bar, const std::vector<long double*>& baz);}} is the prototype for a function defined later. | |The declaration {{code snippet|lang=cpp |int foo(const std::string& bar, const std::vector<long double*>& baz);}} is the prototype for a function defined later. | ||
|<nowiki>If the code contains an [[wpen:equals sign]], such as {{code snippet|lang=javascript |code=var img = document.getElementsByTagName("img"); | |<nowiki>If the code contains an [[wpen:equals sign]], such as {{code snippet|lang=javascript |code=var img = document.getElementsByTagName("img");}}, you must identify the first parameter explicitly as {{{1}}} or {{{code}}}; see also [[:mediazilla:5138]].</nowiki> | ||
|If the code contains an [[wpen:equals sign]], such as {{code snippet|lang=javascript |code=var img = document.getElementsByTagName("img"); | |If the code contains an [[wpen:equals sign]], such as {{code snippet|lang=javascript |code=var img = document.getElementsByTagName("img");}}, you must identify the first parameter explicitly as {{{1}}} or {{{code}}}; see also [[:mediazilla:5138]]. | ||
}} | }} | ||
Version vom 16. April 2022, 22:50 Uhr
| This is a documentation subpage for Vorlage:Code snippet. It contains usage information, categories and other content that is not part of the original vorlage page. |
Usage
Wraps a short span of text in <syntaxhighlight> tags (see mw:Extension:SyntaxHighlight GeSHi). This template should be used for short samples; longer content should use <pre>...</pre> or <syntaxhighlight>...</syntaxhighlight>. See Help:Wiki markup for an explanation of what the various tags do.
If the content includes an equals sign (=), you must specify the parameter explicitly: {{code snippet|1=date=30 Feb 2010}}.
The template uses the <syntaxhighlight> tag with the attribute inline. This works like the combination of the <code> and <nowiki> tags, applied to the expanded wikitext. For example, {{code snippet|some '''wiki''' text}} will not render the word "wiki" in bold, and will render the tripled-single-quotes:
some '''wiki''' text
However, {{code snippet|a {{tl|Classgeneretor}} call}} will still invoke the template:
a {{[[Template:Classgeneretor|Classgeneretor]]}} call
Use <nowiki>...</nowiki> around the template name to avoid this problem:
a {{tl}} call
When used inline with regular text, {{code}} generally looks best and is easiest to read when it is explicitly spaced apart from the regular text:
foo {{code snippet|bar baz}} quux.
is well spaced:
- foo
bar bazquux.
versus:
foo {{code snippet|bar baz}} quux.
which is going to be visually confusing for many:
- foo
bar bazquux.
because "foo" and "bar" will seem more closely associated than "bar" and "baz"; the width of the space character in a monospaced font is almost always larger than in a proportional font.
Use parameter {{{2}}} (unnamed, as |2=, or more explicitly as |lang=) to specify a language for mw:Extension:SyntaxHighlight GeSHi. This option defaults to plain-text, i.e. no highlighting. There is no highlighting option for wikitext as a markup language, though html4strict and html5 are valid values, as are php, perl, css, javascript, mysql and many others. Attempting to use an invalid one causes a list of valid ones to be displayed in place of the template output, when the page is previewed or saved.
This template does not need to be substituted.
Examples
| Markup | Renders as |
|---|---|
Lorem {{code snippet|ipsum '''dolor'''}} sit amet
|
Lorem ipsum '''dolor''' sit amet |
The declaration {{code snippet|lang=cpp |int foo(const std::string& bar, const std::vector<long double*>& baz);}} is the prototype for a function defined later.
|
The declaration int foo(const std::string& bar, const std::vector<long double*>& baz); is the prototype for a function defined later. |
If the code contains an [[wpen:equals sign]], such as {{code snippet|lang=javascript |code=var img = document.getElementsByTagName("img");}}, you must identify the first parameter explicitly as {{{1}}} or {{{code}}}; see also [[:mediazilla:5138]].
|
If the code contains an wpen:equals sign, such as var img = document.getElementsByTagName("img");, you must identify the first parameter explicitly as {{{1}}} or {{{code}}}; see also mediazilla:5138.
|
Included templates
Embedded templates do not function as expected inside {{code snippet}}; for longer, free-form blocks of code, which can contain templates such as {{var}}, use <code snippet>...</code snippet> as a wrapper instead of this template.
Templates used inside {{code snippet}} expose the rendered HTML— this can be useful. For example:
| Markup | Renders as |
|---|---|
{{code snippet|
{{hidden |title=Title |content=http://example.org}}
}}
|
<div class="mw-collapsible mw-collapsed" style="box-sizing:border-box;width:100%;font-size:95%;padding:4px;border:none;"><div style="font-size:100%;line-height:1.6;font-weight:bold;background:transparent;text-align:center">Title</div><div class="mw-collapsible-content" style="background:transparent;text-align:left;font-weight:normal">http://example.org</div></div>
|
The above example shows the HTML rendered by the mediawiki collapse mechanism.
See also
- {{pre}}
- {{pre2}}
- {{code}}
- Help:Wiki markup