From b0e00da2f713540c4fa2e6156b9e67e6e9a3739a Mon Sep 17 00:00:00 2001 From: MeiMei <30769358+mei23@users.noreply.github.com> Date: Tue, 29 Jan 2019 20:33:28 +0900 Subject: [PATCH] Fix #4034 (#4037) * Fix #4034 * improve --- src/mfm/html.ts | 2 +- test/mfm.ts | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/mfm/html.ts b/src/mfm/html.ts index 6dba6defe..61d2d7b5a 100644 --- a/src/mfm/html.ts +++ b/src/mfm/html.ts @@ -157,7 +157,7 @@ export default (tokens: MfmForest, mentionedRemoteUsers: INote['mentionedRemoteU text(token) { const el = doc.createElement('span'); - const nodes = (token.node.props.text as string).split('\n').map(x => doc.createTextNode(x)); + const nodes = (token.node.props.text as string).split(/\r\n|\r|\n/).map(x => doc.createTextNode(x)); for (const x of intersperse('br', nodes)) { el.appendChild(x === 'br' ? doc.createElement('br') : x); diff --git a/test/mfm.ts b/test/mfm.ts index a1f83fe1d..3452c5f10 100644 --- a/test/mfm.ts +++ b/test/mfm.ts @@ -1096,6 +1096,12 @@ describe('MFM', () => { const output = '

foo
bar
baz

'; assert.equal(toHtml(analyze(input)), output); }); + + it('br alt', () => { + const input = 'foo\r\nbar\rbaz'; + const output = '

foo
bar
baz

'; + assert.equal(toHtml(analyze(input)), output); + }); }); it('code block with quote', () => {