From 8ff98446a9da7b723716fca4ad55685ddb29eb81 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Sat, 27 Aug 2022 10:55:10 -0700 Subject: [PATCH] sgr parsing bright colors now sets color properly --- src/terminal/sgr.zig | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/terminal/sgr.zig b/src/terminal/sgr.zig index 5c852e4e9..6d03bb66c 100644 --- a/src/terminal/sgr.zig +++ b/src/terminal/sgr.zig @@ -158,7 +158,8 @@ pub const Parser = struct { 49 => return Attribute{ .reset_bg = {} }, 90...97 => return Attribute{ - .@"8_bright_fg" = @intToEnum(color.Name, slice[0] - 90), + // 82 instead of 90 to offset to "bright" colors + .@"8_bright_fg" = @intToEnum(color.Name, slice[0] - 82), }, 100...107 => return Attribute{ @@ -228,7 +229,7 @@ test "sgr: inverse" { } test "sgr: 8 color" { - var p: Parser = .{ .params = &[_]u16{ 31, 43, 103 } }; + var p: Parser = .{ .params = &[_]u16{ 31, 43, 90, 103 } }; { const v = p.next().?; @@ -242,6 +243,12 @@ test "sgr: 8 color" { try testing.expect(v.@"8_bg" == .yellow); } + { + const v = p.next().?; + try testing.expect(v == .@"8_bright_fg"); + try testing.expect(v.@"8_bright_fg" == .bright_black); + } + { const v = p.next().?; try testing.expect(v == .@"8_bright_bg");