Basics
Syntax
Lernen Sie die grundlegende Tiramisu-Syntax: Funktionsaufrufe, Verschachtelung, Absätze und Escaping.
Tiramisu hat ein grundlegendes Konstrukt: den Funktionsaufruf.
Funktionsaufrufe
Ein Funktionsaufruf besteht aus einem Namen, gefolgt von Inhalt in geschweiften Klammern:
name { content } Der Name kann ein beliebiger Text vor der öffnenden Klammer sein. Der Inhalt kann einfachen Text, andere Funktionsaufrufe oder eine Mischung aus beidem enthalten.
Verschachtelung
Funktionsaufrufe können beliebig tief verschachtelt werden:
bold { italic { underline { deeply nested } } } Jeder Funktionsaufruf kann einfachen Text, andere Funktionsaufrufe oder beides enthalten:
bold { This is italic { partially } formatted } Absätze
Einfacher Text außerhalb von Funktionsaufrufen wird zu Absatzinhalt. Absätze werden durch Leerzeilen getrennt:
This is the first paragraph.
This is the second paragraph.
This is the third. Funktionsnamen
Ein Funktionsname ist jeder Text unmittelbar vor einer öffnenden {. Das bedeutet, dass Funktionsnamen Leerzeichen, Zahlen und Sonderzeichen enthalten können — üblicherweise sind Funktionsnamen jedoch einfache Bezeichner:
bold { works }
myWidget { works } Escaping
Um zu verhindern, dass ein Funktionsaufruf geparst wird, stellen Sie dem Funktionsnamen einen Backslash voran:
bold { this is literal text } Dies wird dargestellt als: bold { this is literal text } — der Backslash weist den Parser an, bold als einfachen Text statt als Funktionsaufruf zu behandeln.
Sonderzeichen
Einige Zeichen haben innerhalb von Funktionsaufruf-Parametern eine besondere Bedeutung. Sie müssen sie nur escapen, wenn sie innerhalb von { } stehen — in einfachem Absatztext werden sie wörtlich behandelt und benötigen kein Escaping.
| Escape | Zeichen | Warum |
|---|---|---|
\, | Komma | Verhindert Parametertrennung |
\= | Gleichheitszeichen | Verhindert benanntes Parameter-Parsing |
\{ | Öffnende Klammer | Verhindert Funktionsaufruf-Parsing |
\} | Schließende Klammer | Verhindert das Schließen eines Funktionsaufrufs |
\[ | Öffnende eckige Klammer | Verhindert Array-Parsing |
\] | Schließende eckige Klammer | Verhindert das Schließen eines Arrays |
\name | Funktionsname | Behandelt Name als wörtlichen Text |
{ } sind
Kommas, Gleichheitszeichen, und eckige Klammern ganz normale Zeichen.