Notion-ähnlicher Editor

Hallo zusammen,

Während wir uns weiterhin mit Discourse vertraut machen und damit arbeiten, bin ich zu der Erkenntnis gelangt, dass der Editor leicht mein Favorit unter all den Forensoftwares ist, mit denen ich in den letzten Jahren gearbeitet habe. Ich denke jedoch,
Was ich empfehle, ist ein blockbasierter Editor, bei dem Sie “/” verwenden können und sich schnelle Verknüpfungen ergeben. Ein Beispiel ist Notion und ein weiteres ist der Tiptap-Editor

Hier ist ein Screenshot von Marktext, einem meiner bevorzugten Open-Source-Markdown-Editoren für Desktops:

Viele Markdown-Editoren bewegen sich in Richtung Block-Verknüpfungen, und ich denke, Discourse könnte von einem solchen Konzept sowohl in Bezug auf Form als auch Funktion profitieren.

13 „Gefällt mir“

Das wäre wohl eine Menge Arbeit, um das perfekt zum Laufen zu bringen.

Vage damit zusammenhängend wurde vor einiger Zeit ein nicht mehr funktionierender WYSIWYG-Editor-Plugin erstellt und diskutiert:

3 „Gefällt mir“

Ja, ich habe mir das gerade angesehen, bevor ich das hier gepostet habe, ich wollte nur eine richtige Anfrage daraus machen.

Ich habe bemerkt, dass @sam sagte, dass im Oktober 2022 im Grunde Pläne™ in Arbeit sind.

3 „Gefällt mir“

Ich bin gerade auf diese Open-Source-Bibliothek gestoßen, die Notion-ähnliche Befehle ausführt. Ich bin mir nicht sicher, wie einfach sie in Discourse integriert werden könnte, wollte sie aber trotzdem posten, falls jemand eine Idee hat:

6 „Gefällt mir“

Das sieht so aus, als wäre es auf https://tiptap.dev/ aufgebaut, das geschlossen ist?

1 „Gefällt mir“

Tiptap ist meines Wissens Open Source:

3 „Gefällt mir“

Ich verstehe, die Pro-Erweiterungen sind kostenpflichtig.
Die große knifflige Sache hier ist die 2-Wege-Verbindung zwischen Markdown und HTML. Auf Markdown verzichten möchte ich bei Experimenten in diesem Bereich vermeiden.

5 „Gefällt mir“

TipTap ist ein Wrapper um ProseMirror: https://prosemirror.net/.

2 „Gefällt mir“

Einverstanden.

Ich habe es hauptsächlich als Beispiel verlinkt. Ich denke, Experimente in diesem Bereich könnten lohnenswert sein, bin mir aber noch nicht ganz sicher, wie das auf einer technischeren Ebene funktionieren könnte, insbesondere wenn eines der Ziele darin besteht, die Überbrückung von Markdown zu HTML nicht aufzugeben.

Ich glaube, ich bin dem gegenüber immer noch positiv eingestellt, so wie im Juli 2023, als ich das Thema erstellt habe, da fast jede App, die ich zum Schreiben verwende, mittlerweile ähnliche Funktionen hat.

Ich werde in den kommenden Wochen weiter darüber nachdenken und mich wieder melden, wenn mir etwas einfällt.

Zumindest sollte es eine Art Tastaturmethode beinhalten, wie das Tippen von “/” oder einem anderen festgelegten Symbol, das eine nahtlose Auswahlpalette für die Einfügung von Formatierungen und Dingen aufruft, die Discourse für würdig hält, wie Notion, Tiptap usw.

1 „Gefällt mir“

Es sieht so aus, als ob Prosemirror Discourse (https://discuss.prosemirror.net/) verwendet, also haben sie vielleicht einige Gedanken dazu. Ich habe auch gesehen, dass sie eine Integration für Markdown haben, aber ich habe keine Ahnung, ob sich das mit dem deckt, worüber Sam gesprochen hat. Ich wollte es nur erwähnen, falls Leute mehr dazu recherchieren möchten.

3 „Gefällt mir“

Sein Ersteller hat auch ein Konto auf Meta. Ich werde ihn hier nicht erwähnen, aber er ist der Autor eines großartigen Javascript-Buches: https://eloquentjavascript.net/.

Soweit ich weiß, wäre es eine wirklich komplexe Aufgabe, den aktuellen Discourse-Editor auf etwas umzustellen, das auf prosemirror basiert.

2 „Gefällt mir“

Mein Vorschlag für dieses Thema war nicht, tiptap zu verwenden, es wurde als Beispiel verwendet. Was ich empfehle, ist die Blockbearbeitungserfahrung.

2 „Gefällt mir“

Dieser Editor scheint Markdown-zu-HTML-Konvertierung direkt zu unterstützen:

2 „Gefällt mir“

@thoka Ich habe es über den von Ihnen angegebenen Link getestet. Es funktioniert wirklich großartig. Es wäre großartig, diesen Editor in Discourse zu sehen. Ich hoffe, dass es in Zukunft eine solche Änderung geben wird.

Hm. Scheint auf den ersten Blick zu funktionieren.
Ein geeigneter Editor muss mindestens eine verlustfreie Roundtrip-Konvertierung von beliebiger Discourse-Markdown → HTML/Editor-Zustand → Markdown unterstützen.

Die verlinkte Demo scheitert zum Beispiel an ausgerichteten Tabellen.

3 „Gefällt mir“

Ich habe es nicht auf Tabellen ausprobiert. Wenn die Entwicklung fortgesetzt wird, kann dieses Problem auch behoben werden.

Es könnte sich lohnen, sich den Lexical-Editor von Meta anzusehen: Introduction | Lexical. Er kann die 2-Wege-Markdown-zu-HTML-Brücke unterstützen: @lexical/markdown | Lexical.

Ich habe in der Dokumentation nicht viel gefunden, um loszulegen, aber die Rückwärtsarbeit vom Code des Lexical Playgrounds ist hilfreich, zumindest im Kontext einer React-App.

8 „Gefällt mir“

Absolut, @renato hat damit ein wenig experimentiert, es ist ein Mammutprojekt, aber etwas, das wir sehr gerne erforschen möchten.

8 „Gefällt mir“

Derzeit verwendet Discourse eine Mischung aus Markdown, BBCode und HTML als zugrunde liegendes Datenformat. Gibt es Pläne für ein einheitlicheres Format?

Bezüglich Experimenten: Ist es gesunder Menschenverstand, dass jeder visuelle Editor zumindest idempotent sein sollte (keine Änderung der Quelle beim Laden, Nichtbearbeiten, Speichern) und lokal begrenzt sein sollte (nur Änderungen an der Quelle, wo Bearbeitungen vorgenommen wurden)?

3 „Gefällt mir“

Hier kündigt Invision TipTap als seinen neuen Editor an:

https://invisioncommunity.com/news/invision-community/invision-community-5-the-all-new-editor-r1301/

3 „Gefällt mir“