]> git.plutz.net Git - cgilite/commitdiff
md: task lists
authorPaul Hänsch <paul@plutz.net>
Wed, 7 Jul 2021 12:10:24 +0000 (14:10 +0200)
committerPaul Hänsch <paul@plutz.net>
Wed, 7 Jul 2021 12:10:24 +0000 (14:10 +0200)
markdown.awk

index 785ece87fbad731d7d4de1343752a2a63ccc9632..24235f613bcc28666b635eb6b1c75d02481d8618 100755 (executable)
@@ -51,7 +51,7 @@
 #   -  ?  Grid table (pandoc)
 #   -  ?  Pipe table (php md pandoc)
 # - [x] Line blocks (pandoc)
-# - [ ] Task lists (pandoc)
+# - [x] Task lists (pandoc)
 # - [ ] Definition lists (php md, pandoc)
 # - [-] Numbered example lists (pandoc)
 # - [-] Metadata blocks (pandoc)
@@ -396,6 +396,12 @@ function _list( block, last, LOCAL, p) {
     sub( /<\/p>\n/, "", p );
   }
   sub( /\n$/, "", p );
+
+  # Task List (pandoc)
+       if ( p ~ /^\[ \].*/ )       { p = "<input type=checkbox disabled />" substr(p, 4); }
+  else if ( p ~ /^\[[xX]\].*/ )    { p = "<input type=checkbox disabled checked />" substr(p, 4); }
+  else if ( p ~ /^<p>\[ \].*/ )    { p = "<p><input type=checkbox disabled />" substr(p, 7); }
+  else if ( p ~ /^<p>\[[xX]\].*/ ) { p = "<p><input type=checkbox disabled checked />" substr(p, 7); }
   return "<li>" p "</li>\n" _list( block, last );
 }