]> git.plutz.net Git - cgilite/commitdiff
discriminate between different list markers
authorPaul Hänsch <paul@plutz.net>
Wed, 30 Aug 2023 15:31:06 +0000 (17:31 +0200)
committerPaul Hänsch <paul@plutz.net>
Wed, 30 Aug 2023 15:31:06 +0000 (17:31 +0200)
markdown.awk

index 4b180ebb3df2277ca2335a5370a75d21291fd44e..c42aa5ac318e544c7eb259481eb1842b33ddf895 100755 (executable)
@@ -690,12 +690,22 @@ function _block( block, LOCAL, st, len, text, title, attrib, href, guard, code,
     list = substr( block, 1, RLENGTH); block = substr( block, RLENGTH + 1);
     return "\n<dl>\n" _dlist( list ) "</dl>\n" _block( block );
 
-  # Unordered list
-  } else if ( text = _startlist( block, "ul", "[-+*]", "([0-9]+\\.|#\\.)") ) {
+  # Unordered list types
+  } else if ( text = _startlist( block, "ul", "-",   "([+*]|[0-9]+\\.|#\\.|[0-9]+\\)|#\\))") ) {
+    return text;
+  } else if ( text = _startlist( block, "ul", "\\+", "([-*]|[0-9]+\\.|#\\.|[0-9]+\\)|#\\))") ) {
+    return text;
+  } else if ( text = _startlist( block, "ul", "\\*", "([-+]|[0-9]+\\.|#\\.|[0-9]+\\)|#\\))") ) {
     return text;
 
-  # Ordered list
-  } else if ( text = _startlist( block, "ol", "([0-9]+\\.|#\\.)", "[-+*]") ) {
+  # Ordered list types
+  } else if ( text = _startlist( block, "ol", "[0-9]+\\.", "([-+*]|#\\.|[0-9]+\\)|#\\))") ) {
+    return text;
+  } else if ( text = _startlist( block, "ol", "[0-9]+\\)", "([-+*]|[0-9]+\\.|#\\.|#\\))") ) {
+    return text;
+  } else if ( text = _startlist( block, "ol", "#\\.", "([-+*]|[0-9]+\\.|[0-9]+\\)|#\\))") ) {
+    return text;
+  } else if ( text = _startlist( block, "ol", "#\\)", "([-+*]|[0-9]+\\.|#\\.|[0-9]+\\))") ) {
     return text;
 
   # Split paragraphs