Changes between Version 6 and Version 7 of WikiRestructuredText


Ignore:
Timestamp:
03/07/18 16:17:30 (15 months ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiRestructuredText

    v6 v7  
    1 = reStructuredText Support in Trac =
    2 
    3 Trac supports using ''reStructuredText'' (RST) as an alternative to wiki markup in any context WikiFormatting is used.
     1= reStructuredText Support in Trac
     2
     3== Introduction
     4
     5
     6Trac supports [http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html reStructuredText (RST)] as an alternative to wiki markup where WikiFormatting is used.
    47
    58From the reStucturedText webpage:
    6  "''reStructuredText is an easy-to-read, what-you-see-is-what-you-get plaintext markup syntax and parser   system. It is useful for in-line program documentation (such as Python docstrings), for quickly creating  simple web pages, and for standalone documents. reStructuredText is designed for extensibility for  specific application domains. ''"
    7 
    8 === Requirements ===
    9 Note that to activate RST support in Trac, the python docutils package must be installed.
    10 If not already available on your operating system, you can download it at the [http://docutils.sourceforge.net/rst.html RST Website].
    11 
    12 Install docutils using `easy_install docutils`. Do not use the package manager of your OS (e.g. `apt-get install python-docutils`), because Trac will not find docutils then.
    13 
    14 === More information on RST ===
    15 
    16  * reStructuredText Website -- http://docutils.sourceforge.net/rst.html
    17  * RST Quick Reference -- http://docutils.sourceforge.net/docs/rst/quickref.html
    18 
    19 ----
    20 
    21 == Using RST in Trac ==
     9 "reStructuredText is an easy-to-read, what-you-see-is-what-you-get plaintext markup syntax and parser system. It is useful for in-line program documentation (such as Python docstrings), for quickly creating simple web pages, and for standalone documents. reStructuredText is designed for extensibility for specific application domains."
     10
     11If you want a file from your Subversion repository to be displayed as reStructuredText in the Trac source browser, set `text/x-rst` as the value for the Subversion property `svn:mime-type`, or add the extension `rst` to the filename. See [trac:source:/trunk/INSTALL.rst this example].
     12
     13The examples will only be rendered as reStructuredText if docutils is installed. If Pygments is installed but docutils is not installed, the examples will be syntax-highlighted rather than rendered as reStructuredText.
     14
     15=== Requirements
     16
     17To activate RST support in Trac, install the python docutils package with the command `easy_install docutils`, or through your operating system package manager. If not already available on your operating system, you can download it from [https://pypi.python.org/pypi/docutils PyPI].
     18
     19=== More information on RST
     20
     21 * [http://docutils.sourceforge.net/rst.html reStructuredText Website]
     22 * [http://docutils.sourceforge.net/docs/rst/quickref.html RST Quick Reference]
     23
     24== Using RST in Trac
     25
    2226To specify that a block of text should be parsed using RST, use the ''rst'' processor.
    2327
    24 === TracLinks in reStructuredText ===
     28=== TracLinks in reStructuredText
    2529
    2630 * Trac provides a custom RST directive `trac::` to allow TracLinks from within RST text.
    27 
    28  Example:
    29  {{{
    30  {{{
    31  #!rst
    32  This is a reference to |a ticket|
    33 
    34  .. |a ticket| trac:: #42
    35  
    36 }}}
    37  
    38 }}}
    39 
    40  * Trac allows an even easier way of creating TracLinks in RST, using the custom `:trac:` role.
    41 
    42  Example:
    43  {{{
    44  {{{
    45  #!rst
    46  This is a reference to ticket `#12`:trac:
    47 
    48  To learn how to use Trac, see `TracGuide`:trac:
    49  
    50 }}}
    51  
    52 }}}
    53 
    54  For a complete example of all uses of the `:trac:` role, please see WikiRestructuredTextLinks.
    55 
    56 
    57 === Syntax highlighting in reStructuredText ===
    58 
    59 There is a directive for doing TracSyntaxColoring in RST as well. The directive is called
    60 code-block
    61 
    62 Example
    63 
    64 {{{
    65 {{{
    66 #!rst
    67 
    68 .. code-block:: python
    69 
    70  class Test:
    71 
    72     def TestFunction(self):
    73         pass
    74 
    75 }}}
    76 }}}
    77 
    78 Will result in the below.
    79 
    80 {{{
    81 #!rst
    82 
    83 .. code-block:: python
    84 
    85  class Test:
    86 
    87     def TestFunction(self):
    88         pass
    89 
    90 }}}
    91 
    92 === Wiki Macros in reStructuredText ===
    93 
    94 For doing [WikiMacros Wiki Macros] in RST you use the same directive as for syntax highlighting i.e
    95 code-block. To work you must use a version of trac that has [trac:ticket:801 #801] applied.
    96 
    97 === Wiki Macro Example ===
    98 
    99 {{{
    100 {{{
    101 #!rst
    102 
    103 .. code-block:: RecentChanges
    104 
    105    Trac,3
    106 
    107 }}}
    108 }}}
    109 
    110 Will result in the below:
    111 
    112      [[RecentChanges(Trac,3)]]
    113 
    114 Or a more concise Wiki Macro like syntax is also available:
    115 
    116 {{{
    117 {{{
    118 #!rst
    119 
    120 :code-block:`RecentChanges:Trac,3`
    121 }}}
    122 }}}
    123 
    124 === Bigger RST Example ===
    125 The example below should be mostly self-explanatory:
    126 {{{
    127 #!html
    128 <pre class="wiki">{{{
    129 #!rst
     31   ||= Wiki Markup ||= Display ||
     32   {{{#!td
     33     {{{
     34     {{{#!rst
     35     This is a reference to |a ticket|
     36
     37     .. |a ticket| trac:: #42
     38     }}}
     39     }}}
     40   }}}
     41   {{{#!td
     42     {{{#!rst
     43     This is a reference to |a ticket|
     44
     45     .. |a ticket| trac:: #42
     46     }}}
     47   }}}
     48
     49 * You can also use the custom `:trac:` role to create TracLinks in RST.
     50   ||= Wiki Markup ||= Display ||
     51   {{{#!td
     52     {{{
     53     {{{#!rst
     54     This is a reference to ticket `#12`:trac:
     55
     56     To learn how to use Trac, see `TracGuide`:trac:
     57     }}}
     58     }}}
     59   }}}
     60   {{{#!td
     61     {{{#!rst
     62     This is a reference to ticket `#12`:trac:
     63
     64     To learn how to use Trac, see `TracGuide`:trac:
     65     }}}
     66   }}}
     67
     68 For a complete example of all uses of the `:trac:` role, see WikiRestructuredTextLinks.
     69
     70=== Syntax highlighting in reStructuredText
     71
     72There is a directive for doing TracSyntaxColoring in RST as well. The directive is called code-block:
     73
     74||= Wiki Markup ||= Display ||
     75{{{#!td
     76  {{{
     77  {{{#!rst
     78
     79  .. code-block:: python
     80
     81     class Test:
     82
     83         def TestFunction(self):
     84             pass
     85 
     86  }}}
     87  }}}
     88}}}
     89{{{#!td
     90  {{{#!rst
     91
     92  .. code-block:: python
     93
     94     class Test:
     95
     96         def TestFunction(self):
     97             pass
     98
     99  }}}
     100}}}
     101Note the need to indent the code at least one character after the `.. code-block` directive.
     102
     103=== Wiki Macros in reStructuredText
     104
     105To enable [WikiMacros Wiki Macros] in RST, you use the same `code-block` directive as for syntax highlighting:
     106
     107||= Wiki Markup ||= Display ||
     108{{{#!td
     109  {{{
     110  {{{#!rst
     111
     112  .. code-block:: RecentChanges
     113
     114     Trac,3
     115
     116  }}}
     117  }}}
     118}}}
     119{{{#!td
     120  {{{#!rst
     121
     122  .. code-block:: RecentChanges
     123
     124     Trac,3
     125
     126  }}}
     127}}}
     128
     129Or use the `:code-block:` role for a more concise Wiki Macro-like syntax:
     130
     131||= Wiki Markup ||= Display ||
     132{{{#!td
     133  {{{
     134  {{{
     135  #!rst
     136
     137  :code-block:`RecentChanges:Trac,3`
     138  }}}
     139  }}}
     140}}}
     141{{{#!td
     142  {{{#!rst
     143
     144  :code-block:`RecentChanges:Trac,3`
     145  }}}
     146}}}
     147
     148=== Bigger RST Example
     149
     150The example below should be self-explanatory:
     151
     152||= Wiki Markup ||= Display ||
     153{{{#!td
     154{{{#!html
     155<pre class="wiki">{{{#!rst
    130156FooBar Header
    131157=============
     
    153179}}}</pre>
    154180}}}
    155 
    156 
    157 Results in:
    158 {{{
    159 #!rst
     181}}}
     182{{{#!td
     183{{{#!rst
    160184FooBar Header
    161185=============
     
    182206.. _webpage: http://docutils.sourceforge.net/rst.html
    183207}}}
    184 
     208}}}
    185209
    186210----
    187211See also: WikiRestructuredTextLinks, WikiProcessors, WikiFormatting
    188