プロセッサは Wiki マクロ の一種です。 Trac Wiki エンジン 以外のマークアップフォーマットを使用するために設計されています。プロセッサは ユーザが編集したテキストを処理するマクロ機能 と考えることができます。
Trac 内の全ての Wiki テキストにおいて、 Wiki エンジンにプロセッサを使わせることによって Restructured Text, raw HTML および textile を使用することができます。
テキストブロックでプロセッサを使うには、 Wiki のコードブロックを使用し、プロセッサの名前を (Unix 系 OS のスクリプトのように) shebang 行 (#!) に続いて指定します。
例1 (Wiki テキストに raw HTML を挿入する):
{{{
#!html
<h1 style="color: orange">これは raw HTML です</h1>
}}}
結果、このように表示されます:
Note that since 0.11, such blocks of HTML have to be self-contained, i.e. you can't start an HTML element in one block and close it later in a second block. Use div or span processors for achieving similar effect (see WikiHtml).
例2 (Wiki テキストに ReStructured テキストを挿入する):
{{{
#!rst
見出し
------
脚注 [*]_ 付きの **text** です。
.. [*] ここは脚注。
}}}
結果、このように表示されます:
例3 (Wiki テキストに C 言語ソースコードブロックを挿入する):
{{{
#!c
int main(int argc, char *argv[])
{
printf("Hello World\n");
return 0;
}
}}}
結果、このように表示されます:
int main(int argc, char *argv[])
{
printf("Hello World\n");
return 0;
}
以下のプロセッサが Trac の配布に含まれています:
Trac では、以下のプログラミング言語でのインライン シンタックスハイライト を行うプロセッサが組み込まれています。
Note: Trac はシンタックスの色付けを、外部のソフトウェアパッケージに依存しています。詳しくは TracSyntaxColoring をご覧下さい。
プロセッサとして mime-type が指定されると、ソースコードをブラウズするときと同じく、対応されている言語であれば、シンタックスハイライトを行うことができます。例えば、以下のように書くと:
{{{
#!text/html
<h1>text</h1>
}}}
この結果はシンタックスハイライトされた HTML コードになります:
<h1>text</h1>
対応している全ての mime-type でも、これは同じく有効です。
ユーザによるプロセッサマクロの開発やコントリビュート:
プロセッサの開発は Wiki マクロと違いはありません。事実、これらは同じような機能を持ち、シンタックスだけが異なります。詳しくは WikiMacros を参照してください。
See also: WikiMacros, WikiHtml, WikiRestructuredText, TracSyntaxColoring, WikiFormatting, TracGuide