Edgewall Software

Version 5 (modified by Steffen Hoffmann, 13 years ago) ( diff )

next edit of cheat sheet and related content: definition lists, preformatted text, blockquotes, discussion citations

basiert auf Version 108 von WikiFormatting, in weiteren Sprachen verfügbar: Russisch

WikiFormatting

Wiki-Formatierung ist eine von Trac's wesentlichen Funktionen, die alle anderen Teile von Trac zu einem anpassungs- und leistungsfähigen Ganzen verbindet.

Trac hat einen schlanken integrierten Wiki-Prozessor. Dieser Wiki-Prozessor stellt eine ständig wachsende Anzahl von Anweisungen anderer bekannter Wikis bereit, insbesondere von MoinMoin und WikiCreole.

Diese Seite stellt die Formatierungssyntax detailliert dar, die überall verfügbar ist, wo Wiki-Formatierung eingesetzt werden kann.

Die folgende Referenzseite gibt einen groben Überblick über die gebräuchlichste Syntax. Jeder Verweis in der Spalte Kategorie führt zu einer ausführlicheren Beschreibung weiter unten auf dieser Seite.

Einige andere Wikiseiten stellen weiterführende Eigenschaften der Wiki-Formatierung von Trac noch genauer dar:

  • TracLinks behandelt alle möglichen Arten, präzise auf jedes Trac-Dokument oder Teile davon zu verweisen,
  • WikiPageNames bespricht die verschiedenen Namen, die Wikiseiten erhalten können, mit oder ohne CamelCase-Form
  • WikiMacros listet die zur Erstellung von dynamischen Inhalten verfügbaren Macros auf,
  • WikiProcessors und WikiHtml präzisieren, wie Teile des Wikitextes auf besondere Art und Weise behandelt werden können

Cheat sheet

Kategorie Wiki-Formatierung Darstellung

Schriftarten

'''fett''', ''kursiv'', '''''Wikipedia-Stil''''' fett, kursiv, Wikipedia-Stil
`einheitlich breit und ''nicht-Wiki''` einheitlich breit und ''nicht-Wiki''
**fett**, //kursiv//, **//!WikiCreole-Stil//** fett, kursiv, WikiCreole-Stil
Überschriften
== 2. Grad ==
=== 3. Grad ^([#hn Hinweis])^

2. Grad

3. Grad (Hinweis)

Absätze
Erster Absatz
auf mehreren Zeilen.

Zweiter Absatz.

Erster Absatz auf mehreren Zeilen.

Zweiter Absatz.

Listen
* Aufzählungsliste
  verteilt über mehrere Zeilen
  1. eingebettete Liste
    a. abweichender Stil
       der Nummerierung
  • Aufzählungsliste verteilt über mehrere Zeilen
    1. eingebettete Liste
      1. abweichender Stil der Nummerierung

Definitionslisten

 Begriff:: mehrzeilige
           Definition
Begriff
mehrzeilige Definition
Vorformatierter Text
{{{
mehrere Zeilen, ''nicht-Wiki''
      berücksichtigt Leerzeichen
}}}
mehrere Zeilen, ''nicht-Wiki''
      berücksichtigt Leerzeichen
Zitat-Block
  bei vorangestellten Leerzeichen
  wird der Text eingerückt

bei vorangestellten Leerzeichen wird der Text eingerückt

Diskussionszitate
>> ... (Ich sagte)
> (er antwortete)

… (Ich sagte)

(er antwortete)

Tables
||= Table Header =|| Cell ||
||||  (details below)  ||
Table Header Cell
(details below)

Links

http://trac.edgewall.org http://trac.edgewall.org
WikiFormatting (CamelCase) WikiFormatting (CamelCase)

TracLinks

wiki:WikiFormatting, wiki:"WikiFormatting" wiki:WikiFormatting, wiki:"WikiFormatting"
#1 (ticket), [1] (changeset), {1} (report) #1 (ticket), [1] (changeset), {1} (report)
ticket:1, ticket:1#comment:1 ticket:1, ticket:1#comment:1
Ticket [ticket:1], [ticket:1 ticket one] Ticket 1, ticket one
Ticket [[ticket:1]], [[ticket:1|ticket one]] Ticket 1, ticket one

Setting Anchors

[=#point1 (1)] First... (1) First…
see [#point1 (1)] see (1)

Escaping Markup

!'' doubled quotes '' doubled quotes
!wiki:WikiFormatting, !WikiFormatting wiki:WikiFormatting, WikiFormatting
{{{-}}} curly brackets - curly brackets
Images [[Image(link)]] trac_logo_mini.png

Macros

[[MacroList(*)]] (short list of all available macros)
[[Image?]] (help for the Image macro)
Processors
{{{
#!div style="font-size: 80%"
Code highlighting:
  {{{#!python
  hello = lambda: "world"
  }}}
}}}

Code highlighting:

hello = lambda: "world"
Comments
{{{#!comment
Note to Editors: ...
}}}
Miscellaneous
Line [[br]] break 
Line \\ break
----

Line
break Line
break


Schriftarten

Das Trac-Wiki erlaubt die folgenden Schriftarten:

Wiki-Formatierung Darstellung
 * '''fett''', 
   ''' drei Anführungszeichen !''' 
   können mit vorangestelltem ! ebenfalls fett dargestellt werden ''', 
 * ''kursiv''
 * '''''fett kursiv''''' oder ''kursiv und
   ''' kursiv fett ''' ''
 * __unterstrichen__
 * {{{gleichmäßig breit}}} oder `gleichmäßig breit`
   (daher `{{{` oder {{{`}}} Auskommentierung)
 * ~~durchgestrichen~~
 * ^hochgestellt^ 
 * ,,tiefgestellt,,
 * **auch fett**, //ebenso kursiv//, 
   und **'' fett kursiv **'' //(seit 0.12)//
  • fett, drei Anführungszeichen ''' können mit vorangestelltem ! ebenfalls fett dargestellt werden ,
  • kursiv
  • fett kursiv oder kursiv und kursiv fett
  • unterstrichen
  • gleichmäßig breit oder gleichmäßig breit (daher {{{ oder ` Auskommentierung)
  • durchgestrichen
  • hochgestellt
  • tiefgestellt
  • auch fett, ebenso kursiv, und fett kursiv (seit 0.12)

Anmerkungen:

  • {{{...}}} und `...` Anweisungen wählen nicht nur eine gleichmäßig breite Schrift, sie behandeln ihren Inhalt auch als Klartext, d.h. dieser Text wird nicht weiter behandelt.
  • ! weist den Wiki-Übersetzer an, die nachfolgenden Zeichen nicht als Wiki-Formatierung auszuwerten. Denken Sie deshalb daran, nach ! ein Leerzeichen zu setzen, z.B. wenn Sie mit Fettschrift enden.
  • Alle Schriftstil-Marken müssen als öffnende/abschließende Paare gesetzt werden, und sie müssen korrekt verschachtelt werden (insbesondere kann ein '' kursiv nicht mit einem // kursiv kombiniert werden, und ''' nicht mit **).

Überschriften

Sie können Überschriften erstellen, indem Sie eine Zeile mit einem bis sechs Gleichheitszeichen beginnen ("="), gefolgt von einem einzelnen Leerzeichen und dem Titelzeilentext.

Dem Titelzeilentext kann die gleiche Anzahl an "="-Zeichen folgen, aber dies ist nicht mehr zwingend erforderlich.

Schließlich kann der Überschrift eine vorgegebene ID folgen. Ohne Vorgabe wird trotzdem eine lesbare ID erzeugt.

Wiki-Formatierung Darstellung
= Hauptüberschrift =
== Überschift 2. Grades
=== Über ''diese Thema'' ===
=== Vorgegebene ID === #Nutzung-vorgegebenen-IDs-in-Überschriften
== Überschift 2. Grades #Überschrift2

Hauptüberschrift

Überschift 2. Grades

Über diese Thema

Vorgegebene ID

Überschift 2. Grades

Absätze

Immer dann, wenn zwei Textblöcke durch eine oder mehrere Leerzeilen getrennt sind, wird ein neuer Textabsatz erzeugt.

Ein erzwungener Zeilenumbruch kann ebenfalls wie folgend eingefügt werden:

Wiki-Formatierung Darstellung
Zeile 1[[BR]]Zeile 2
Absatz
eins

Absatz 
zwei

Zeile 1
Zeile 2

Absatz eins

Absatz zwei

Listen

Das Wiki unterstützt sowohl einfache als auch geordnete/nummerierte Listen.

Beispiel:

Wiki-Formatierung Darstellung
 * Element 1
   * Element 1.1
      * Element 1.1.1   
      * Element 1.1.2
      * Element 1.1.3
   * Element 1.2
 * Element 2
- Elemente können am Anfang einer Zeile beginnen
  und mehrere Zeilen umfassen
  - Achten Sie sorgfältig auf passende Einrückung
  der Fortsetzung in der nächsten Zeile,
weil ansonsten ein neuer Absatz erzeugt wird ...

 1. Element 1
   a. Element 1.a
   a. Element 1.b
      i. Element 1.b.i
      i. Element 1.b.ii
 1. Element 2
Nummerierte Listen können auch
mit einer vorgegebenen Nummer weitergeführt werden:
 3. Element 3
  • Element 1
    • Element 1.1
      • Element 1.1.1
      • Element 1.1.2
      • Element 1.1.3
    • Element 1.2
  • Element 2
  • Elemente können am Anfang einer Zeile beginnen und mehrere Zeilen umfassen
    • Achten Sie sorgfältig auf passende Einrückung der Fortsetzung in der nächsten Zeile,

weil ansonsten ein neuer Absatz erzeugt wird …

  1. Element 1
    1. Element 1.a
    2. Element 1.b
      1. Element 1.b.i
      2. Element 1.b.ii
  2. Element 2

Nummerierte Listen können auch mit einer vorgegebenen Nummer weitergeführt werden:

  1. Element 3

Definitionslisten

Das Wiki erlaubt außerdem Definitionslisten.

Wiki-Formatierung Darstellung
 llama::
   eine Säugetierart, mit Haaren
 ppython::
   eine Reptilienart, ohne Haar
   (Schreibfehler gefunden?)
llama
eine Säugetierart, mit Haaren
ppython
eine Reptilienart, ohne Haar (Schreibfehler gefunden?)

Beachten Sie, dass ein Leerzeichen vor dem zu definierenden Begriff erforderlich ist.

Vorformatierter Text

Textböcke mit vorformatiertem Text eignen sich für Teile von Programmcode, Anmerkungen und Beispiele. Setzen Sie den Text in drei geschweifte Klammern, um einen Zitat-Block (engl.: block quote) einzuleiten. Die geschweiften Klammern müssen auf einer eigenen Zeile stehen.

Wiki-Formatierung Darstellung
{{{
def HelloWorld():
    print '''Hello World'''
}}}
def HelloWorld():
    print '''Hello World'''

Beachten Sie, dass diese Art von Textblock auch dazu benutzt wird, Zeilen für die Bearbeitung durch Wiki-Prozessoren auszuwählen.

Zitat-Block

Rücken Sie den Absatz mit zwei Leerzeichen ein, um ihn als Zitat-Block zu markieren.

Wiki-Formatierung Darstellung
Absatz
  Dieser Text ist ein Zitat eines anderen.

Absatz

Dieser Text ist ein Zitat eines anderen.

Diskussionszitate

Um Zitate im Verlauf einer Diskussion, beispielsweise in den Ticketkommentaren, zu kennzeichnen, können Zitatmarken wie bei E-Mails (">", ">>", etc.) eingesetzt werden.

Wiki-Formatierung Darstellung
>> Jemandes ursprünglicher Text
> Antworttext eines anderen
>  - mit jeglicher Art von Wiki-Formatierung
Mein Antworttext

Jemandes ursprünglicher Text

Antworttext eines anderen

  • mit jeglicher Art von Wiki-Formatierung

Mein Antworttext

Tables

Simple Tables

Simple tables can be created like this:

Wiki Markup Display
||Cell 1||Cell 2||Cell 3||
||Cell 4||Cell 5||Cell 6||
Cell 1Cell 2Cell 3
Cell 4Cell 5Cell 6

Cell headings can be specified by wrapping the content in a pair of '=' characters. Note that the '=' characters have to stick to the cell separators, like this:

Wiki Markup Display
||        ||= stable =||= latest =||
||= 0.10 =||  0.10.5  || 0.10.6dev||
||= 0.11 =||  0.11.6  || 0.11.7dev||
stable latest
0.10 0.10.5 0.10.6dev
0.11 0.11.6 0.11.7dev

Finally, specifying an empty cell means that the next non empty cell will span the empty cells. For example:

Wiki Markup Display
|| 1 || 2 || 3 ||
|||| 1-2 || 3 ||
|| 1 |||| 2-3 ||
|||||| 1-2-3 ||
1 2 3
1-2 3
1 2-3
1-2-3

Note that if the content of a cell "sticks" to one side of the cell and only one, then the text will be aligned on that side. Example:

Wiki Markup Display
||=Text =||= Numbers =||
||left align    ||        1.0||
||  center      ||        4.5||
||      right align||     4.5||
|| default alignment ||   2.5||
||default||         2.5||
||  default ||      2.5||
|| default ||       2.5||
Text Numbers
left align 1.0
center 4.5
right align 4.5
default alignment 2.5
default 2.5
default 2.5
default 2.5

If contrary to the example above, the cells in your table contain more text, it might be convenient to spread a table row over multiple lines of markup. The \ character placed at the end of a line after a cell separator tells Trac to not start a new row for the cells on the next line.

Wiki Markup
|| this is column 1 [http://trac.edgewall.org/newticket new ticket] || \
|| this is column 2 [http://trac.edgewall.org/roadmap the road ahead] || \
|| that's column 3 and last one ||
Display
this is column 1 new ticket this is column 2 the road ahead that's column 3 and last one

Complex Tables

If the possibilities offered by the simple "pipe"-based markup for tables described above are not enough for your needs, you can create more elaborated tables by using WikiProcessor based tables.

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

Wiki Markup Display
TitleIndex, http://www.edgewall.com/, !NotAlink

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

Links 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.

Wiki Markup Display
 * [http://www.edgewall.com Edgewall Software]
 * [wiki:TitleIndex Title Index] 
 * [wiki:TitleIndex] 
 * [wiki:ISO9000]

Following the WikiCreole trend, the descriptive title can also be specified by writing the link followed by a pipe ('|') and a title and all this inside double square brackets.

 * [[http://www.edgewall.com|Edgewall Software]]
 * [[wiki:TitleIndex|Title Index]]
   or even [[TitleIndex|Title Index]]
 * [[wiki:TitleIndex]]
   ''' but not ![[TitleIndex]]! '''
 * [[ISO9000]]

Note: the WikiCreole style for links is quick to type and certainly looks familiar as it's the one used on Wikipedia and in many other wikis. Unfortunately it conflicts with the syntax for macros. So in the rare case when you need to refer to a page which is named after a macro (typical examples being TitleIndex, InterTrac and InterWiki), by writing [[TitleIndex]] you will actually call the macro instead of linking to the page.

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 notations:

Wiki Markup Display
 * Tickets: #1 or ticket:1
 * Reports: {1} or report:1
 * Changesets: r1, [1] or changeset:1
 * ...
 * targeting other Trac instances, 
   so called InterTrac links:
   - Tickets: #Trac1 or Trac:ticket:1
   - Changesets: [Trac1] or Trac:changeset:1

There are many more flavors of Trac links, see TracLinks for more in-depth information and a reference for all the default link resolvers.

Setting Anchors

An anchor, or more correctly speaking, an anchor name can be added explicitly at any place in the Wiki page, in order to uniquely identify a position in the document:

[=#point1]

This syntax was chosen to match the format for explicitly naming the header id documented above. For example:

== Long title == #title

It's also very close to the syntax for the corresponding link to that anchor:

[#point1]

Optionally, a label can be given to the anchor:

[[=#point1 '''Point 1''']]
Wiki Markup Display
[#point2 jump to the second point]

...

Point2:  [=#point2] Jump here

jump to the second point

Point2: Jump here

For more complex anchors (e.g. when a custom title is wanted), one can use the Span macro, e.g. [[span(id=point2, class=wikianchor, title=Point 2, ^(2)^)]].

Escaping Links and WikiPageNames

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

Wiki Markup Display
 !NoHyperLink
 !#42 is not a link
 {{{-}}} minus sign at the beginning of a line doesn't start a list \\
 {{{1.}}} number at the beginning of a line doesn't start a list \\
 {{{*}}} asterisk sign at the beginning of a line doesn't start a list

NoHyperLink #42 is not a link

- minus sign at the beginning of a line doesn't start a list
1. number at the beginning of a line doesn't start a list
* asterisk sign at the beginning of a line doesn't start a list

Images

Urls ending with .png, .gif or .jpg are no longer automatically interpreted as image links, and converted to <img> tags.

You 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)]].

In addition to the current page, it is possible to refer to other resources:

  • [[Image(wiki:WikiFormatting:picture.gif)]] (referring to attachment on another page)
  • [[Image(ticket:1:picture.gif)]] (file attached to a ticket)
  • [[Image(htdocs:picture.gif)]] (referring to a file inside the environment htdocs directory)
  • [[Image(source:/trunk/trac/htdocs/trac_logo_mini.png)]] (a file in repository)
Wiki Markup Display
[[Image(htdocs:../common/trac_logo_mini.png)]]

trac_logo_mini.png

See WikiMacros for further documentation on the [[Image()]] macro, which has several useful options (title=, link=, etc.)

Macros

Macros are custom functions to insert dynamic content in a page.

Wiki Markup Display
[[RecentChanges(Trac,3)]]

See WikiMacros for more information, and a list of installed macros.

The detailed help for a specific macro can also be obtained more directly by appending a "?" to the macro name.

Wiki Markup Display
[[MacroList?]]

[[MacroList]]

Display a list of all installed Wiki macros, including documentation if available.

Optionally, the name of a specific macro can be provided as an argument. In that case, only the documentation for that macro will be rendered.

Note that this macro will not be able to display the documentation of macros if the PythonOptimize option is enabled for mod_python!

Processors

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

Wiki Markup Display

Example 1: HTML

{{{
#!html
<h1 style="text-align: right; color: blue">
 HTML Test
</h1>
}}}

HTML Test

Example 2: Code Highlighting

{{{
#!python
class Test:

    def __init__(self):
        print "Hello World"
if __name__ == '__main__':
   Test()
}}}
class Test:
    def __init__(self):
        print "Hello World"
if __name__ == '__main__':
   Test()

Example 3: Complex Tables

{{{#!th rowspan=4 align=justify
With the `#td` and `#th` processors,
table cells can contain any content:
}}}
|----------------
{{{#!td
  - lists
  - embedded tables
  - simple multiline content
}}}
|----------------
{{{#!td
As processors can be easily nested, 
so can be tables:
  {{{#!th
  Example:
  }}}
  {{{#!td style="background: #eef"
  || must be at the third level now... ||
  }}}
}}}
|----------------
{{{#!td
Even when you don't have complex markup,
this form of table cells can be convenient
to write content on multiple lines.
}}}

With the #td and #th processors, table cells can contain any content:

  • lists
  • embedded tables
  • simple multiline content

As processors can be easily nested, so can be tables:

Example:

must be at the third level now…

Even when you don't have complex markup, this form of table cells can be convenient to write content on multiple lines.

See WikiProcessors for more information.

Comments

Comments can be added to the plain text. These will not be rendered and will not display in any other format than plain text.

Wiki Markup Display
Nothing to
{{{
#!comment
Your comment for editors here
}}}
see ;-)

Nothing to

see ;-)

Miscellaneous

An horizontal line can be used to separated different parts of your page:

Wiki Markup Display
Four or more dashes will be replaced 
by an horizontal line (<HR>)
----
See?

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


See?

"macro" style [[br]] line break

"macro" style
line break

!WikiCreole style \\ line\\break

WikiCreole style
line
break

Note: See TracWiki for help on using the wiki.