From 48e7f34efb506f231bdc5070cb44a360fbd83cf1 Mon Sep 17 00:00:00 2001 From: Squibid Date: Sun, 9 Nov 2025 23:32:48 -0500 Subject: [PATCH] only show comma after if the next numerical value is greater than 0 --- src/utils.zig | 35 +++++++++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/src/utils.zig b/src/utils.zig index 7bcf489..96e1d54 100644 --- a/src/utils.zig +++ b/src/utils.zig @@ -22,10 +22,37 @@ pub fn secs_to_time(secs: u64) ![]const u8 { const minutes = seconds / minute; seconds = seconds % minute; - if (weeks > 0) try writer.print("{} {s}{s}, ", .{weeks, "week", if (weeks > 1) "s" else ""}); - if (days > 0) try writer.print("{} {s}{s}, ", .{days, "day", if (days > 1) "s" else ""}); - if (hours > 0) try writer.print("{} {s}{s}, ", .{hours, "hour", if (hours > 1) "s" else ""}); - if (minutes > 0) try writer.print("{} {s}{s}", .{minutes, "minute", if (minutes > 1) "s" else ""}); + if (weeks > 0) { + try writer.print("{} {s}{s}{s}", .{ + weeks, + "week", + if (weeks > 1) "s" else "", + if (days > 0) ", " else "", + }); + } + if (days > 0) { + try writer.print("{} {s}{s}{s}", .{ + days, + "day", + if (days > 1) "s" else "", + if (hours > 0) ", " else "", + }); + } + if (hours > 0) { + try writer.print("{} {s}{s}{s}", .{ + hours, + "hour", + if (hours > 1) "s" else "", + if (minutes > 0) ", " else "", + }); + } + if (minutes > 0) { + try writer.print("{} {s}{s}", .{ + minutes, + "minute", + if (minutes > 1) "s" else "", + }); + } if (weeks == 0 and days == 0 and hours == 0 and minutes == 0) { try writer.print("{} {s}{s}", .{seconds, "second", if (seconds > 1) "s" else ""});