テンプレート:Code
使い方
[編集]短いテキストを <syntaxhighlight>
タグで囲みます(参照: mw:Extension:SyntaxHighlight)。このテンプレートは短いサンプル用に使用し、長い内容には <pre></pre>
または <syntaxhighlight></syntaxhighlight>
を使用してください。さまざまなタグの効果については mw:Help:Formatting/ja を参照してください。
内容に等号(=)が含まれている場合は、パラメーターを明示的に指定する必要があります:
{{code|1=date=2010年2月30日}}
このテンプレートは <syntaxhighlight>
タグを使用しており、属性 inline=1
を指定しています。これは <code>
と <nowiki>
を組み合わせたような動作をし、展開されたウィキテキストに適用されます。たとえば、{{code|some '''wiki''' text}}
は、「wiki」という語を太字にせず、三重引用符がそのまま表示されます:
some '''wiki''' text
しかし、{{code|a {{template}} call}}
のようにテンプレートが含まれていると、テンプレートは展開されます:
a [[:テンプレート:Template]] call
この動作を避けるには、テンプレート名を <nowiki>{{template}}</nowiki>
で囲んでください:
a {{template}} call
通常のテキストとインラインで使用する場合、{{code}} は明示的にスペースを入れると視認性が向上します:
foo {{code|bar baz}} quux.
これは次のように表示され、見やすくなります:
- foo
bar baz
quux.
一方、スペースを入れない場合:
foo {{code|bar baz}} quux.
これは次のように表示され、多くの人にとって視認性が低下します:
- foo
bar baz
quux.
なぜなら、「foo」と「bar
」が近接して見え、「bar
」と「baz
」の関係が見えにくくなるからです。等幅フォントではスペースが広いため、この違いが目立ちます。
パラメーター {{{2}}}(または |2 =
や |lang =
)で mw:Extension:SyntaxHighlight GeSHi の言語を指定できます。指定しなければプレーンテキスト(ハイライトなし)になります。ウィキテキストには wikitext
を指定することで構文ハイライトが有効になります。他にも html4strict
、html5
、php
、perl
、css
、javascript
、mysql
など多数の言語が指定可能です。無効な言語を指定すると、テンプレートの出力の代わりに有効な言語の一覧が表示されます(プレビュー・保存時)。
このテンプレートは subst展開する必要はありません。
使用例
[編集]Markup | Renders as |
---|---|
Lorem {{code|ipsum '''dolor'''}} sit amet |
Lorem |
The declaration {{code |lang=cpp |int foo(const std::string& bar, const std::vector<long double*>& baz);}} is the prototype for a function defined later. |
The declaration |
If the code contains an [[equals sign]], such as {{code |lang=javascript |code=var img = document.getElementsByTagName("img");}}, you must identify the first parameter explicitly as {{{1}}} or {{{code}}}; see also [[:bugzilla:5138]]. |
If the code contains an equals sign, such as |
使用されているテンプレート
[編集]{{code}} の中で他のテンプレートは通常通りには動作しません。{{var}} などを含む長い自由形式のコードブロックには、このテンプレートの代わりに <code></code>
を使用してください。
{{code}} 内で使用されたテンプレートは、レンダリングされたHTMLを表示します。これは有用な場合もあります。例えば次のように:
Markup | Renders as |
---|---|
{{code| {{cite web |title=Title |url=http://example.org}} }} |
|
この例では、テンプレートによって出力されたHTML(隠されたメタデータを含む)が確認できます。