From 11e4c0d5e62f5a7f3840a83081567eff33f16fd3 Mon Sep 17 00:00:00 2001 From: Anhgelus Morhtuuzh Date: Wed, 1 Oct 2025 09:51:21 +0200 Subject: feat(markdown): replace line break by space in paragraph --- mardown/ast_paragraph.go | 7 ++++++- mardown/ast_test.go | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/mardown/ast_paragraph.go b/mardown/ast_paragraph.go index 687e735..5961370 100644 --- a/mardown/ast_paragraph.go +++ b/mardown/ast_paragraph.go @@ -50,8 +50,13 @@ func paragraph(lxs *lexers, oneLine bool) (*astParagraph, error) { } tree.content = append(tree.content, astLiteral(lxs.Current().Value)) case lexerLiteral, lexerHeader: + s := lxs.Current().Value + // replace line break by space + if n > 0 { + s = " " + s + } n = 0 - tree.content = append(tree.content, astLiteral(lxs.Current().Value)) + tree.content = append(tree.content, astLiteral(s)) case lexerModifier: n = 0 mod, err := modifier(lxs) diff --git a/mardown/ast_test.go b/mardown/ast_test.go index 030656b..971e6ac 100644 --- a/mardown/ast_test.go +++ b/mardown/ast_test.go @@ -22,7 +22,7 @@ var parsed = `

Je suis un titre

Avec une description classique, sur plusieurs lignes

Et je peux mettre du texte en gras, en italique et les deux en même temps !

-
Je suis une magnifique source sur plusieurs lignes

avec une source

+
Je suis une magnifique citation sur plusieurs lignes

avec une source

` func TestAst(t *testing.T) { -- cgit v1.2.3