Potential Contributions: Pandoc ↔ Automerge, Pandoc ↔ ProseMirror, Diffing Trees based on Pandoc #11443
Replies: 5 comments 17 replies
-
|
Certainly, a library for diffing two Pandoc documents would be very useful. Depending on the dependency footprint, it might even make sense to make this a module of pandoc-types. Alternatively, it could be a separate library. I'd have to think about whether adding diffing to pandoc itself would make sense, but my first impression is yes, this would be extremely useful. I don't know anything about automerge or prosemirror, so I don't have an informed opinion, but I'm interested in what others think. |
Beta Was this translation helpful? Give feedback.
-
|
Pinging @AntoLC and @lunika, who are involved with La Suite and who, I believe, are using software built on top of ProseMirror and AutoMerge. Also @StephanMeijer, who wrote some nice conversion tools in that and similar contexts. Would the things mentioned here help you with your projects? |
Beta Was this translation helpful? Give feedback.
-
|
Interesting stuff. I’m trying not to push my own open source projects too hard, but I’ve been chatting with @tarleb about running document conversion in the browser. I’m currently building DocSpec (https://github.com/docspec/docspec), a document converter in roughly the same problem space as Pandoc, but focused on converting to/from ProseMirror-based editors like BlockNote and Tiptap. Demo videos are here: https://github.com/docspec/talks/tree/main/FOSDEM2026 The current plan is to port the codebase from Elixir to Rust, so it can compile to targets that run basically anywhere: FFI, WASM, HTTP API, AMQP workers, and CLI. I’m in the process of getting that work funded. A first version is already integrated into La Suite Numérique (https://github.com/suitenumerique/docs), which uses BlockNote (Tiptap/ProseMirror-based; and they use Yjs for collaboration). One of the core challenges with ProseMirror/Tiptap is that the schema isn’t fixed: users can enable/define their own node/mark types, so "supported elements" are inherently editor-specific. My current direction (that is yet to be implemented) is an extensible approach:
I haven’t finalized the design yet, I’m intentionally waiting until funding is in place, because this is the hard part to get right. Net-net: I think I’m in the same conversion space as Pandoc, and I’d love to see first-class support for web-based editors in Pandoc (or any other converter for that matter), especially the ProseMirror ecosystem, that would be genuinely huge. Let me know if anyone would like to have a digital ☕ coffee about this subject, as it is something I am fairly passionate about. |
Beta Was this translation helpful? Give feedback.
-
|
Maybe also @massifrg
Gesendet von Outlook für Android<https://aka.ms/AAb9ysg>
…________________________________
From: Albert Krewinkel ***@***.***>
Sent: Friday, February 6, 2026 9:46:49 PM
To: jgm/pandoc ***@***.***>
Cc: Subscribed ***@***.***>
Subject: Re: [jgm/pandoc] Potential Contributions: Pandoc ↔ Automerge, Pandoc ↔ ProseMirror, Diffing Trees based on Pandoc (Discussion #11443)
Pinging @AntoLC<https://github.com/AntoLC> and @lunika<https://github.com/lunika>, who are involved with La Suite<https://lasuite.numerique.gouv.fr/produits/docs> and who, I believe, are using software built on top of ProseMirror and AutoMerge. Also @StephanMeijer<https://github.com/StephanMeijer>, who wrote some nice conversion tools in that and similar contexts. Would the things mentioned here help you with your projects?
—
Reply to this email directly, view it on GitHub<#11443 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ABDTWJVSXR5AB337P5H2ICL4KT4TTAVCNFSM6AAAAACUCETBB6VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKNZSGI2TOOI>.
You are receiving this because you are subscribed to this thread.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
|
I agree it'd be great to have built-in Automerge and ProseMirror support. In the context of pandoc, one can think of Automerge's rich text format as very similar to ProseMirror's format, and the latter seems like a natural fit for pandoc's purpose. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I am building a rich text editor for prose writing, which is integrated with Pandoc (the editor has a Haskell library which is used by an ElectronJS app via WASM). Some of the modules I am developing could be of interest to the wider Pandoc community, so I will list them here to see if it makes sense to either incorporate to Pandoc or gradually make them more independent from my editor so that they are as reusable as possible:
Open to feedback and ideas regarding if any of the above would benefit the Pandoc community, and if yes, what's the best way to move forward.
Beta Was this translation helpful? Give feedback.
All reactions