Wiki Formatting

Wiki markup is a core feature in Trac, tightly integrating all the other parts of Trac into flexible and powerful whole.

Trac 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 especially ​MoinWiki.

This page demonstrates the formatting syntax available anywhere WikiFormatting is allowed.

Font styles

The Trac wiki support the following font styles: bold, italic, underline and strike-through.

The Trac wiki support the following font styles: '''bold''', ''italic'',

__underline__ and ~~strike-through~~.

Heading

You can create heading by starting a line with one up to five equal
'=' characters followed by a single space and the headline text. The line should end with a space followed by the same number of
equal characters.

Note: As of writing, headings cannot contain TracLinks.

Example:

= Heading =

== Subheading ==

Paragraphs

A new text paragraph is created whenever two blocks of text are separated by one or more empty lines.

A forced line break can also be inserted, using:

Line 1[[BR]]Line 2

Display:

Line 1
Line 2

Text paragraphs can be indented by starting the lines with two or more spaces.

Lists

The wiki supports both ordered/numbered and unordered lists.

Example:

 * Item 1

   * Item 1.1

 * Item 2



 1. Item 1

   1. Item 1.1

 1. Item 2

Display:

  • Item 1
    • Item 1.1
  • Item 2
  1. Item 1
    1. Item 1.1
  2. Item 2

Preformatted text

Block quotes, preformatted text, are suitable for source code snippets, notes and examples. Use three curly braces wrapped around the text to define a block quote: Example:

 {{{

  def HelloWorld()

      print "Hello World"

 }}}

Display:

 def HelloWorld()

     print "Hello World"

Tables

Simple tables can be created like this:

||Cell 1||Cell 2||Cell 3||

||Cell 4||Cell 5||Cell 6||

Display:

Cell 1Cell 2Cell 3
Cell 4Cell 5Cell 6

!Hyperlinks are automatically created for WikiPageNames and urls. WikiPageLinks can be disabled by prepending an exclamation mark (!) character, such as !WikiPageLink.

Examples:

TitleIndex, ​http://www.edgewall.com/.

Links can be given a more descriptive title by writing the link followed by a space and a title and all this inside two square brackets. Like this:

 * [http://www.edgewall.com/ Edgewall Software]

 * [wiki:TitleIndex Title Index]

Display:

Wiki 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 notation:

  • Tickets: #1 or ticket:1
  • Reports: !{1} or report:1
  • Changesets: ![1] or changeset:1
  • Wiki pages: CamelCase or wiki:CamelCase
  • Milestones: milestone:1.0
  • Files: source:trunk/COPYING
  • A specific file revision: source:/trunk/COPYING#200

Display:

  • Tickets: #1 or ticket:1
  • Reports: {1} or report:1
  • Changesets: [1] or changeset:1
  • Wiki pages: CamelCase or wiki:CamelCase
  • Milestones: milestone:1.0
  • Files: source:trunk/COPYING
  • A specific file revision: source:/trunk/COPYING#200

See TracLinks for more in-depth information.

Escaping Links and WikiNames

You may avoid making hyperlinks out of TracLinks by preceding an expression with a single '!' (exclamation mark).

 !NoHyperLink

 !#42 is not a link

Display:

NoHyperLink #42 is not a link

Images

Urls ending with .png, .gif or .jpg are automatically interpreted as image links, and converted to IMG tags.

Example:

http://www.edgewall.com/gfx/trac_example_image.png

Display:

​http://www.edgewall.com/gfx/trac_example_image.png

Macros

Macros are custom functions to insert dynamic content in a page. See WikiMacros for usage.

Example:

 [[Timestamp]]

Display:

Timestamp

Processors

Trac supports alternative markup formats using WikiProcessors. For example, processors are used to write pages in reStructuredText or HTML.

See WikiProcessors for more information.

Example 1:

{{{

#!html

<h1 style="text-align: right; color: blue">HTML Test</h1>

}}}

Display:

HTML Test

Example 2:

{{{

#!python

class Test:

    def __init__(self):

        print "Hello World"

if __name__ == '__main__':

   Test()

}}}

Display:

class Test:

    def __init__(self):

        print "Hello World"

if __name__ == '__main__':

   Test()

Miscellaneous

Four or more dashes will be replaced by a horizontal line (<HR>)

 ----

Display:



See also: TracLinks, TracGuide, WikiHtml, WikiMacros, WikiProcessors, TracSyntaxColoring.