Rebuild docs
[privoxy.git] / utils / prepare-configfile.pl
index f5c9fe2..dc68632 100755 (executable)
@@ -31,7 +31,10 @@ sub main() {
 
         s/^1\. \@\@TITLE\@\@/     /i;
 
-        if (m/^(\d*\.){1,3}\s/) {
+        if ($hit_header) {
+            $header_len += length($_);
+            $_ = " " . $_;
+        } elsif (m/^(\d*\.){1,3}\s/) {
             # Remove the first digit as it's the
             # config file section in the User Manual.
             s/^(\d\.)//;
@@ -42,18 +45,23 @@ sub main() {
             # Remember to underline it.
             $hit_header = 1;
             $header_len = length($_);
-
-            # Separate it from the previous section.
-            print "#\n";
         }
 
         if ($unfold_mode) {
             s/^\s+/ /;
             $unfold_mode = 0;
         } else {
+            if ( $hit_option ) {
+               # processing a continuation of a @@ line
+               if ( /^\s*$/ ) { # blank line
+                  $hit_option = 0;
+                  next;
+               }
+            }
             s/^/#  /;
         }
-        if ($unfolding_enabled and m/(\s+#)\s*$/) {
+        if ($unfolding_enabled and
+            (m/(\s+#)\s*$/ or m/forward-socks5 and$/)) {
             $unfold_mode = 1;
             chomp;
         }
@@ -61,8 +69,6 @@ sub main() {
         # XXX: someone should figure out what this stuff
         # is supposed to do (and if it really does that).
         s/^#  #/####/ if /^#  #{12,}/;
-        s/^.*$// if $hit_option;
-        $hit_option = 0;
         s/^\n//;
         s/^#\s*-{20,}//;
         s/ *$//;
@@ -75,12 +81,13 @@ sub main() {
 
         print unless (/^\s*$/);
 
-        if ($hit_header) {
+        if ($hit_header and !$unfold_mode) {
             # The previous line was a section
             # header so we better underline it.
             die "Invalid header length" unless defined $header_len;
             print "#  " . "=" x $header_len . "\n";
             $hit_header = 0;
+            $header_len = 0;
         };
     }
 }