From edfbbf1b131b912452ea7930a890736c6880aa5c Mon Sep 17 00:00:00 2001 From: Robert Günzler Date: Wed, 23 Sep 2026 14:55:16 +0200 Subject: support listing source files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Robert Günzler --- src/main.zig | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main.zig b/src/main.zig index 60e40fe..65e323b 100644 --- a/src/main.zig +++ b/src/main.zig @@ -84,6 +84,8 @@ const Cli = struct { .flags = &.{ .{ .name = "-f" }, .{ .name = "--force" }, + .{ .name = "-l" }, + .{ .name = "--list" }, }, .handler = &Cli.gen, }, @@ -110,7 +112,7 @@ const Cli = struct { \\ mdn SOURCE-FILE TARGET-DIR \\ build markdown files (using pandoc) \\ - \\ gen ROOT-DIR TARGET-DIR + \\ gen [-f, --force] [-l, --list] ROOT-DIR TARGET-DIR \\ runs build for relevant files \\ \\ serve ROOT-DIR @@ -216,6 +218,17 @@ const Cli = struct { 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 + if (mdn.contains(md_name)) { + try Io.File.stdout().writeStreamingAll(io, md_path); + try Io.File.stdout().writeStreamingAll(io, "\n"); + } + try Io.File.stdout().writeStreamingAll(io, full_path); + try Io.File.stdout().writeStreamingAll(io, "\n"); + continue; + } + if (mdn.contains(md_name)) { const mdnNode = if (!DEBUG) mdnProgress.start(md_name, 0); defer if (!DEBUG) mdnNode.end(); -- cgit 1.4.1