= Trac での reStructuredText 対応 = #reStructuredTextSupportinTrac

Trac は WikiFormatting を使用できるすべての箇所で、 Wiki マークアップの代わりに ''reStructuredText'' を使用することができます。

reStructuredText の Web ページより:
 "''reStructuredText は読みやすく、 WYSIWYG なプレーンテキストへのマークアップ文法と、そのパーサシステムです。 (Python の docstring のような) プログラムへのインラインドキュメンテーションや、シンプルな Web ページの素早い作成、スタンドアロンのドキュメントの記述に役立ちます。 reStructuredText は個別のアプリケーション向けに拡張ができるように設計されています。''"

Subversion リポジトリのファイルを reStructuredText として Trac のソースブラウザに表示したい場合、 Subversion の `svn:mime-type` 属性に `text/x-rst` を設定してください。 [http://trac.edgewall.org/browser/trunk/INSTALL この例] が参考になります。

=== 必須条件 === #Requirements
Trac で RST を使うためには、 Python の docutils パッケージがインストールされていなければなりません。
あなたのオペレーティングシステムでまだ使用できない場合は、 [http://docutils.sourceforge.net/rst.html 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 に関する情報 === #MoreinformationonRST

 * reStructuredText  Web サイト -- http://docutils.sourceforge.net/rst.html
 * RST クイックリファレンス -- http://docutils.sourceforge.net/docs/rst/quickref.html

----

== RST を Trac で使用する == #UsingRSTinTrac
テキストブロックが RST でパースされるようにするには、 ''rst'' プロセッサを使用してください。

=== reStructuredText における TracLinks === #TracLinksinreStructuredText

 * Trac は RST テキストの中で TracLinks が可能になる、 RST のディレクティブ 'trac' を提供しています。
   ||= Wiki マークアップ ||= 表示 ||
   {{{#!td
     {{{
     {{{
     #!rst
     これは |チケット| へのリンクです。

     .. |チケット| trac:: #42
     }}}
     }}}
   }}}
   {{{#!td
     {{{
     #!rst
     これは |チケット| へのリンクです。

     .. |チケット| trac:: #42
     }}}
   }}}

 * Trac は RST で TracLinks を簡単に作成できるように、 `:trac:` というロールを予約しています。
   ||= Wiki マークアップ ||= 表示 ||
   {{{#!td
     {{{
     {{{
     #!rst
     これはチケット `#12`:trac: へのリンクです。

     Trac の使い方を学ぶためには、 `TracGuide`:trac: を参照して下さい。
     }}}
     }}}
   }}}
   {{{#!td
     {{{
     #!rst
     これはチケット `#12`:trac: へのリンクです。

     Trac の使い方を学ぶためには、 `TracGuide`:trac: を参照して下さい。
     }}}
   }}}

 `:trac:` ロールのすべての使用例の一覧は、 WikiRestructuredTextLinks を見てください。


=== reStructuredText におけるシンタックスハイライト === #SyntaxhighlightinginreStructuredText

同様に、 RST において TracSyntaxColoring を行なうディレクティブがあります。
ディレクティブは code-block と呼ばれます。

||= Wiki マークアップ ||= 表示 ||
{{{#!td
  {{{
  {{{
  #!rst

  .. code-block:: python

     class Test:

         def TestFunction(self):
             pass
  
  }}}
  }}}
}}}
{{{#!td
  {{{
  #!rst

  .. code-block:: python

     class Test:

         def TestFunction(self):
             pass

  }}}
}}}
`.. code-block` ディレクティブの後のコードは少なくとも1文字インデントする必要があります。

=== reStructuredText の中における Wiki Macros === #WikiMacrosinreStructuredText

[WikiMacros Wiki マクロ] を RST の中で使用するには、 code-block のようなシンタックスハイライトと同様のディレクティブを使用します。

||= Wiki マークアップ ||= 表示 ||
{{{#!td
  {{{
  {{{
  #!rst

  .. code-block:: RecentChanges

     Trac,3

  }}}
  }}}
}}}
{{{#!td
  {{{
  #!rst

  .. code-block:: RecentChanges

     Trac,3

  }}}
}}}

 `:code-block:` を使って、より簡素な構文でも Wiki マクロを利用できます:

||= Wiki マークアップ ||= 表示 ||
{{{#!td
  {{{
  {{{
  #!rst

  :code-block:`RecentChanges:Trac,3`
  }}}
  }}}
}}}
{{{#!td
  {{{
  #!rst

  :code-block:`RecentChanges:Trac,3`
  }}}
}}}

=== より大きい RST の例 === #BiggerRSTExample
この例のように書くと、とても分かりやすくなります:

||= Wiki マークアップ ||= 表示 ||
{{{#!td
{{{
#!html
<pre class="wiki">{{{
#!rst
ほげほげヘッダ
==============
reStructuredText は **素敵** 。この続きは webpage_ で。

表:

==  ==  ======
 入力    出力
------  ------
A   B   A or B
==  ==  ======
偽  偽    偽
真  偽    真
偽  真    真
真  真    真
==  ==  ======

RST での TracLinks
------------------

チケット `[http://trac.edgewall.org/ticket/42 #42]`:trac: のように使用します。

.. _webpage: http://docutils.sourceforge.net/rst.html
}}}</pre>
}}}
}}}
{{{#!td
{{{
#!rst
ほげほげヘッダ
==============
reStructuredText は **素敵** 。この続きは webpage_ で。

表:

==  ==  ======
 入力    出力
------  ------
A   B   A or B
==  ==  ======
偽  偽    偽
真  偽    真
偽  真    真
真  真    真
==  ==  ======

RST での TracLinks
------------------

チケット `[http://trac.edgewall.org/ticket/42 #42]`:trac: のように使用します。

.. _webpage: http://docutils.sourceforge.net/rst.html
}}}
}}}

'''訳注: 日本語でテーブルを作成する場合、 Python-2.4 以降かつ docutils-0.4 以降でない場合は、 docutils に日本語テーブルパッチを適用する必要があります。'''

----
See also: WikiRestructuredTextLinks, WikiProcessors, WikiFormatting
