地圖 (Jido) is a lightweight Unix TUI file explorer designed for speed and simplicity.

fix: use self modified version of zuid until 0.15.2 fixes are merged into zuid:main

+20 -17
+7 -5
build.zig
··· 20 20 ) !*std.Build.Step.Compile { 21 21 const libvaxis = b.dependency("vaxis", .{ .target = target, .optimize = optimize }).module("vaxis"); 22 22 const fuzzig = b.dependency("fuzzig", .{ .target = target, .optimize = optimize }).module("fuzzig"); 23 - const zuid = b.dependency("zuid", .{ .target = target, .optimize = optimize }).module("zuid"); 24 23 const zeit = b.dependency("zeit", .{ .target = target, .optimize = optimize }).module("zeit"); 24 + const zuid = b.dependency("zuid", .{ .target = target, .optimize = optimize }).module("zuid"); 25 25 26 26 const exe = b.addExecutable(.{ 27 27 .name = exe_name, 28 - .root_source_file = b.path("src/main.zig"), 29 - .target = target, 30 - .optimize = optimize, 28 + .root_module = b.createModule(.{ 29 + .root_source_file = b.path("src/main.zig"), 30 + .target = target, 31 + .optimize = optimize, 32 + }), 31 33 }); 32 34 33 35 exe.root_module.addImport("options", build_options); 34 36 exe.root_module.addImport("vaxis", libvaxis); 35 37 exe.root_module.addImport("fuzzig", fuzzig); 36 - exe.root_module.addImport("zuid", zuid); 37 38 exe.root_module.addImport("zeit", zeit); 39 + exe.root_module.addImport("zuid", zuid); 38 40 39 41 return exe; 40 42 }
+11 -10
build.zig.zon
··· 6 6 7 7 .dependencies = .{ 8 8 .vaxis = .{ 9 - .url = "git+https://github.com/rockorager/libvaxis#1e24e0dfb509e974e1c8713bcd119d0ae032a8c7", 10 - .hash = "vaxis-0.1.0-BWNV_MHyCAARemSCSwwc3sA1etNgv7ge0BCIXspX6CZv", 9 + .url = "git+https://github.com/rockorager/libvaxis.git#75035b169e91a51c233f3742161f8eb8eafca659", 10 + .hash = "vaxis-0.5.1-BWNV_IE-CQBYmSf_boEKUyv6den0Gmj5LksxvdCx2pBL", 11 11 }, 12 12 .fuzzig = .{ 13 - .url = "git+https://github.com/fjebaker/fuzzig#44c04733c7c0fee3db83672aaaaf4ed03e943156", 14 - .hash = "fuzzig-0.1.1-AAAAALNIAQBmbHr-MPalGuR393Vem2pTQXI7_LXeNJgX", 13 + .url = "git+https://github.com/fjebaker/fuzzig#4251fe4230d38e721514394a485db62ee1667ff3", 14 + .hash = "fuzzig-0.1.1-Ji0xivxIAQBD0g8O_NV_0foqoPf3elsg9Sc3pNfdVH4D", 15 + }, 16 + .zeit = .{ 17 + .url = "git+https://github.com/rockorager/zeit#7ac64d72dbfb1a4ad549102e7d4e232a687d32d8", 18 + .hash = "zeit-0.6.0-5I6bk36tAgATpSl9wjFmRPMqYN2Mn0JQHgIcRNcqDpJA", 15 19 }, 20 + // Replace with KeithBrown39423/zuid once https://github.com/KeithBrown39423/zuid/pull/4 is merged 16 21 .zuid = .{ 17 - .url = "git+https://github.com/KeithBrown39423/zuid#b6129f6cee45bd90b7ac97b8839dc28d21bedcb2", 18 - .hash = "zuid-2.0.0-AAAAADxXAAA4MAzwwRhfZ9AC2FMPZ8hUrZbfpmJ_azpK", 19 - }, 20 - .zeit = .{ 21 - .url = "git+https://github.com/rockorager/zeit/#175cf91a641790799e9d676878a9fe814aaed134", 22 - .hash = "zeit-0.6.0-5I6bk5daAgC-P60TjxRqW0bYknfCGxJp-03eS9UjGrO7", 22 + .url = "https://github.com/BrookJeynes/zuid/archive/refs/heads/bj/2025-12-31/feat/0.15.1.tar.gz", 23 + .hash = "zuid-3.0.0-l7aPyUlXAAAk9BLSDm2roA3i78Sy6_GvQI4hwe0PHI_m", 23 24 }, 24 25 }, 25 26
+1 -1
src/environment.zig
··· 38 38 const extension = std.fs.path.extension(relative_path); 39 39 break :lbl try std.fmt.bufPrint( 40 40 buf, 41 - "{s}-{s}{s}", 41 + "{s}-{f}{s}", 42 42 .{ relative_path[0 .. relative_path.len - extension.len], zuid.new.v4(), extension }, 43 43 ); 44 44 } else lbl: {
+1 -1
src/events.zig
··· 49 49 return; 50 50 } 51 51 52 - const tmp_path = try std.fmt.allocPrint(app.alloc, "{s}/{s}-{s}", .{ trash_dir_path, entry.name, zuid.new.v4() }); 52 + const tmp_path = try std.fmt.allocPrint(app.alloc, "{s}/{s}-{f}", .{ trash_dir_path, entry.name, zuid.new.v4() }); 53 53 if (app.directories.dir.rename(entry.name, tmp_path)) { 54 54 if (app.actions.push(.{ 55 55 .delete = .{ .prev_path = prev_path_alloc, .new_path = tmp_path },