Please change the rules for pasting plain text

I understand the compatibility concern. Plain text newlines are ambiguous, so changing the existing default globally would be risky.

But I think there is still a narrower issue here: the current default paste and copy policies are not inverses of each other.

Pasting:

a\nb\n\nc\nd

currently becomes four textblocks:

p("a"), p("b"), p("c"), p("d")

That loses the distinction between a single newline and a blank line. Then copying those four textblocks serializes them with “\n\n” between each block:

a\n\nb\n\nc\n\nd

So paste+copy changes the structure of a common plaintext fragment.

Would you be open to an opt-in, schema-aware way to make plaintext clipboard handling round-trip? For schemas/editors that want the common “single newline = line break, blank line = paragraph break” convention, paste could convert single newlines to a configured inline linebreak node and blank lines to textblock boundaries, while copy would serialize that linebreak node as “\n” and textblock boundaries as “\n\n”.

That would avoid changing behavior for existing setups, but give applications a standard core-supported path for a convention that ProseMirror schemas can already represent.

(related thread)