This is an automated email from the ASF dual-hosted git repository.
kwin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-doxia.git
The following commit(s) were added to refs/heads/master by this push:
new 52ace71c MarkdownSink: Only emit markupLineBreak if writer is not
already in blank line.
52ace71c is described below
commit 52ace71c262f89ea5044a54b155abcacaede3dbd
Author: Konrad Windszus <[email protected]>
AuthorDate: Mon Mar 9 20:16:49 2026 +0100
MarkdownSink: Only emit markupLineBreak if writer is not already in
blank line.
---
.../apache/maven/doxia/module/markdown/MarkdownSink.java | 4 +++-
.../maven/doxia/module/markdown/MarkdownSinkTest.java | 14 ++++++++++++++
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git
a/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java
b/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java
index fbc1d166..3a71b571 100644
---
a/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java
+++
b/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java
@@ -1300,7 +1300,9 @@ public class MarkdownSink extends Xhtml5BaseSink
implements MarkdownMarkup {
public void markupLineBreak(int indentLevel) {
// not allowed in all contexts
if (elementContextStack.element().isAllowsMarkupLinebreaks()) {
- super.markupLineBreak(indentLevel);
+ if (!lineAwareWriter.isWriterAfterBlankLine()) {
+ super.markupLineBreak(indentLevel);
+ }
}
}
diff --git
a/doxia-modules/doxia-module-markdown/src/test/java/org/apache/maven/doxia/module/markdown/MarkdownSinkTest.java
b/doxia-modules/doxia-module-markdown/src/test/java/org/apache/maven/doxia/module/markdown/MarkdownSinkTest.java
index d161f327..11c6d0e4 100644
---
a/doxia-modules/doxia-module-markdown/src/test/java/org/apache/maven/doxia/module/markdown/MarkdownSinkTest.java
+++
b/doxia-modules/doxia-module-markdown/src/test/java/org/apache/maven/doxia/module/markdown/MarkdownSinkTest.java
@@ -631,6 +631,20 @@ class MarkdownSinkTest extends AbstractSinkTest {
assertEquals(expected, getSinkContent(), "Wrong metadata section");
}
+ @Test
+ void insignificantWhitespaceAfterBlockElement() {
+ try (Sink sink = getSink()) {
+ sink.paragraph();
+ sink.text("paragraph");
+ sink.paragraph_();
+ sink.markupLineBreak(
+ 4); // this should be ignored as paragraph_() in markdown
is already followed by a blank line
+ sink.text("text after insignificant whitespace");
+ }
+ String expected = "paragraph" + EOL + EOL + "text after insignificant
whitespace";
+ assertEquals(expected, getSinkContent());
+ }
+
@Test
void listItemsContainingInsignificantWhitespace() {
try (Sink sink = getSink()) {