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 4d759fcc MarkdownSink: Prevent additional newlines when html tags are
emitted
4d759fcc is described below
commit 4d759fccde25ca3a079d1d8f599e121981e2e900
Author: Konrad Windszus <[email protected]>
AuthorDate: Tue Mar 10 11:29:42 2026 +0100
MarkdownSink: Prevent additional newlines when html tags are emitted
---
.../apache/maven/doxia/module/markdown/MarkdownSink.java | 3 +++
.../maven/doxia/module/markdown/MarkdownSinkTest.java | 16 +++++++++++++---
2 files changed, 16 insertions(+), 3 deletions(-)
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 bda3edd6..9fa36f92 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
@@ -384,6 +384,9 @@ public class MarkdownSink extends Xhtml5BaseSink implements
MarkdownMarkup {
this.lineAwareWriter = lineAwareWriter;
this.bufferingStackWriter = bufferingStackWriter;
initInternal();
+ setInsertNewline(
+ false); // we want to control newlines on our own to prevent
(mostly to not break encapsulating markdown
+ // tables)
}
private void initInternal() {
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 a626b526..b5517b3d 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
@@ -26,6 +26,7 @@ import java.io.StringReader;
import java.io.StringWriter;
import java.io.Writer;
+import org.apache.maven.doxia.module.xdoc.XdocParser;
import org.apache.maven.doxia.module.xhtml5.Xhtml5Parser;
import org.apache.maven.doxia.parser.ParseException;
import org.apache.maven.doxia.parser.Parser;
@@ -131,7 +132,7 @@ class MarkdownSinkTest extends AbstractSinkTest {
}
protected String getContentBlock() {
- return "<main>" + EOL + "<div class=\"content\"></div></main>";
+ return "<main><div class=\"content\"></div></main>";
}
protected String getFooterBlock() {
@@ -700,11 +701,20 @@ class MarkdownSinkTest extends AbstractSinkTest {
sink.verbatim_();
sink.tableCell_();
sink.tableRow_();
+ sink.tableRow();
+ sink.tableCell();
+ sink.verbatim(SinkEventAttributeSet.SOURCE);
+ sink.text("code with | and ` inside");
+ sink.verbatim_();
+ sink.tableCell_();
+ sink.tableRow_();
sink.tableRows_();
sink.table_();
}
- String expected =
- "| |" + EOL + "|---|" + EOL + "|<pre><code>code with | and `
inside</code></pre>|" + EOL + EOL;
+ String expected = "| |" + EOL + "|---|" + EOL
+ + "|<pre><code>code with | and ` inside</code></pre>|" + EOL
+ + "|<pre><code>code with | and ` inside</code></pre>|" + EOL +
EOL;
assertEquals(expected, getSinkContent());
}
+
}