diff --git a/packages/block-library/src/preformatted/index.js b/packages/block-library/src/preformatted/index.js index 7d90224f9639c..9553ac77885f9 100644 --- a/packages/block-library/src/preformatted/index.js +++ b/packages/block-library/src/preformatted/index.js @@ -68,10 +68,14 @@ export const settings = { return ( ' ) } onChange={ ( nextContent ) => { setAttributes( { - content: nextContent, + // Ensure line breaks are normalised to characters. This + // saves space, is easier to read, and ensures display + // filters work correctly. + content: nextContent.replace( /
/g, '\n' ), } ); } } placeholder={ __( 'Write preformatted text…' ) } diff --git a/packages/e2e-tests/specs/__snapshots__/adding-blocks.test.js.snap b/packages/e2e-tests/specs/__snapshots__/adding-blocks.test.js.snap index 30b83349a7030..b8160cb3842ef 100644 --- a/packages/e2e-tests/specs/__snapshots__/adding-blocks.test.js.snap +++ b/packages/e2e-tests/specs/__snapshots__/adding-blocks.test.js.snap @@ -42,7 +42,9 @@ exports[`adding blocks Should insert content using the placeholder and the regul -
Pre text

Foo
+
Pre text
+
+Foo
diff --git a/packages/e2e-tests/specs/blocks/__snapshots__/preformatted.test.js.snap b/packages/e2e-tests/specs/blocks/__snapshots__/preformatted.test.js.snap index 4538816e15b41..07a70a19a6b2b 100644 --- a/packages/e2e-tests/specs/blocks/__snapshots__/preformatted.test.js.snap +++ b/packages/e2e-tests/specs/blocks/__snapshots__/preformatted.test.js.snap @@ -9,6 +9,8 @@ exports[`Preformatted should preserve character newlines 1`] = ` exports[`Preformatted should preserve character newlines 2`] = ` " -
0
1
2
+
0
+1
+2
" `;