6.1 KiB
SimonUp Syntax-Spezifikation
SimonUp ist eine moderne, fluss- und blockorientierte Auszeichnungssprache (Dateiendung: .up). Sie wurde entwickelt, um den Schreibfluss zu maximieren, die Finger-Akrobatik auf der Tastatur zu minimieren und die Schwachstellen von traditionellem Markdown elegant zu lösen.
Philosophie: Fluss vs. Block
SimonUp trennt strikt zwischen zwei Logiken:
- Fluss-Formatierungen (Inline): Werden mit einem einzelnen Zeichen (oder einer Verdopplung) geöffnet und geschlossen. Sie erlauben Formatierungen mitten im Satz, ohne eine neue Zeile zu erzwingen, und funktionieren auch innerhalb von Blöcken.
- Block-Formatierungen (Strukturell): Beginnen immer am Zeilenanfang mit
&plus einem Typ-Kürzel und enden mit einem einzelnen&auf einer eigenen, neuen Zeile.
Absätze & Zeilenumbrüche
SimonUp eliminiert kryptische oder unsichtbare Zeichen am Zeilenende. Der Parser interpretiert die natürliche Nutzung der Enter-Taste direkt und intuitiv:
- 1x Enter (
<br>) → Erzeugt einen einfachen Zeilenumbruch (Soft Break). - 2x Enter (
<p>) → Erzeugt eine Leerzeile und startet einen neuen Absatz.
Beispiel:
Das ist die erste Zeile.
Diese Zeile steht direkt darunter.
Hier beginnt ein völlig neuer Absatz.
1. Fluss-Formatierungen (Inline)
| Syntax | Ergebnis | Besonderheit / Usecase |
|---|---|---|
#Text# bis ######Text###### |
Überschrift (H1 bis H6) | Text kann direkt in der Zeile weiterfliessen. |
*Text* |
Medium | Halbfette Betonung (font-weight: 500). |
**Text** |
Fett (Bold) | Starke Betonung (font-weight: 700) / Tabellenkopf. |
/Text/ |
Kursiv | Leichte Betonung / Zitate im Text. |
_Text_ |
Unterstrichen | Sauberer, dokumentenähnlicher Textstil. |
~Text~ |
Korrekturen oder erledigte To-Dos. | |
=Text= |
Highlight | Textmarker-Effekt für wichtige Schlüsselwörter. |
^Text^ |
Hochgestellt | Mathematische Notation oder Indizes. |
°Text° |
Tiefgestellt | Chemische Formeln (liegt auf derselben Taste wie ^!). |
`Text` |
Inline-Code |
Technische Begriffe im Fließtext. |
\Zeichen |
Escape | Hebt die Bedeutung von Steuerzeichen auf (z. B. \#). |
Ausrichtung & Einrückung im Fluss
Die Positionierung und Ausrichtung von Fließtext wird einheitlich über das Basiszeichen > gesteuert, gefolgt von einem Richtungskürzel. Das schließende Zeichen ist immer ein einfaches >.
>l Links bündig>→ Richtet den Text explizit linksbündig (left) aus.>r Rechts bündig>→ Richtet den Text rechtsbündig (right) aus.>c Zentriert>→ Richtet den Text zentriert (center) aus.>j Blocksatz>→ Richtet den Text im Blocksatz (justified) aus.>t Eingerückt>→ Rückt den umschlossenen Text 1x ein (tab).>tt Doppelt eingerückt>→ Rückt den umschlossenen Text 2x ein (double tab).
2. Block-Formatierungen
Horizontale Linie
___
Ergebnis: Horizontale Linie. Da dieser Block keinen Inhalt umschließt, wird er als Ausnahme nicht mit einem & geschlossen.
Listen & Strukturen (&-, &+)
&-
Erster Listenpunkt
Zweiter Listenpunkt
&
Ergebnis: Unsortierte Aufzählung (Bullet Points).
&+
Erster nummerierter Punkt
Zweiter nummerierter Punkt
&
Ergebnis: Nummerierte Liste (1., 2., ...).
Kompakte Block-Übersicht (&c, &q, &b, &f)
| Block-Typ | Kurzbeschreibung & Syntax-Beispiel |
|---|---|
Code (&c) |
&c python print("Fluss-Formatierungen werden hier ignoriert") & |
Zitat (&q) |
&q „Dies ist ein eigenständiger Zitatblock (Blockquote).“ & |
Bibeltext (&b) |
&b „Ein spezialisierter Textblock für Bibelstellen.“ & |
Spoiler / Fold (&f) |
&f Klickbarer Titel des Spoilers Hier steht der standardmäßig versteckte Inhalt (HTML <details>). & |
Infobox (&i) |
&i Wichtiger Hinweis tomato oder &i Wichtiger Hinweis #ff6347 Erzeugt eine farbige Infobox mit Titel. Akzeptiert HTML-Farbnamen und Hex-Codes. & |
Tabellen & Galerien (&t)
Tabellen definieren ihre Spaltenstruktur flexibel direkt in der Startzeile:
- Automatisch:
3xteilt den Platz in 3 gleich große Spalten auf. - Prozentual:
20% 80%setzt relative Breiten. - Pixelgenau:
150px 350pxerzwingt feste Spaltenbreiten. - Mischbetrieb:
20% 200px 10%erlaubt das nahtlose Kombinieren von Prozent- und Pixelwerten für maximale Flexibilität.
Jede Spalte endet mit einem |
&t 3x
**Name** | **Beruf** | **Stadt** |
Simon | Entwickler | Zürich |
&
Multi-line Zellen & Zeilenumbrüche
Um den Schreibfluss bei viel Text zu erhalten, können Zellen über mehrere Zeilen fließen. Der Parser sammelt allen Text (inklusive normaler Zeilenumbrüche), bis ein Spaltenrenner | die nächste Zelle einleitet.
**Projekt** | **Beschreibung** |
SimonUp | Eine moderne Auszeichnungssprache.
Sie trennt strikt zwischen Fluss und Block
und erlaubt echte Absätze in Tabellen.|
Aktiv | Läuft.|
&
3. Links, Medien & Fußnoten
Links & Medien
[Codeberg](URL)→ Standard-Link (selber Tab)[Codeberg]{URL}→ Komfort-Link (neuer Tab /target="_blank")→ Standard-Bild→ Bild mit definierter Breite (Höhe skaliert automatisch)
Bildergalerien (Nutzt die Multi-line-Tabellen-Logik)
Da Zellen durch das schließende | flexibel über mehrere Zeilen fließen können, lassen sich Bilder und ihre dazugehörigen Beschreibungen nahtlos in derselben Zelle kombinieren. Das neue >c ...> zentriert die Bildunterschriften sauber unter den Bildern:
&t 3x

>c Abbildung 1: Alpen>|

>c Abbildung 2: Italien>|

>c Abbildung 3: Schwarzwald>|
&
Fußnoten
^1[Hier steht der Fußnotentext]^→ Manuelle Nummerierung (Fußnote 1)^x[Hier steht der Fußnotentext]^→ Automatische, fortlaufende Nummerierung durch SimonUp