Trac での reStructuredText 対応
Trac は WikiFormatting を使用できるすべての箇所で、 Wiki マークアップの代わりに reStructuredText を使用することができます。
reStructuredText の Web ページより:
"reStructuredText は読みやすく、 WYSIWYG なプレーンテキストへのマークアップ文法と、そのパーサシステムです。 (Python の docstring のような) プログラムへのインラインドキュメンテーションや、シンプルな Web ページの素早い作成、スタンドアロンのドキュメントの記述に役立ちます。 reStructuredText は個別のアプリケーション向けに拡張ができるように設計されています。"
Subversion リポジトリのファイルを reStructuredText として Trac のソースブラウザに表示したい場合、 Subversion の svn:mime-type 属性に text/x-rst を設定してください。 この例 が参考になります。
必須条件
Trac で RST を使うためには、 Python の docutils パッケージがインストールされていなければなりません。 あなたのオペレーティングシステムでまだ使用できない場合は、 RST Website からダウンロードすることができます。
docutils のインストールには easy_install docutils を使用してください。 Trac が docutils パッケージを探すことが出来ない可能性があるので、 (apt-get install python-docutils などの) OS のパッケージマネージャは使わないでください。(訳注: docutils が提供している setup.py では setuptools を使用していないため、 OS のパッケージでは docutils-*.egg-info が作成されない場合があることを指しています。 egg-info さえ作成されていれば OS のパッケージマネージャを使用しても問題ないと思われます。)
さらなる RST に関する情報
- reStructuredText Web サイト -- http://docutils.sourceforge.net/rst.html
- RST クイックリファレンス -- http://docutils.sourceforge.net/docs/rst/quickref.html
RST を Trac で使用する
テキストブロックが RST でパースされるようにするには、 rst プロセッサを使用してください。
reStructuredText における TracLinks
- Trac は RST テキストの中で TracLinks が可能になる、 RST のディレクティブ 'trac' を提供しています
Wiki マークアップ | 表示 |
---|---|
{{{ #!rst これは |チケット| へのリンクです。 .. |チケット| trac:: #42 }}} | これは |チケット| へのリンクです。 .. |チケット| trac:: #42 |
- Trac は RST で TracLinks を簡単に作成できるように、 :trac: というロールを予約しています
Wiki マークアップ | 表示 |
---|---|
{{{ #!rst これはチケット `#12`:trac: へのリンクです。 Trac の使い方を学ぶためには、 `TracGuide`:trac: を参照して下さい。 }}} | これはチケット `#12`:trac: へのリンクです。 Trac の使い方を学ぶためには、 `TracGuide`:trac: を参照して下さい。 |
:trac: ロールのすべての使用例の一覧は、 WikiRestructuredTextLinks を見てください。
reStructuredText におけるシンタックスハイライト
同様に、 RST において TracSyntaxColoring を行なうディレクティブがあります。 ディレクティブは code-block と呼ばれます。
Wiki マークアップ | 表示 |
---|---|
{{{ #!rst .. code-block:: python class Test: def TestFunction(self): pass }}} | .. code-block:: python class Test: def TestFunction(self): pass |
.. code-block ディレクティブの後のコードは少なくとも1文字インデントする必要があります。
reStructuredText の中における Wiki Macros
Wiki マクロ を RST の中で使用するには、 code-block のようなシンタックスハイライトと同様のディレクティブを使用します。
Wiki マークアップ | 表示 |
---|---|
{{{ #!rst .. code-block:: RecentChanges Trac,3 }}} | .. code-block:: RecentChanges Trac,3 |
:code-block: を使って、より簡素な構文でも Wiki マクロを利用できます:
Wiki マークアップ | 表示 |
---|---|
{{{ #!rst :code-block:`RecentChanges:Trac,3` }}} | :code-block:`RecentChanges:Trac,3` |
より大きい RST の例
この例のように書くと、とても分かりやすくなります:
Wiki マークアップ | 表示 |
---|---|
{{{ #!rst ほげほげヘッダ ============== reStructuredText は **素敵** 。この続きは webpage_ で。 表: == == ====== 入力 出力 ------ ------ A B A or B == == ====== 偽 偽 偽 真 偽 真 偽 真 真 真 真 真 == == ====== RST での TracLinks ------------------ チケット `[trac:#42]`:trac: のように使用します。 .. _webpage: http://docutils.sourceforge.net/rst.html }}} | ほげほげヘッダ ============== reStructuredText は **素敵** 。この続きは webpage_ で。 表: == == ====== 入力 出力 ------ ------ A B A or B == == ====== 偽 偽 偽 真 偽 真 偽 真 真 真 真 真 == == ====== RST での TracLinks ------------------ チケット `[trac:#42]`:trac: のように使用します。 .. _webpage: http://docutils.sourceforge.net/rst.html |
訳注: 日本語でテーブルを作成する場合、 Python-2.4 以降かつ docutils-0.4 以降でない場合は、 docutils に日本語テーブルパッチを適用する必要があります。
See also: WikiRestructuredTextLinks, WikiProcessors, WikiFormatting