You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kw...@apache.org on 2023/02/11 08:47:15 UTC

[maven-doxia] branch bugfix/numbered-item-prefix created (now 3a8682d7)

This is an automated email from the ASF dual-hosted git repository.

kwin pushed a change to branch bugfix/numbered-item-prefix
in repository https://gitbox.apache.org/repos/asf/maven-doxia.git


      at 3a8682d7 [DOXIA-693] Fix prefix for ordered list item prefixes

This branch includes the following new commits:

     new 3a8682d7 [DOXIA-693] Fix prefix for ordered list item prefixes

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[maven-doxia] 01/01: [DOXIA-693] Fix prefix for ordered list item prefixes

Posted by kw...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

kwin pushed a commit to branch bugfix/numbered-item-prefix
in repository https://gitbox.apache.org/repos/asf/maven-doxia.git

commit 3a8682d7fb83341ef867e3e6b31a1d59b0c5385b
Author: Konrad Windszus <kw...@apache.org>
AuthorDate: Sat Feb 11 09:47:09 2023 +0100

    [DOXIA-693] Fix prefix for ordered list item prefixes
---
 .../doxia/module/markdown/MarkdownMarkup.java      | 22 +++-------
 .../maven/doxia/module/markdown/MarkdownSink.java  | 51 ++++++++++------------
 .../doxia/module/markdown/MarkdownSinkTest.java    |  5 ++-
 3 files changed, 30 insertions(+), 48 deletions(-)

diff --git a/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownMarkup.java b/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownMarkup.java
index f77db838..854bfa2e 100644
--- a/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownMarkup.java
+++ b/doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownMarkup.java
@@ -36,21 +36,6 @@ public interface MarkdownMarkup extends TextMarkup {
     String COMMENT_START = "<!-- ";
     String COMMENT_END = " -->";
 
-    /** numbering decimal markup char: '1' */
-    char NUMBERING = '1';
-
-    /** numbering lower alpha markup char: 'a' */
-    char NUMBERING_LOWER_ALPHA_CHAR = 'a';
-
-    /** numbering lower roman markup char: 'i' */
-    char NUMBERING_LOWER_ROMAN_CHAR = 'i';
-
-    /** numbering upper alpha markup char: 'A' */
-    char NUMBERING_UPPER_ALPHA_CHAR = 'A';
-
-    /** numbering upper roman markup char: 'I' */
-    char NUMBERING_UPPER_ROMAN_CHAR = 'I';
-
     /** page break markup char: '\f' */
     char PAGE_BREAK = '\f';
 
@@ -91,8 +76,11 @@ public interface MarkdownMarkup extends TextMarkup {
     /** Syntax for the link start: "](" */
     String LINK_START_2_MARKUP = "](";
 
-    /** Syntax for the list start: "-" */
-    String LIST_START_MARKUP = "-";
+    /** Syntax for the ordered list item: '1.' */
+    String LIST_ORDERED_ITEM_START_MARKUP = "1.";
+
+    /** Syntax for the unordered list item: "-" */
+    String LIST_UNORDERED_ITEM_START_MARKUP = "-";
 
     /** Syntax for the mono-spaced style end: "`" */
     String MONOSPACED_END_MARKUP = "`";
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 c5c7dcb1..2b06b15c 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
@@ -371,7 +371,7 @@ public class MarkdownSink extends AbstractTextSink implements MarkdownMarkup {
      */
     public void list() {
         listNestingIndent += " ";
-        listStyles.push(LIST_START_MARKUP);
+        listStyles.push(LIST_UNORDERED_ITEM_START_MARKUP);
         write(EOL);
     }
 
@@ -388,20 +388,16 @@ public class MarkdownSink extends AbstractTextSink implements MarkdownMarkup {
     /**
      * {@inheritDoc}
      */
+    @Override
     public void listItem() {
-        // if (!numberedList)
-        // write(EOL + listNestingIndent + "*");
-        // else
-        numberedListItem();
-        itemFlag = true;
+        orderedOrUnorderedListItem();
     }
 
     /**
      * {@inheritDoc}
      */
     public void listItem_() {
-        write(EOL);
-        itemFlag = false;
+        orderedOrUnorderedListItem_();
     }
 
     /** {@inheritDoc} */
@@ -409,25 +405,14 @@ public class MarkdownSink extends AbstractTextSink implements MarkdownMarkup {
         listNestingIndent += " ";
         write(EOL);
 
-        String style;
-        switch (numbering) {
-            case NUMBERING_UPPER_ALPHA:
-                style = String.valueOf(NUMBERING_UPPER_ALPHA_CHAR);
-                break;
-            case NUMBERING_LOWER_ALPHA:
-                style = String.valueOf(NUMBERING_LOWER_ALPHA_CHAR);
-                break;
-            case NUMBERING_UPPER_ROMAN:
-                style = String.valueOf(NUMBERING_UPPER_ROMAN_CHAR);
-                break;
-            case NUMBERING_LOWER_ROMAN:
-                style = String.valueOf(NUMBERING_LOWER_ROMAN_CHAR);
-                break;
-            case NUMBERING_DECIMAL:
-            default:
-                style = String.valueOf(NUMBERING);
+        // markdown only supports decimal numbering
+        if (numbering != NUMBERING_DECIMAL) {
+            LOGGER.warn(
+                    "Markdown only supports numbered item with decimal style ({}) but requested was style {}, falling back to decimal style",
+                    NUMBERING_DECIMAL,
+                    numbering);
         }
-
+        String style = LIST_ORDERED_ITEM_START_MARKUP;
         listStyles.push(style);
     }
 
@@ -445,15 +430,23 @@ public class MarkdownSink extends AbstractTextSink implements MarkdownMarkup {
      * {@inheritDoc}
      */
     public void numberedListItem() {
-        String style = listStyles.peek();
-        write(EOL + listNestingIndent + style + SPACE);
-        itemFlag = true;
+        orderedOrUnorderedListItem();
     }
 
     /**
      * {@inheritDoc}
      */
     public void numberedListItem_() {
+        orderedOrUnorderedListItem_();
+    }
+
+    private void orderedOrUnorderedListItem() {
+        String style = listStyles.peek();
+        write(EOL + listNestingIndent + style + SPACE);
+        itemFlag = true;
+    }
+
+    private void orderedOrUnorderedListItem_() {
         write(EOL);
         itemFlag = false;
     }
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 cac89ac5..f4158653 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
@@ -144,13 +144,14 @@ public class MarkdownSinkTest extends AbstractSinkTest {
 
     /** {@inheritDoc} */
     protected String getListBlock(String item) {
-        return EOL + EOL + Markup.SPACE + "" + MarkdownMarkup.LIST_START_MARKUP + "" + Markup.SPACE + item + EOL + EOL;
+        return EOL + EOL + Markup.SPACE + "" + MarkdownMarkup.LIST_UNORDERED_ITEM_START_MARKUP + "" + Markup.SPACE
+                + item + EOL + EOL;
     }
 
     /** {@inheritDoc} */
     protected String getNumberedListBlock(String item) {
         return EOL + EOL + Markup.SPACE + ""
-                + MarkdownMarkup.NUMBERING_LOWER_ROMAN_CHAR + ""
+                + MarkdownMarkup.LIST_ORDERED_ITEM_START_MARKUP + ""
                 + Markup.SPACE + item + EOL + EOL;
     }