diff options
| author | t <t@tjp.lol> | 2026-06-09 15:24:41 -0600 |
|---|---|---|
| committer | t <t@tjp.lol> | 2026-06-09 19:26:07 -0600 |
| commit | f7503987e6aa4e96ade35bc7f1400ff8b2510e28 (patch) | |
| tree | cf723819027a918dc1d4f4b5b23805c9617dbc91 /src/tui_theme.zig | |
| parent | af5119901997774ef7d04b1940194ce54a5b35a4 (diff) | |
color theme
Diffstat (limited to 'src/tui_theme.zig')
| -rw-r--r-- | src/tui_theme.zig | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/tui_theme.zig b/src/tui_theme.zig index 168b4f4..9e7e565 100644 --- a/src/tui_theme.zig +++ b/src/tui_theme.zig @@ -48,6 +48,18 @@ pub const StyleName = enum { thinking, /// Compaction-summary chrome. compaction, + /// Full-width background for user messages (#343541 dark blue-gray). + user_bg, + /// Full-width background for a tool call that is still running (#282832). + tool_pending_bg, + /// Full-width background for a succeeded tool call (#283228 dark green). + tool_success_bg, + /// Full-width background for a failed tool call (#3c2828 dark red). + tool_error_bg, + /// Dim foreground used on top of user_bg (slightly brighter than .dim). + user_text, + /// Dim foreground used on tool headers (cyan toned down). + tool_header, }; /// A resolved style: the opening escape and (implicitly) the `reset` close. @@ -117,6 +129,17 @@ fn styleFor(name: StyleName) Style { .thinking => .{ .open_seq = "\x1b[2m" }, // Compaction chrome: dimmed. .compaction => .{ .open_seq = "\x1b[2m" }, + // Full-width background fills — truecolor 24-bit (RGB), matching pi's + // dark theme palette. These are set-background-color only; text color + // is layered on top by pairing with a fg style. + .user_bg => .{ .open_seq = "\x1b[48;2;52;53;65m" }, // #343541 + .tool_pending_bg => .{ .open_seq = "\x1b[48;2;40;40;50m" }, // #282832 + .tool_success_bg => .{ .open_seq = "\x1b[48;2;40;50;40m" }, // #283228 + .tool_error_bg => .{ .open_seq = "\x1b[48;2;60;40;40m" }, // #3c2828 + // Foreground color for text rendered on top of user_bg. + .user_text => .{ .open_seq = "\x1b[38;2;212;212;212m" }, // #d4d4d4 + // Cyan tool header, slightly muted. + .tool_header => .{ .open_seq = "\x1b[38;2;0;215;255m" }, // #00d7ff }; } |
