Prosemirror-noting


#1

Hi all,

We’re currently debating moving our text editing over to ProseMirror at work. Something we’ve missed in PM as it stands is noting / commenting. Because of this we’ve built a plugin that adds this functionality (at least to suit our requirements). It’s definitely “beta” in it’s scope / design / architecture at the moment but it seems to be serving our needs quite well. Feel free to have a play around, comment or even a PR! There are most likely areas that don’t make sense or miss part of the PM API so flag anything that makes no sense.

https://github.com/guardian/prosemirror-noting

Thanks, Rich


#2

Nice! Thanks for letting us know. I’ve opened an issue on the repository. In general, I’d lean towards making these inline nodes, though that does require more implementation effort (you’ll need a node view that controls the editing), rather than marks, because that maps more cleanly to the role they appear to have (separate chunks of content, rather than metadata on other content).


#3

I actually leaned towards the nodes route a bit further into playing with this but for our use case we actually implement two “tracks” of notes (in essence two different marks) with different types that can overlap each other so in this instance I’m not sure nodes actually work, and - if they did - would be even harder to implement (I think)!

There are definitely some semantic questions around this model, not to mention some of the rather “proprietary” logic - but it works!

(@marijn hopefully this gives you a bit more context on some of the previous issues!)


#4

Thanks for sharing Rich! When I get into implementing commenting I’ll definitely be taking a look.

Also, happy to see Guardian exploring Prosemirror. For my own project, I started down the path of using Scribe and then switched to PM as soon as it got funded.


#5

No problem - we like to share at the Guardian!

Yeah Scribe was great but there are some things that are very tricky without an intermediary model and PM is great for that!