mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-25 13:16:11 +03:00
remove dependency on Graphemes outside of unicode test/table
This commit is contained in:
@ -36,6 +36,15 @@ pub fn init(b: *std.Build, cfg: *const Config, deps: *const SharedDeps) !Unicode
|
||||
exe.root_module.addImport("ziglyph", dep.module("ziglyph"));
|
||||
}
|
||||
|
||||
// Add zg dependencies used just for unicode-test
|
||||
if (b.lazyDependency("zg", .{
|
||||
.target = cfg.target,
|
||||
.optimize = cfg.optimize,
|
||||
})) |dep| {
|
||||
exe.root_module.addImport("DisplayWidth", dep.module("DisplayWidth"));
|
||||
exe.root_module.addImport("Graphemes", dep.module("Graphemes"));
|
||||
}
|
||||
|
||||
// Add the old version of the unicode tables
|
||||
const old_unicode_tables = try UnicodeTables.init(b);
|
||||
old_unicode_tables.run.addArg("old");
|
||||
|
@ -416,12 +416,8 @@ pub fn add(
|
||||
.optimize = optimize,
|
||||
})) |dep| {
|
||||
step.root_module.addImport("CaseFolding", dep.module("CaseFolding"));
|
||||
if (self.config.emit_unicode_test) {
|
||||
step.root_module.addImport("DisplayWidth", dep.module("DisplayWidth"));
|
||||
}
|
||||
step.root_module.addImport("Emoji", dep.module("Emoji"));
|
||||
step.root_module.addImport("GeneralCategories", dep.module("GeneralCategories"));
|
||||
step.root_module.addImport("Graphemes", dep.module("Graphemes"));
|
||||
step.root_module.addImport("LetterCasing", dep.module("LetterCasing"));
|
||||
}
|
||||
if (b.lazyDependency("zf", .{
|
||||
|
@ -58,7 +58,7 @@ pub fn init(gpa: Allocator) !void {
|
||||
// defer {
|
||||
// const end = std.time.Instant.now() catch unreachable;
|
||||
// // "[updateFrame critical time] <START us>\t<TIME_TAKEN us>"
|
||||
// std.log.err("[sentry init time] start={}us duration={}ns", .{ start_micro, end.since(start) / std.time.ns_per_us });
|
||||
// std.log.err("[sentry init time] start={}us duration={}us", .{ start_micro, end.since(start) / std.time.ns_per_us });
|
||||
// }
|
||||
|
||||
// Must only start once
|
||||
|
@ -4,7 +4,7 @@ const Allocator = std.mem.Allocator;
|
||||
const Graphemes = @import("Graphemes");
|
||||
const font = @import("../main.zig");
|
||||
const terminal = @import("../../terminal/main.zig");
|
||||
const zg = &@import("../../global.zig").state.zg;
|
||||
const unicode = @import("../../unicode/main.zig");
|
||||
|
||||
const log = std.log.scoped(.font_shaper);
|
||||
|
||||
@ -112,7 +112,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: Graphemes.State = .{};
|
||||
var break_state: unicode.GraphemeBreakState = .{};
|
||||
var cp1: u21 = @intCast(codepoints[0]);
|
||||
|
||||
var start: usize = 0;
|
||||
@ -127,10 +127,9 @@ pub const Shaper = struct {
|
||||
const cp2: u21 = @intCast(codepoints[i]);
|
||||
defer cp1 = cp2;
|
||||
|
||||
break :blk Graphemes.graphemeBreak(
|
||||
break :blk unicode.graphemeBreak(
|
||||
cp1,
|
||||
cp2,
|
||||
zg.graphemes,
|
||||
&break_state,
|
||||
);
|
||||
};
|
||||
|
@ -13,7 +13,6 @@ const apprt = @import("apprt.zig");
|
||||
const CaseFolding = @import("CaseFolding");
|
||||
const Emoji = @import("Emoji");
|
||||
const GeneralCategories = @import("GeneralCategories");
|
||||
const Graphemes = @import("Graphemes");
|
||||
const LetterCasing = @import("LetterCasing");
|
||||
const unicode = @import("unicode/main.zig");
|
||||
|
||||
@ -232,7 +231,6 @@ pub const Zg = struct {
|
||||
case_folding: CaseFolding,
|
||||
emoji: Emoji,
|
||||
general_categories: GeneralCategories,
|
||||
graphemes: Graphemes,
|
||||
letter_casing: LetterCasing,
|
||||
|
||||
pub fn init(alloc: std.mem.Allocator) !Zg {
|
||||
@ -240,7 +238,6 @@ pub const Zg = struct {
|
||||
.case_folding = try CaseFolding.init(alloc),
|
||||
.emoji = try Emoji.init(alloc),
|
||||
.general_categories = try GeneralCategories.init(alloc),
|
||||
.graphemes = try Graphemes.init(alloc),
|
||||
.letter_casing = try LetterCasing.init(alloc),
|
||||
};
|
||||
}
|
||||
@ -249,7 +246,6 @@ pub const Zg = struct {
|
||||
self.case_folding.deinit(alloc);
|
||||
self.emoji.deinit(alloc);
|
||||
self.general_categories.deinit(alloc);
|
||||
self.graphemes.deinit(alloc);
|
||||
self.letter_casing.deinit(alloc);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user