From 016cfc2ab93af7768191c5c82b1ff1ba2cdf1dee Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Sun, 11 May 2025 10:44:46 +0300 Subject: [PATCH] Keep autogenerated indices --- zk | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/zk b/zk index d9f772f..8c4c471 100755 --- a/zk +++ b/zk @@ -189,12 +189,10 @@ sub genHTML { my $page = shift; my $buf = shift; my $doBacks = $DoBacks; - my $doAlt = 1; my @links = (); if ($page =~ /\/$/) { @links = (@{$CatFiles{$page}}, @{$CatDirs{$page}}); $doBacks = 0; - $doAlt = 0; } elsif (exists $Links{noindex $page}) { @links = @{$Links{noindex $page}}; } @@ -219,15 +217,15 @@ sub genHTML { makerels; { my $title = noindex $page; - my $fn = basename $page; + my $fn = ($page =~ /\/$/) ? "index" : basename $page; print $out " $title -"; - if ($doAlt) { - print $out "\n"; - } - print $out "\n\n\n
";
+
+
+
+
+
";
     }
     my $indent = "";
     my sub procline;
@@ -358,20 +356,27 @@ if ($ARGV[0] eq "dump") {
     my $now = time;
     use File::Path qw(make_path);
     use File::Copy;
+    my $fh;
+    my $fn;
     foreach my $cat (keys %CatFiles) {
         make_path "$ARGV[1]/$cat";
         next if (exists $Mtimes{"${cat}index"});
-        my $fn = "$ARGV[1]/${cat}index.html";
-        open(my $fh, ">:encoding(UTF-8)", $fn) or die "$!";
+        $fn = "$ARGV[1]/${cat}index.txt";
+        open($fh, ">:encoding(UTF-8)", $fn) or die "$!";
+        genIndex $fh, $cat;
+        close $fh;
+        $fn = "$ARGV[1]/${cat}index.html";
+        open($fh, ">:encoding(UTF-8)", $fn) or die "$!";
         genHTML $fh, $cat, genIndex2Buf $cat;
         close $fh;
         utime $now, $now, $fn;
     }
+    my @s;
     foreach my $pth (keys %Mtimes) {
-        open(my $fh, ">:encoding(UTF-8)", "$ARGV[1]/$pth.html") or die "$!";
+        open($fh, ">:encoding(UTF-8)", "$ARGV[1]/$pth.html") or die "$!";
         my $backsWereGenerated = genHTML $fh, $pth;
         close $fh;
-        my @s = stat($pth) or die "$!";
+        @s = stat($pth) or die "$!";
         if ($backsWereGenerated) {
             utime $now, $now, "$ARGV[1]/$pth.html";
         } else {
-- 
2.48.1