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:16 UTC
[maven-doxia] 01/01: [DOXIA-693] Fix prefix for ordered list item prefixes
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;
}