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 ""});