Remix.run Logo
andric an hour ago

The way they’ve handled splits in text using a “text slice” and block mapping is truly novel (although the way they’ve introduced search labels feels a little hacky).

> in a ProseMirror editor using Yjs, splits are modeled as a deletion in the first block and an insertion in the second. A concurrent edit may therefore remain in the original node, whereas our approach preserves its intended position across the split.

I wonder if something inspired by this design could make its way into the new Yjs version and y-prosemirror rewrite.

It’s always been a big limitation of y-prosemirror that splits are handled as a deletion and insertion.