diff options
Diffstat (limited to 'src/cmd/dir.zig')
-rw-r--r-- | src/cmd/dir.zig | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/cmd/dir.zig b/src/cmd/dir.zig index d7e8d8e..1bd616c 100644 --- a/src/cmd/dir.zig +++ b/src/cmd/dir.zig @@ -159,15 +159,24 @@ pub const Dir = struct { defer ctx.allocator.free(short_name.name); defer ctx.allocator.free(short_name.ext); + // Create lowercase versions of name and extension + const lower_name_buf = try ctx.allocator.alloc(u8, short_name.name.len); + defer ctx.allocator.free(lower_name_buf); + const lower_name = std.ascii.lowerString(lower_name_buf, short_name.name); + + const lower_ext_buf = try ctx.allocator.alloc(u8, short_name.ext.len); + defer ctx.allocator.free(lower_ext_buf); + const lower_ext = std.ascii.lowerString(lower_ext_buf, short_name.ext); + switch (entry.kind) { .directory => { - try output_buffer.writer().print("{s:<8} {s:<3} <DIR> {s}\n", .{ short_name.name, short_name.ext, date_time }); + try output_buffer.writer().print("{s:<8} {s:<3} <DIR> {s}\n", .{ lower_name, lower_ext, date_time }); dir_count += 1; }, .file => { const formatted_size = try formatWithCommas(ctx.allocator, stat.size); defer ctx.allocator.free(formatted_size); - try output_buffer.writer().print("{s:<8} {s:<3} {s:>14} {s}\n", .{ short_name.name, short_name.ext, formatted_size, date_time }); + try output_buffer.writer().print("{s:<8} {s:<3} {s:>14} {s}\n", .{ lower_name, lower_ext, formatted_size, date_time }); file_count += 1; total_file_bytes += stat.size; }, |