From 114956af772cb82aa8f5c262e735aadcb0adc9cf Mon Sep 17 00:00:00 2001 From: Robin Stocker <robin@nibor.org> Date: Thu, 8 Feb 2024 23:31:37 +1100 Subject: [PATCH] Fix thematic break and list items --- .../renderer/markdown/CoreMarkdownNodeRenderer.java | 3 ++- .../renderer/markdown/MarkdownRendererTest.java | 9 +++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/commonmark/src/main/java/org/commonmark/renderer/markdown/CoreMarkdownNodeRenderer.java b/commonmark/src/main/java/org/commonmark/renderer/markdown/CoreMarkdownNodeRenderer.java index 748ff5df..30d6d1a5 100644 --- a/commonmark/src/main/java/org/commonmark/renderer/markdown/CoreMarkdownNodeRenderer.java +++ b/commonmark/src/main/java/org/commonmark/renderer/markdown/CoreMarkdownNodeRenderer.java @@ -89,7 +89,8 @@ public class CoreMarkdownNodeRenderer extends AbstractVisitor implements NodeRen @Override public void visit(ThematicBreak thematicBreak) { - writer.raw("***"); + // Let's use ___ as it doesn't introduce ambiguity with * or - list item markers + writer.raw("___"); writer.block(); } diff --git a/commonmark/src/test/java/org/commonmark/renderer/markdown/MarkdownRendererTest.java b/commonmark/src/test/java/org/commonmark/renderer/markdown/MarkdownRendererTest.java index af6a3488..eaabe837 100644 --- a/commonmark/src/test/java/org/commonmark/renderer/markdown/MarkdownRendererTest.java +++ b/commonmark/src/test/java/org/commonmark/renderer/markdown/MarkdownRendererTest.java @@ -12,10 +12,11 @@ public class MarkdownRendererTest { @Test public void testThematicBreaks() { - assertRoundTrip("***\n"); - // TODO: spec: If you want a thematic break in a list item, use a different bullet: - - assertRoundTrip("***\n\nfoo\n"); + assertRoundTrip("___\n"); + assertRoundTrip("___\n\nfoo\n"); + // List item with hr -> hr needs to not use the same as the marker + assertRoundTrip("* ___\n"); + assertRoundTrip("- ___\n"); } @Test -- GitLab