Composer: Klick/Auswahl in der Vorschau sollte die entsprechende Markdown-Quelle aufdecken/auswählen (besonders bei Mathe)

Problem / Motivation

Beim Bearbeiten von Beiträgen mit vielen mathematischen Formeln ist es oft schwierig, die genaue Quelle einer gerenderten Gleichung im Markdown-Editor zu finden.

Bei langen Beiträgen mit vielen Inline-$...$-Ausdrücken oder mehreren $$...$$-Anzeigeblöcken sieht der Arbeitsablauf wie folgt aus:

Fehler in der Vorschau erkennen → im rohen Markdown manuell suchen → anpassen → Vorschau erneut überprüfen

Dies ist besonders mühsam bei kleinen Änderungen (fehlendes Minuszeichen, falscher Index, Anpassung des Abstands usw.) und wird bei wachsender Beitragsgröße schlimmer.

Vorgeschlagenes Verhalten

Im Editor:

  • Das Klicken oder Markieren eines gerenderten Elements im Vorschaufenster sollte:
  • zum entsprechenden Quelltext im rohen Markdown-Editor scrollen und
  • den Cursor in den Quelltext setzen (oder diesen auswählen), der es erzeugt hat.

Dies würde sich besonders gut eignen für:
• Mathematik (, $$…$$)
• Zitate
• Listen
• Links
• Andere verarbeitete Elemente

Mathematik ist der überzeugendste Anwendungsfall, aber das Verhalten wäre allgemein nützlich.

Warum dies sich von der Scroll-Synchronisierung unterscheidet

Hier geht es nicht um synchronisiertes Scrollen während der Eingabe.

Es handelt sich um einen Sprung von der Vorschau zur Quelle, ähnlich dem Geist von SyncTeX in LaTeX-Editoren:

„Ich schaue mir dieses gerenderte Ding an – zeig mir, woher es kommt.“

Mögliche Implementierungsrichtung (hochrangig)

Während des Renderings könnten Ausgabeknoten leichtgewichtige Metadaten zur Quellzuordnung tragen (z. B. data-sourcepos="start:end" oder Ähnliches).

In der Editor-Vorschau:

  • Beim Klicken/Auswählen den DOM-Baum nach oben zum nächsten Knoten mit Metadaten zur Quellposition durchlaufen.
  • Die vorhandene Editor-API verwenden, um den Auswahlbereich im rohen Editor festzulegen und ihn in die Ansicht zu scrollen.

Diese Art der Quellzuordnung existiert konzeptionell bereits in CommonMark-Tools, und mathematische Blöcke sind natürliche Kandidaten, da sie bereits eindeutig tokenisiert sind.

Warum dies wertvoll wäre

  • Viel schnellere Iteration bei Inhalten mit vielen mathematischen Formeln
  • Reduziert die kognitive Belastung beim Bearbeiten langer technischer Beiträge
  • Macht das Vorschaufenster wirklich interaktiv, nicht nur passiv
  • Lässt sich gut auf andere verarbeitete Elemente jenseits der Mathematik skalieren

Gerne erstelle ich eine kurze GIF-Animation, um die Interaktion zu veranschaulichen.

1 „Gefällt mir“