トップ | バージョン2 最新版 | バージョン3 β版

Wiki プロセッサ

プロセッサは 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>
}}}

結果、このように表示されます:

これは raw HTML です

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** です。

.. [*] ここは脚注。
}}}

結果、このように表示されます:

見出し
------
脚注 [*]_ 付きの **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 の配布に含まれています:

  • html -- Wiki ページにカスタム HTML を挿入する。 WikiHtml を参照してください。
  • div -- Wiki ページの内容を任意の <div> 要素でラップする (0.11 以降)。 WikiHtml を参照してください。
  • span -- Wiki ページの内容を任意の <span> 要素でラップする (0.11 以降)。 WikiHtml を参照してください。
  • rst -- Restructured テキスト を Trac で利用可能にする。 WikiRestructuredText を参照してください。
  • textile -- Textile をインストールすれば利用可能です。 Textile リファレンス を参照してください。
  • comment -- セクション内のテキストを処理しません。(セクションの内容はレンダリングされた Wiki ページには出力されず、プレーンテキストにのみ保持されます。)

ソースコードの強調表示対応

Trac では、以下のプログラミング言語でのインライン シンタックスハイライト を行うプロセッサが組み込まれています。

  • c -- C
  • cpp -- C++
  • python -- Python
  • perl -- Perl
  • ruby -- Ruby
  • php -- PHP
  • asp -- ASP
  • java -- Java
  • js -- Javascript
  • sql -- SQL
  • xml -- XML
  • sh -- Bourne/Bash shell

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