Compare commits

..

10 commits

Author SHA1 Message Date
simonpipe
17d9aca511 Update readme.md 2026-07-12 16:30:04 +02:00
simonpipe
9df1e1a9f7 Update readme.md 2026-07-12 16:29:41 +02:00
simonpipe
193a95a4bf Update readme.md 2026-07-12 16:29:18 +02:00
simonpipe
f99b3c9074 Update readme.md 2026-07-12 16:25:07 +02:00
simonpipe
65e268cc85 Update readme.md 2026-07-12 16:22:22 +02:00
simonpipe
b4757a745a Update readme.md 2026-07-10 10:41:04 +02:00
simonpipe
0eccd06bd5 Update readme.md 2026-07-10 10:38:18 +02:00
simonpipe
d03bddcacd Update readme.md 2026-07-09 17:54:26 +02:00
simonpipe
58325c7e10 Update readme.md 2026-07-09 17:53:00 +02:00
simonpipe
4d725b54b2 Update readme.md 2026-07-09 17:47:56 +02:00

View file

@ -2,7 +2,7 @@
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. 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.2 vor dir. Du siehst hier meinen Entwurf V1.2b vor dir.
--- ---
@ -10,7 +10,7 @@ Du siehst hier meinen Entwurf V1.2 vor dir.
SimonUp trennt strikt zwischen zwei Logiken: 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. 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* am Zeilenanfang mit `&` plus einem Typ-Kürzel und enden mit einem einzelnen `&` auf einer eigenen, neuen Zeile. 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.
--- ---
@ -51,8 +51,8 @@ Hier beginnt ein völlig neuer Absatz.
| `//` | *Alles schliessen* | Schliesst alle offenen Fluss-Formatierungen. | | `//` | *Alles schliessen* | Schliesst alle offenen Fluss-Formatierungen. |
| `\Zeichen` | *Escape* | Hebt die Bedeutung von Steuerzeichen auf (z. B. `\#`). | | `\Zeichen` | *Escape* | Hebt die Bedeutung von Steuerzeichen auf (z. B. `\#`). |
### Ausrichtung & Einrückung im Fluss ### 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 `/>`. 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. * `>l Links bündig />` → Richtet den Text explizit **linksbündig** (*left*) aus.
* `>r Rechts bündig />` → Richtet den Text **rechtsbündig** (*right*) aus. * `>r Rechts bündig />` → Richtet den Text **rechtsbündig** (*right*) aus.
@ -68,32 +68,32 @@ Die Positionierung und Ausrichtung von Fliesstext wird einheitlich über das Bas
___ ___
``` ```
*Ergebnis: Horizontale Linie. Da dieser Block keinen Inhalt umschliesst, wird er als Ausnahme weder mit einem & geöffnet noch mit einem & geschlossen.* *Ergebnis: Horizontale Linie.*
### Listen & Strukturen ### Listen & Strukturen
`-` Erster Listenpunkt `-` Erster Listenpunkt
`-` Zweiter Listenpunkt `-` Zweiter Listenpunkt
*Ergebnis: Unsortierte Aufzählung (Bullet Points).* *Ergebnis: Unsortierte Aufzählung (Bullet Points).*
`1.` Erster nummerierter Punkt `1.` Erster nummerierter Punkt
`2.` Zweiter nummerierter Punkt `2.` Zweiter nummerierter Punkt
*Ergebnis: Nummerierte Liste (1., 2., ...).* *Ergebnis: Nummerierte Liste (1., 2., ...).*
### Kompakte Block-Übersicht (`&>`, `&>>`, `&c`, `&q`, `&b`, `&f` , `&i`, `&toc`) ### Kompakte Block-Übersicht (`&>`, `&>>`, `&c`, `&q`, `&b`, `&f` , `&i`, `&toc`)
| Block-Typ | Kurzbeschreibung & Syntax-Beispiel | | Block-Typ | Kurzbeschreibung & Syntax-Beispiel |
| --- | --- | | --- | --- |
| **Einrückung (`&>`)** | `&>` <br> Rückt den umschlossenen Text **1x ein** (*tab*). <br> `&` | | **Einrückung (`&>`)** | `&>` <br> Rückt den umschlossenen Text **1x ein** (*tab*). <br> `/&` |
| **Doppelte Einrückung (`&>>`)** | `&>>` <br> Rückt den umschlossenen Text **2x ein** (*double tab*). <br> `&` | | **Doppelte Einrückung (`&>>`)** | `&>>` <br> Rückt den umschlossenen Text **2x ein** (*double tab*). <br> `/&` |
| **Code (`&c`)** | `&c python` <br> `print("Fluss-Formatierungen werden hier ignoriert")` <br> `&` | | **Code (`&c`)** | `&c python` <br> `print("Fluss-Formatierungen werden hier ignoriert")` <br> `&` |
| **Zitat (`&q`)** | `&q` <br> „Dies ist ein eigenständiger **Zitatblock** (Blockquote).“ <br> `&` | | **Zitat (`&q`)** | `&q` <br> „Dies ist ein eigenständiger **Zitatblock** (Blockquote).“ <br> `/&` |
| **Bibeltext (`&b`)** | `&b` <br> „Ein spezialisierter Textblock für Bibelstellen.“ <br> `&` | | **Bibeltext (`&b`)** | `&b` <br> „Ein spezialisierter Textblock für Bibelstellen.“ <br> `/&` |
| **Spoiler / Fold (`&f`)** | `&f Klickbarer Titel des Spoilers` <br> Hier steht der standardmässig versteckte Inhalt (HTML `<details>`). <br> `&` | | **Spoiler / Fold (`&f`)** | `&f Klickbarer Titel des Spoilers` <br> Hier steht der standardmässig versteckte Inhalt (HTML `<details>`). <br> `/&` |
| **Infobox (`&i`)** | `&i Wichtiger Hinweis tomato oder &i Wichtiger Hinweis #ff6347` <br> Erzeugt eine farbige Infobox mit Titel. Akzeptiert HTML-Farbnamen und Hex-Codes. <br> & | | **Infobox (`&i`)** | `&i Wichtiger Hinweis #ff6347` oder `&i Wichtiger Hinweis tomato` <br> Erzeugt eine farbige Infobox mit Titel. Akzeptiert HTML-Farbnamen und Hex-Codes. <br> `/&` |
| **TOC (`&toc`)** | `&toc Titel` <br> Einleitende Worte. <br> & | | **TOC (`&toc`)** | `&toc Titel` <br> Einleitende Worte. <br> `/&` |
### Tabellen & Galerien (`&t`) ### Tabellen & Galerien (`&t`)
@ -106,23 +106,24 @@ Tabellen definieren ihre Spaltenstruktur flexibel direkt in der Startzeile:
Jede Spalte endet mit einem | Jede Spalte endet mit einem |
```text ```text
&t 3x &t 30% 40% 30%
**Name** | **Beruf** | **Stadt** | **Name** | **Beruf** | **Stadt** |
Simon | Entwickler | Zürich | Simon | Entwickler | Zürich |
& /&
``` ```
#### Multi-line Zellen & Zeilenumbrüche #### 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. 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.
```text ```text
&t 300px 500px
**Projekt** | **Beschreibung** | **Projekt** | **Beschreibung** |
SimonUp | Eine moderne Auszeichnungssprache. SimonUp | Eine moderne Auszeichnungssprache.
Sie trennt strikt zwischen Fluss und Block Sie trennt strikt zwischen Fluss und Block
und erlaubt echte Absätze in Tabellen.| und erlaubt echte Absätze in Tabellen.|
Aktiv | Läuft.| Aktiv | Läuft.|
& /&
``` ```
--- ---
@ -138,7 +139,7 @@ Aktiv | Läuft.|
### Bildergalerien (Nutzt die Multi-line-Tabellen-Logik) ### 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: 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:
```text ```text
&t 3x &t 3x
@ -150,7 +151,7 @@ Da Zellen durch das schliessende `|` flexibel über mehrere Zeilen fliessen kön
![Schwarzwald](wald.jpg) ![Schwarzwald](wald.jpg)
>c Abbildung 3: Schwarzwald /> | >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.) (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.)
@ -162,6 +163,13 @@ Da Zellen durch das schliessende `|` flexibel über mehrere Zeilen fliessen kön
--- ---
## Demo, Playground, Spielwiese
Unter https://simonpipe.codeberg.page/SimonUp/ entsteht ein Playground (eine Spielwiese), um SimonUp auszuprobieren.
Aber Achtung, der Parser ist noch sehr unausgereift und bedarf noch viel Liebe.
---
## Namensherkunft: Warum „SimonUp“? ## Namensherkunft: Warum „SimonUp“?
Der Name **SimonUp** ist ein durchdachtes (und augenzwinkerndes) dreifaches Wortspiel: Der Name **SimonUp** ist ein durchdachtes (und augenzwinkerndes) dreifaches Wortspiel: