From c7fa1d8381f74c262517389af7c712341055f5e3 Mon Sep 17 00:00:00 2001 From: Jacob Sandlund Date: Sat, 23 Aug 2025 14:33:11 -0400 Subject: [PATCH] using uucode for the graphemeBreak in shaper/web_canvas.zig --- build.zig.zon | 8 ++------ src/build/SharedDeps.zig | 11 +---------- src/font/shaper/web_canvas.zig | 6 +++--- 3 files changed, 6 insertions(+), 19 deletions(-) diff --git a/build.zig.zon b/build.zig.zon index b164175c8..02f74ec0a 100644 --- a/build.zig.zon +++ b/build.zig.zon @@ -37,12 +37,8 @@ .lazy = true, }, .uucode = .{ - .url = "https://github.com/jacobsandlund/uucode/archive/7e2bde7c3cd90a5b754cd62b7d0059f70f5eea3f.tar.gz", - .hash = "uucode-0.0.0-ZZjBPn1iPwCsTwd680sxrXcqNZxA8r_EmnpMiP53h5a5", - }, - .uucode_x = .{ - .url = "https://github.com/jacobsandlund/uucode.x/archive/5964041fa51234a5d86dedda88f2af6bb9adf361.tar.gz", - .hash = "uucode_x-0.0.0-5_D0j200AAB5nu0QR5oQiceKujDN8C1WqMNlZiaxqNu0", + .url = "https://github.com/jacobsandlund/uucode/archive/38b82297e69a3b2dc55dc8df25f3851be37f9327.tar.gz", + .hash = "uucode-0.0.0-ZZjBPiqdPwB-rG3ieaq3c6tMpnksWYs4_rGj2IvFGjjB", }, .zig_wayland = .{ // codeberg ifreund/zig-wayland diff --git a/src/build/SharedDeps.zig b/src/build/SharedDeps.zig index 0170910c5..f338f8b98 100644 --- a/src/build/SharedDeps.zig +++ b/src/build/SharedDeps.zig @@ -25,8 +25,6 @@ pub fn init(b: *std.Build, cfg: *const Config) !SharedDeps { const uucode = b.dependency("uucode", .{ .build_config_path = b.path("src/build/uucode_config.zig"), }); - const uucode_x = b.dependency("uucode_x", .{}); - @import("uucode_x").connectBuild(uucode_x, uucode); break :blk uucode.namedLazyPath("tables.zig"); }; @@ -425,17 +423,10 @@ pub fn add( .target = target, .optimize = optimize, .@"tables.zig" = self.uucode_tables_zig, + .build_config_path = b.path("src/build/uucode_config.zig"), })) |dep| { step.root_module.addImport("uucode", dep.module("uucode")); } - if (b.lazyDependency("uucode_x", .{ - .target = target, - .optimize = optimize, - })) |dep| { - const mod = dep.module("uucode.x"); - step.root_module.addImport("uucode.x", mod); - mod.addImport("root_module", step.root_module); - } if (b.lazyDependency("zf", .{ .target = target, .optimize = optimize, diff --git a/src/font/shaper/web_canvas.zig b/src/font/shaper/web_canvas.zig index 6cf53073a..c41262238 100644 --- a/src/font/shaper/web_canvas.zig +++ b/src/font/shaper/web_canvas.zig @@ -3,7 +3,7 @@ const assert = std.debug.assert; const Allocator = std.mem.Allocator; const font = @import("../main.zig"); const terminal = @import("../../terminal/main.zig"); -const uucode_x = @import("uucode.x"); +const uucode = @import("uucode"); const log = std.log.scoped(.font_shaper); @@ -111,7 +111,7 @@ pub const Shaper = struct { // font ligatures. However, we do support grapheme clustering. // This means we can render things like skin tone emoji but // we can't render things like single glyph "=>". - var break_state: uucode_x.GraphemeBreakState = .default; + var break_state: uucode.GraphemeBreakState = .default; var cp1: u21 = @intCast(codepoints[0]); var start: usize = 0; @@ -126,7 +126,7 @@ pub const Shaper = struct { const cp2: u21 = @intCast(codepoints[i]); defer cp1 = cp2; - break :blk uucode_x.graphemeBreakXEmoji( + break :blk uucode.graphemeBreak( cp1, cp2, &break_state,