feat: XOR-Gruppen (=) — genau eine Alternative (SPEC §3, D35)
Parser erkennt `=` als disjunktives Gate (nur mit folgendem Leerraum — `=SUMME(…)` bleibt Label); Mischungen melden mixedGate wie gehabt. Die XOR-Regel warnt je WEITERER realisierter Alternative (xorConflict mit Zeilennummer; realisiert = [~]/[/]/[x]/[^], siehe D35). Darstellung erbt die komplette any-of-Geometrie (ul class="or xor"), ergänzt um eine „1"-Plakette am Austritt der Sammelleiste — auch im Grafikexport. Legende (+ hint_root) und Warntext in allen 9 Sprachen; SPEC §11-Eintrag in §1/§3/§9 überführt; 13 neue Tests (tests/xor.test.js). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
2754fa40f6
commit
d276c94840
+6
-2
@@ -82,8 +82,12 @@ entscheiden, **bevor** Code entsteht.
|
||||
- [ ] Querverbindungen zeichnen (eigene SVG-Ebene, optisch sekundär);
|
||||
bei ausgewähltem Knoten ein-/ausgehende hervorheben.
|
||||
- [ ] Faltmarken `>` / `<` parsen; interaktives Auf-/Zuklappen im Diagramm.
|
||||
- [ ] XOR-Gruppe (`=`) parsen (nur mit folgendem Leerraum, Mischung →
|
||||
- [x] XOR-Gruppe (`=`) parsen (nur mit folgendem Leerraum, Mischung →
|
||||
`mixedGate`), zwei realisierte Alternativen melden.
|
||||
→ Zeichen entschieden: `=` statt `x` (D34-Nachtrag).
|
||||
→ Zeichen entschieden: `=` statt `x` (D34-Nachtrag). Umgesetzt (D35):
|
||||
„realisiert“ = `[~]`/`[/]`/`[x]`/`[^]`, Warnung `xorConflict` je weiterer
|
||||
realisierter Alternative; Darstellung als any-of plus „1“-Plakette an der
|
||||
Sammelleiste (auch im Grafikexport); Legende + i18n in 9 Sprachen;
|
||||
`tests/xor.test.js`.
|
||||
- [ ] Knotenbeschreibungen: Schreibweise für kurze und lange Form festlegen
|
||||
(Einrückung ist bereits Hierarchie), dann Tooltip/Pop-up.
|
||||
|
||||
Reference in New Issue
Block a user