Markdown alternative
Find a file
2026-07-29 10:08:24 +02:00
Playground Playground hinzugefügt 2026-07-28 16:19:01 +02:00
LICENSE Add LICENSE 2026-07-06 22:47:15 +02:00
readme.md Codeberg entfernt 2026-07-29 10:08:24 +02:00

SimonUp Syntax-Spezifikation

SimonUp ist der Entwurf für eine moderne, fluss- und blockorientierte Auszeichnungssprache (Dateiendung: .up). Sie wird entwickelt, um den Schreibfluss zu maximieren, die Fingerakrobatik auf der Tastatur zu minimieren und die Schwachstellen von traditionellem Markdown elegant zu lösen.

Du siehst hier meinen Entwurf V1.2b vor dir.


Philosophie: Fluss vs. Block

SimonUp trennt strikt zwischen zwei Logiken:

  1. 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.
  2. Block-Formatierungen (Strukturell): Beginnen immer (mit Ausnahme der Listen und horizontalen Linie) 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
1#Text bis 6#Text Überschrift (H1 bis H6) Überschriften.
1x#Text bis 6x#Text Überschrift (H1 bis H6) Überschriften mit automatischer Nummerierung.
1-#Text bis 6-#Text Überschrift (H1 bis H6) Diese Überschriften werden nicht im TOC aufgenommen.
/# Optionaler Abschluss der Überschrift Braucht es nur, wenn danach in der gleichen Zeile normaler Text kommen soll
*Text/* Medium Halbfette Betonung (font-weight: 500).
**Text/** Fett (Bold) Starke Betonung (font-weight: 700)
%Text/% Kursiv Leichte Betonung / Zitate im Text.
_Text/_ Unterstrichen Sauberer, dokumentenähnlicher Textstil.
~Text/~ Durchgestrichen 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.
`Text/` Inline-Code Technische Begriffe im Fliesstext.
// Alles schliessen Schliesst alle offenen Fluss-Formatierungen.
\Zeichen Escape Hebt die Bedeutung von Steuerzeichen auf (z. B. \#).

Ausrichtung im Fluss

Die Positionierung und Ausrichtung von Fliesstext wird einheitlich über das Basiszeichen > gesteuert, gefolgt von einem Richtungskürzel. Das schliessende Zeichen ist immer ein />. Lässt sich auch für Text in Tabellen anwenden, darum ist es eine Fluss- und keine Block-Formatierung.

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

2. Block-Formatierungen

Horizontale Linie

___

Ergebnis: Horizontale Linie.

Listen & Strukturen

- Erster Listenpunkt
- Zweiter Listenpunkt

Ergebnis: Unsortierte Aufzählung (Bullet Points).

1. Erster nummerierter Punkt
2. Zweiter nummerierter Punkt

Ergebnis: Nummerierte Liste (1., 2., ...).

Kompakte Block-Übersicht (&>, &>>, &c, &q, &b, &f , &i, &toc)

Block-Typ Kurzbeschreibung & Syntax-Beispiel
Einrückung (&>) &>
Rückt den umschlossenen Text 1x ein (tab).
/&
Doppelte Einrückung (&>>) &>>
Rückt den umschlossenen Text 2x ein (double tab).
/&
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ässig versteckte Inhalt (HTML <details>).
/&
Infobox (&i) &i Wichtiger Hinweis #ff6347 oder &i Wichtiger Hinweis tomato
Erzeugt eine farbige Infobox mit Titel. Akzeptiert HTML-Farbnamen und Hex-Codes.
/&
TOC (&toc) &toc Titel
Einleitende Worte.
/&

Tabellen & Galerien (&t)

Tabellen definieren ihre Spaltenstruktur flexibel direkt in der Startzeile:

  • Automatisch: 3x teilt den Platz in 3 gleich grosse Spalten auf.
  • Prozentual: 20% 80% setzt relative Breiten.
  • Pixelgenau: 150px 350px erzwingt 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 30% 40% 30%
**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 fliessen. Der Parser sammelt allen Text (inklusive normaler Zeilenumbrüche), bis ein Spaltenrenner | die nächste Zelle einleitet.

&t 300px 500px
**Projekt** | **Beschreibung** |

SimonUp | Eine moderne Auszeichnungssprache.
Sie trennt strikt zwischen Fluss und Block
und erlaubt echte Absätze in Tabellen.|
Aktiv | Läuft.|
/&

  • [Codeberg](URL) → Standard-Link (selber Tab)
  • [Codeberg]{URL} → Komfort-Link (neuer Tab / target="_blank")
  • ![Alt-Text](URL) → Standard-Bild
  • ![Alt-Text w:300](URL) → Bild mit definierter Breite (Höhe skaliert automatisch)

Bildergalerien (Nutzt die Multi-line-Tabellen-Logik)

Da Zellen durch das schliessende | flexibel über mehrere Zeilen fliessen können, lassen sich Bilder und ihre dazugehörigen Beschreibungen nahtlos in derselben Zelle kombinieren. Mit >c ... /> werden die Bildunterschriften sauber unter den Bildern zentriert:

&t 3x
![Alpen](berge.jpg)
>c Abbildung 1: Alpen /> |

![Italien](strand.jpg)
>c Abbildung 2: Italien /> |

![Schwarzwald](wald.jpg)
>c Abbildung 3: Schwarzwald /> |
/&

(Hinweis: Der Zeilenumbruch zwischen dem Bild und der Beschreibung wird vom Parser als einfaches <br> gerendert, sodass der Text perfekt unter dem Bild steht, während das | am Ende die gesamte Zelle abschliesst.)

Fussnoten

  • ^1[Hier steht der Fussnotentext]^ → Manuelle Nummerierung (Fussnote 1)
  • ^x[Hier steht der Fussnotentext]^ → Automatische, fortlaufende Nummerierung durch SimonUp

Demo, Playground, Spielwiese

Im Ordner Playground entsteht eine Spielwiese, um SimonUp auszuprobieren.
Aber Achtung, der Parser ist noch sehr unausgereift und bedarf noch viel Liebe.


Namensherkunft: Warum „SimonUp“?

Der Name SimonUp ist ein durchdachtes (und augenzwinkerndes) dreifaches Wortspiel:

  1. Das Upgrade: Das „Up“ steht für den evolutionären Schritt nach vorn (Upgrade, SpeedUp). Es symbolisiert eine Sprache, die den Schreibfluss beschleunigt und modernisiert.
  2. Der logische Gegensatz: Es ist die direkte, optimierte Antwort auf traditionelles Markdown SimonUp zieht deine Dokumente nach oben, statt sie nach unten zu drücken.
  3. Der Insider-Witz: Wer sagt eigentlich, dass eine Auszeichnungssprache immer nach dem deutschen Vornamen „Mark“ (Markdown) benannt sein muss?