about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2026-10-02 10:27:12 +0200
committerRobert Günzler <r@gnzler.io>2026-10-02 10:39:48 +0200
commitf2fcba01c54c92cf905f479719a5a14a2704355e (patch)
tree6549714798491ddd392ade263904126cddc5df86 /src
parentdc66d670f572268b93dbd2e7cfc4ab38b37c4405 (diff)
downloadsite-f2fcba01c54c92cf905f479719a5a14a2704355e.tar.gz
fix --list not including meta pages
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to 'src')
-rw-r--r--src/main.zig35
1 files changed, 13 insertions, 22 deletions
diff --git a/src/main.zig b/src/main.zig
index 8725806..d449bd6 100644
--- a/src/main.zig
+++ b/src/main.zig
@@ -205,6 +205,16 @@ const Cli = struct {
         while (try iter.next(io)) |child| {
             if (child.kind != .file) continue;
 
+            if (flags.contains("-l") or flags.contains("--list")) {
+                const path = try std.fs.path.join(gpa, &.{ root_path, child.name });
+                defer gpa.free(path);
+
+                // only print
+                try Io.File.stdout().writeStreamingAll(io, path);
+                try Io.File.stdout().writeStreamingAll(io, "\n");
+                continue;
+            }
+
             if (std.mem.endsWith(u8, child.name, "meta.baseof.htm")) continue;
             if (std.mem.endsWith(u8, child.name, "meta.nav.htm")) continue;
 
@@ -215,6 +225,9 @@ const Cli = struct {
             }
         }
 
+        // nothing to do
+        if (mdn.count() == 0 and work.count() == 0) return;
+
         var progress = if (!DEBUG) std.Progress.start(io, .{});
         defer if (!DEBUG) progress.end();
 
@@ -232,16 +245,6 @@ const Cli = struct {
         // process markdown first
         var mdnIter = mdn.iterator();
         while (mdnIter.next()) |path| {
-            const full_path = try std.fs.path.join(gpa, &.{ root_path, path.* });
-            defer gpa.free(full_path);
-
-            if (flags.contains("-l") or flags.contains("--list")) {
-                // only print
-                try Io.File.stdout().writeStreamingAll(io, full_path);
-                try Io.File.stdout().writeStreamingAll(io, "\n");
-                continue;
-            }
-
             const mdn_node = if (!DEBUG) mdnProgress.start(path.*, 0);
             defer if (!DEBUG) mdn_node.end();
 
@@ -258,16 +261,6 @@ const Cli = struct {
 
         var workIter = work.iterator();
         while (workIter.next()) |path| {
-            const full_path = try std.fs.path.join(gpa, &.{ root_path, path.* });
-            defer gpa.free(full_path);
-
-            if (flags.contains("-l") or flags.contains("--list")) {
-                // only print
-                try Io.File.stdout().writeStreamingAll(io, full_path);
-                try Io.File.stdout().writeStreamingAll(io, "\n");
-                continue;
-            }
-
             const htm_node = if (!DEBUG) htmProgress.start(path.*, 0);
             defer if (!DEBUG) htm_node.end();
 
@@ -285,8 +278,6 @@ const Cli = struct {
             try outgoingRefs.put(gpa, std.fs.path.stem(source.path), refs.items);
         }
 
-        if (LIST) return;
-
         // filter index for post processing
         var index: std.ArrayList([]const u8) = try .initCapacity(gpa, work.count());
         var workIter2 = work.iterator();