Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Also post-process pages.html. I'm gonna kill it, but it's not done yet
[simgrid.git] / tools / doxygen / doxygen_postprocesser.pl
index b5c4803..16425d0 100755 (executable)
@@ -7,6 +7,7 @@ $debug{'parse'} = 0; # show how we parse the module tree
 $debug{'input'} = 0; # display the resulting tree
 $debug{'rename'}= 0; # do not overwrite the files (allows several debuging runs without rerunning doxygen)
 
+my @allfiles;
 ###
 ### Get the module definitions
 ###
@@ -53,6 +54,7 @@ while (<IN>) {
   $entry->{'up'} = $current;
   push @{$current->{'down'}},$entry;
   print "Push $1 $2 as child of $current\n" if $debug{'parse'};
+  push @allfiles,$1;
 }
 close IN;
 
@@ -192,4 +194,46 @@ sub handle_page {
   }
 }
 
+
+
+###
+### Post-processsing common to all pages
+###
+map {push @allfiles,$_} qw(html/index.html html/faq.html html/publis.html html/pages.html);
+
+foreach my $file (@allfiles) {
+    open FROM,"$file" || die;
+    my $outfile = "$file";
+    $outfile =~ s/.html/.new.html/;
+    open TO,">$outfile" || die;
+    while (<FROM>) {
+      # Add the simgrid css, just in case
+      print TO '<link href="simgrid.css" rel="stylesheet" type="text/css">'."\n"
+        if (m|</head>|);
+
+      # Rework the navbar
+      if (m,<li><a href="index.html"><span>Main\&nbsp;Page</span></a></li>,) {
+        print TO '<li><a href="index.html"><span>Overview</span></a></li>';
+        print TO '<li><a href="faq.html"><span>FAQ</span></a></li>';
+        next;
+      }
+      if (m,<li><a href="annotated.html"><span>Data\&nbsp;Structures</span></a></li>,) {
+        print TO '<li><a href="publis.html"><span>Publications</span></a></li>';
+        next;
+      }
+      s|<span>Modules</span>|<span>Modules API</span>|g;
+      s|<li><a href="dirs.html"><span>Directories</span></a></li>||g;
+                                                                                                 
+      print TO $_;
+    }
+    close FROM;
+    close TO;
+    rename("$outfile", "$file") unless $debug{'rename'};
+}
+
+###
+### Launch the modules navbar reworking
+###
 handle_page($top,-2);# skip roots (we have 2 roots) in level counting
+
+