Extend parser to support #. as an ordered list identifier, add alternative list type tests, and update version to 1.0.9.

This commit is contained in:
2026-01-10 14:39:14 +01:00
parent 22d99dbda6
commit 850f66affd
3 changed files with 44 additions and 4 deletions

View File

@@ -8,7 +8,7 @@ plugins {
}
group = "nl.astraeus"
version = "1.0.8"
version = "1.0.9"
repositories {
mavenCentral()
@@ -66,7 +66,7 @@ signing {
}
mavenPublishing {
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL)
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL, automaticRelease = true)
signAllPublications()

View File

@@ -40,7 +40,11 @@ fun markdown(text: String): List<MarkdownPart> {
if (line.isBlank()) {
parseBuffer()
continue
} else if (line.startsWith("${listIndex++}.") || line.startsWith("-.")) {
} else if (
line.startsWith("${listIndex++}.")
|| line.startsWith("-.")
|| line.startsWith("#.")
) {
buffer.append("\n")
buffer.append(line.substring(2))
} else {
@@ -124,7 +128,7 @@ fun markdown(text: String): List<MarkdownPart> {
continue
}
line.startsWith("1.") || line.startsWith("-.") -> {
line.startsWith("1.") || line.startsWith("-.") || line.startsWith("#.") -> {
parseBuffer()
type = MarkdownType.ORDERED_LIST
listIndex = 2

View File

@@ -68,6 +68,24 @@ class ParseTest {
printMarkdownParts(md)
}
@Test
fun testUnorderedListAlternative() {
val input = """
Dit is een text
* First
More text
* Second
More text
Another paragraph
""".trimIndent()
val md = markdown(input)
printMarkdownParts(md)
}
@Test
fun testOrderedList() {
val input = """
@@ -86,6 +104,24 @@ class ParseTest {
printMarkdownParts(md)
}
@Test
fun testOrderedListAlternative() {
val input = """
Dit is een text
#.First
More text
#.Second
More text
Another paragraph
""".trimIndent()
val md = markdown(input)
printMarkdownParts(md)
}
@Test
fun testCheckboxList() {
val input = """