pipadoc: asciidoc support increment/decrement HEAD's
authorChristian Thaeter <ct@pipapo.org>
Thu, 3 Sep 2009 19:01:20 +0000 (21:01 +0200)
committerChristian Thaeter <ct@pipapo.org>
Fri, 4 Sep 2009 04:32:03 +0000 (06:32 +0200)
doc/asciidoc.pawk

index 02c4839..0029d64 100644 (file)
@@ -20,9 +20,32 @@ match($0, com"(.*) PARA (.*); *(.*); *(.*)", p) {
     next
 }
 
+BEGIN {
+    asciidoc_header[0]="="
+    asciidoc_header[1]="-"
+    asciidoc_header[2]="~"
+    asciidoc_header[3]="^"
+    asciidoc_header[4]="+"
+    asciidoc_level=1
+}
+
+
 # Create an asciidoc headline and index entry
 #             Sec      Typ Name  Index Explanation
-match($0, com"(.*) HEAD(.) (.*); *(.*); *(.*)", p) {
+match($0, com"(.*) HEAD([^ ]+) (.*); *(.*); *(.*)", p) {
+    if (p[2] == "==")
+        p[2] = asciidoc_header[asciidoc_level]
+    else if (p[2] == "++")
+    {
+        if (asciidoc_level < 4) ++asciidoc_level
+        p[2] = asciidoc_header[asciidoc_level]
+    }
+    else if (p[2] == "--")
+    {
+        if (asciidoc_level > 1) --asciidoc_level
+        p[2] = asciidoc_header[asciidoc_level]
+    }
+
     if (p[4])
     {
         append("index", tolower(p[4]), "xref:"p[4]"["p[3]"]:: "p[5])