Navigation


Changes between Initial Version and Version 1 of WikiFormatting


Ignore:
Timestamp:
Jun 9, 2010, 3:43:56 PM (14 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiFormatting

    v1 v1  
     1= WikiFormatting =
     2[[TracGuideToc]]
     3
     4Wiki markup is a core feature in Trac, tightly integrating all the other parts of Trac into a flexible and powerful whole.
     5
     6Trac has a built in small and powerful wiki rendering engine. This wiki engine implements an ever growing subset of the commands from other popular Wikis,
     7especially [http://moinmoin.wikiwikiweb.de/ MoinMoin].
     8
     9
     10This page demonstrates the formatting syntax available anywhere WikiFormatting is allowed.
     11
     12
     13== Font Styles ==
     14
     15The Trac wiki supports the following font styles:
     16{{{
     17 * '''bold''', '''!''' can be bold too''', and '''! '''
     18 * ''italic''
     19 * '''''bold italic'''''
     20 * __underline__
     21 * {{{monospace}}} or `monospace`
     22 * ~~strike-through~~
     23 * ^superscript^
     24 * ,,subscript,,
     25}}}
     26
     27Display:
     28 * '''bold''', '''!''' can be bold too''', and '''! '''
     29 * ''italic''
     30 * '''''bold italic'''''
     31 * __underline__
     32 * {{{monospace}}} or `monospace`
     33 * ~~strike-through~~
     34 * ^superscript^
     35 * ,,subscript,,
     36
     37Notes:
     38 * `{{{...}}}` and {{{`...`}}} commands not only select a monospace font, but also treat their content as verbatim text, meaning that no further wiki processing is done on this text.
     39 * {{{ ! }}} tells wiki parser to not take the following characters as wiki format, so pay attention to put a space after !, e.g. when ending bold.
     40
     41== Headings ==
     42
     43You can create heading by starting a line with one up to five ''equal'' characters ("=")
     44followed by a single space and the headline text. The line should end with a space
     45followed by the same number of ''='' characters.
     46The heading might optionally be followed by an explicit id. If not, an implicit but nevertheless readable id will be generated.
     47
     48Example:
     49{{{
     50= Heading =
     51== Subheading ==
     52=== About ''this'' ===
     53=== Explicit id === #using-explicit-id-in-heading
     54}}}
     55
     56Display:
     57= Heading =
     58== Subheading ==
     59=== About ''this'' ===
     60=== Explicit id === #using-explicit-id-in-heading
     61
     62== Paragraphs ==
     63
     64A new text paragraph is created whenever two blocks of text are separated by one or more empty lines.
     65
     66A forced line break can also be inserted, using:
     67{{{
     68Line 1[[BR]]Line 2
     69}}}
     70Display:
     71
     72Line 1[[BR]]Line 2
     73
     74
     75== Lists ==
     76
     77The wiki supports both ordered/numbered and unordered lists.
     78
     79Example:
     80{{{
     81 * Item 1
     82   * Item 1.1
     83      * Item 1.1.1   
     84      * Item 1.1.2
     85      * Item 1.1.3
     86   * Item 1.2
     87 * Item 2
     88
     89 1. Item 1
     90   a. Item 1.a
     91   a. Item 1.b
     92      i. Item 1.b.i
     93      i. Item 1.b.ii
     94 1. Item 2
     95And numbered lists can also be given an explicit number:
     96 3. Item 3
     97}}}
     98
     99Display:
     100 * Item 1
     101   * Item 1.1
     102      * Item 1.1.1
     103      * Item 1.1.2
     104      * Item 1.1.3
     105   * Item 1.2
     106 * Item 2
     107
     108 1. Item 1
     109   a. Item 1.a
     110   a. Item 1.b
     111      i. Item 1.b.i
     112      i. Item 1.b.ii
     113 1. Item 2
     114And numbered lists can also be given an explicit number:
     115 3. Item 3
     116
     117Note that there must be one or more spaces preceding the list item markers, otherwise the list will be treated as a normal paragraph.
     118
     119
     120== Definition Lists ==
     121
     122
     123The wiki also supports definition lists.
     124
     125Example:
     126{{{
     127 llama::
     128   some kind of mammal, with hair
     129 ppython::
     130   some kind of reptile, without hair
     131   (can you spot the typo?)
     132}}}
     133
     134Display:
     135 llama::
     136   some kind of mammal, with hair
     137 ppython::
     138   some kind of reptile, without hair
     139   (can you spot the typo?)
     140
     141Note that you need a space in front of the defined term.
     142
     143
     144== Preformatted Text ==
     145
     146Block containing preformatted text are suitable for source code snippets, notes and examples. Use three ''curly braces'' wrapped around the text to define a block quote. The curly braces need to be on a separate line.
     147 
     148Example:
     149{{{
     150 {{{
     151  def HelloWorld():
     152      print "Hello World"
     153 }}}
     154}}}
     155
     156Display:
     157{{{
     158 def HelloWorld():
     159     print "Hello World"
     160}}}
     161
     162
     163== Blockquotes ==
     164
     165In order to mark a paragraph as blockquote, indent that paragraph with two spaces.
     166
     167Example:
     168{{{
     169  This text is a quote from someone else.
     170}}}
     171
     172Display:
     173  This text is a quote from someone else.
     174
     175== Discussion Citations ==
     176
     177To delineate a citation in an ongoing discussion thread, such as the ticket comment area, e-mail-like citation marks (">", ">>", etc.) may be used. 
     178
     179Example:
     180{{{
     181>> Someone's original text
     182> Someone else's reply text
     183My reply text
     184}}}
     185
     186Display:
     187>> Someone's original text
     188> Someone else's reply text
     189My reply text
     190
     191''Note: Some WikiFormatting elements, such as lists and preformatted text, are  lost in the citation area.  Some reformatting may be necessary to create a clear citation.''
     192
     193== Tables ==
     194
     195Simple tables can be created like this:
     196{{{
     197||Cell 1||Cell 2||Cell 3||
     198||Cell 4||Cell 5||Cell 6||
     199}}}
     200
     201Display:
     202||Cell 1||Cell 2||Cell 3||
     203||Cell 4||Cell 5||Cell 6||
     204
     205Note that more complex tables can be created using
     206[wiki:WikiRestructuredText#BiggerReSTExample reStructuredText].
     207
     208
     209== Links ==
     210
     211Hyperlinks are automatically created for WikiPageNames and URLs. !WikiPageLinks can be disabled by prepending an exclamation mark "!" character, such as {{{!WikiPageLink}}}.
     212
     213Example:
     214{{{
     215 TitleIndex, http://www.edgewall.com/, !NotAlink
     216}}}
     217
     218Display:
     219 TitleIndex, http://www.edgewall.com/, !NotAlink
     220
     221Links can be given a more descriptive title by writing the link followed by a space and a title and all this inside square brackets.  If the descriptive title is omitted, then the explicit prefix is discarded, unless the link is an external link. This can be useful for wiki pages not adhering to the WikiPageNames convention.
     222
     223Example:
     224{{{
     225 * [http://www.edgewall.com/ Edgewall Software]
     226 * [wiki:TitleIndex Title Index]
     227 * [wiki:ISO9000]
     228}}}
     229
     230Display:
     231 * [http://www.edgewall.com/ Edgewall Software]
     232 * [wiki:TitleIndex Title Index]
     233 * [wiki:ISO9000]
     234
     235== Trac Links ==
     236
     237Wiki pages can link directly to other parts of the Trac system. Pages can refer to tickets, reports, changesets, milestones, source files and other Wiki pages using the following notations:
     238{{{
     239 * Tickets: #1 or ticket:1
     240 * Reports: {1} or report:1
     241 * Changesets: r1, [1] or changeset:1
     242 * ...
     243}}}
     244
     245Display:
     246 * Tickets: #1 or ticket:1
     247 * Reports: {1} or report:1
     248 * Changesets: r1, [1] or changeset:1
     249 * ...
     250
     251There are many more flavors of Trac links, see TracLinks for more in-depth information.
     252
     253
     254== Escaping Links and WikiPageNames ==
     255
     256You may avoid making hyperlinks out of TracLinks by preceding an expression with a single "!" (exclamation mark).
     257
     258Example:
     259{{{
     260 !NoHyperLink
     261 !#42 is not a link
     262}}}
     263
     264Display:
     265 !NoHyperLink
     266 !#42 is not a link
     267
     268
     269== Images ==
     270
     271Urls ending with `.png`, `.gif` or `.jpg` are no longer automatically interpreted as image links, and converted to `<img>` tags.
     272
     273You now have to use the ![[Image]] macro. The simplest way to include an image is to upload it as attachment to the current page, and put the filename in a macro call like `[[Image(picture.gif)]]`.
     274
     275In addition to the current page, it is possible to refer to other resources:
     276 * `[[Image(wiki:WikiFormatting:picture.gif)]]` (referring to attachment on another page)
     277 * `[[Image(ticket:1:picture.gif)]]` (file attached to a ticket)
     278 * `[[Image(htdocs:picture.gif)]]` (referring to a file inside project htdocs)
     279 * `[[Image(source:/trunk/trac/htdocs/trac_logo_mini.png)]]` (a file in repository)
     280
     281Example display: [[Image(htdocs:../common/trac_logo_mini.png)]]
     282
     283See WikiMacros for further documentation on the `[[Image()]]` macro.
     284
     285
     286== Macros ==
     287
     288Macros are ''custom functions'' to insert dynamic content in a page.
     289
     290Example:
     291{{{
     292 [[RecentChanges(Trac,3)]]
     293}}}
     294
     295Display:
     296 [[RecentChanges(Trac,3)]]
     297
     298See WikiMacros for more information, and a list of installed macros.
     299
     300
     301== Processors ==
     302
     303Trac supports alternative markup formats using WikiProcessors. For example, processors are used to write pages in
     304[wiki:WikiRestructuredText reStructuredText] or [wiki:WikiHtml HTML].
     305
     306Example 1:
     307{{{
     308#!html
     309<pre class="wiki">{{{
     310#!html
     311&lt;h1 style="text-align: right; color: blue"&gt;HTML Test&lt;/h1&gt;
     312}}}</pre>
     313}}}
     314
     315Display:
     316{{{
     317#!html
     318<h1 style="text-align: right; color: blue">HTML Test</h1>
     319}}}
     320
     321Example:
     322{{{
     323#!html
     324<pre class="wiki">{{{
     325#!python
     326class Test:
     327
     328    def __init__(self):
     329        print "Hello World"
     330if __name__ == '__main__':
     331   Test()
     332}}}</pre>
     333}}}
     334
     335Display:
     336{{{
     337#!python
     338class Test:
     339    def __init__(self):
     340        print "Hello World"
     341if __name__ == '__main__':
     342   Test()
     343}}}
     344
     345Perl:
     346{{{
     347#!perl
     348my ($test) = 0;
     349if ($test > 0) {
     350    print "hello";
     351}
     352}}}
     353
     354See WikiProcessors for more information.
     355
     356
     357== Comments ==
     358
     359Comments can be added to the plain text. These will not be rendered and will not display in any other format than plain text.
     360{{{
     361{{{
     362#!comment
     363Your comment here
     364}}}
     365}}}
     366
     367
     368== Miscellaneous ==
     369
     370Four or more dashes will be replaced by a horizontal line (<HR>)
     371
     372Example:
     373{{{
     374 ----
     375}}}
     376
     377Display:
     378----
     379
     380
     381
     382----
     383See also: TracLinks, TracGuide, WikiHtml, WikiMacros, WikiProcessors, TracSyntaxColoring.