Version 3 (modified by trac, 12 years ago) (diff) |
---|
プロセッサは Wiki マクロ の一種です。 Trac Wiki エンジン 以外のマークアップフォーマットを使用するために設計されています。プロセッサは ユーザが編集したテキストを処理するマクロ機能 と考えることができます。
Trac 内の全ての Wiki テキストにおいて、 Wiki プロセッサを使用することができます。 例えば、以下に述べる様々な用途で使用することができます:
テキストブロック上に Wiki プロセッサを適用するには、 最初のデリミタとして Wiki の コードブロック を使用します:
{{{ これらの行は 処理されるでしょう... }}}
{{{ のすぐ後または直後の行に, #! に続けて プロセッサ名 を追加します。.
{{{ #!プロセッサ名 これらの行は 処理されるでしょう... }}}
これはほとんどの UNIX ユーザにはおなじみである "shebang" を用いた表記法です。
これらの内容に加えて、いくつかの Wiki プロセッサでは、 プロセッサ名に続けて同じ行に、 key=value のペアを書くことによって、 パラメータ を許容するものがあります。もし、 value にスペースが含まれるケースがたびたび起こるようであれば、 クオテーションで囲んだ文字列を使用することができます (key="スペースが含まれている文字列") 。
いくつかのプロセッサは Wiki のマークアップを処理することを意味するので、 プロセッサのブロックを ネスト させることができます。 可読性を向上させるためにネストしたブロックの内容をインデントさせたいと思うかもしれません。 この種のインデントは中身を処理する際に無視されます。
Wiki マークアップ | 表示 |
---|---|
| |
{{{ <h1 style="color: grey">HTML テスト</h1> }}} | HTML テスト |
| |
{{{#!div style="background: #ffd; border: 3px ridge" これは 埋め込まれた "コード" ブロックの例です: {{{ #!python def hello(): return "world" }}} }}} | これは 埋め込まれた "コード" ブロックの例です: def hello(): return "world" |
| |
{{{ #!html <form action="/query" method="get"><div> <input type="text" name="keywords" value="~" size="30"/> <input type="submit" value="キーワードで検索"/> <!-- To control what fields show up use hidden fields <input type="hidden" name="col" value="id"/> <input type="hidden" name="col" value="summary"/> <input type="hidden" name="col" value="status"/> <input type="hidden" name="col" value="milestone"/> <input type="hidden" name="col" value="version"/> <input type="hidden" name="col" value="owner"/> <input type="hidden" name="col" value="priority"/> <input type="hidden" name="col" value="component"/> --> </div></form> }}} |
以下のプロセッサが Trac の配布に含まれています:
#!html ブロックは 自己完結型 でなければなりません。 つまり、1つ目のブロックである HTML 要素を開始し、後に記述する2つ目のブロックでその要素を閉じるということはできません。これに類似した効果を得るためには、下記に述べるプロセッサを使用して下さい。
これらのプロセッサについての詳細と使用例については、 WikiHtml を参照して下さい。
Trac はインラインのシンタックスハイライトを提供するプロセッサを同梱しています:
#!c (C), #!cpp (C++), #!python (Python), #!perl (Perl), #!ruby (Ruby), #!php (PHP), #!asp (ASP), #!java (Java), #!js (Javascript), #!sql (SQL), #!xml (XML または HTML), #!sh (Bourne/Bash シェル), など。
Trac では、シンタックスのカラーリングについて外部のソフトウェア 例えば Pygments に依存しています。
TracSyntaxColoring にどの言語のシンタックスハイライトがサポートされているかについての情報と その他の言語のシンタックスハイライトのサポートを有効にする方法について書かれています。
MIME タイプをプロセッサ名として使用することによって、ソースコードをブラウズするときに、サポートしている言語についてはシンタックスハイライトをすることが可能です。例えば、このように書くことができます:
{{{ #!text/html <h1>テキスト</h1> }}}
この結果はシンタックスハイライトされた HTML コードになります:
<h1>text</h1>
これは、対応しているすべての 対応している MIME タイプ に対して有効です。
ユーザによるプロセッサマクロの開発やコントリビュート:
プロセッサは Wiki マクロを開発するのと変わりはありません。 実際、開発方法は同じであり、シンタックスの使用方法のみが異なります。 詳細情報については、 カスタムマクロを開発する を参照して下さい。
See also: WikiMacros, WikiHtml, WikiRestructuredText, TracSyntaxColoring, WikiFormatting, TracGuide