Add more terminal colors to the theme (#4168)

Marshall Bowers created

This PR adds more terminal colors that were present in the Zed1 themes
to the Zed2 theme.

Namely, we now have the `dim_` variants for the various ANSI colors and
various `foreground` colors.

Release Notes:

- Improved terminal colors.

Change summary

crates/terminal/src/terminal.rs              |  48 -
crates/terminal_view/src/terminal_element.rs |  62 +-
crates/theme/src/default_colors.rs           |  38 +
crates/theme/src/one_themes.rs               |  11 
crates/theme/src/styles/colors.rs            |  73 +-
crates/theme/src/themes/andromeda.rs         |  27 
crates/theme/src/themes/atelier.rs           | 540 +++++++++++++++------
crates/theme/src/themes/ayu.rs               |  81 ++
crates/theme/src/themes/gruvbox.rs           | 162 ++++-
crates/theme/src/themes/one.rs               |  54 +
crates/theme/src/themes/rose_pine.rs         |  81 ++
crates/theme/src/themes/sandcastle.rs        |  27 
crates/theme/src/themes/solarized.rs         |  54 +
crates/theme/src/themes/summercamp.rs        |  27 
crates/theme_importer/src/theme_printer.rs   |  33 +
crates/theme_importer/src/zed1/converter.rs  |  27 
16 files changed, 926 insertions(+), 419 deletions(-)

Detailed changes

crates/terminal/src/terminal.rs 🔗

@@ -52,9 +52,9 @@ use std::{
 use thiserror::Error;
 
 use gpui::{
-    actions, black, px, red, AnyWindowHandle, AppContext, Bounds, ClipboardItem, EventEmitter,
-    Hsla, Keystroke, ModelContext, Modifiers, MouseButton, MouseDownEvent, MouseMoveEvent,
-    MouseUpEvent, Pixels, Point, Rgba, ScrollWheelEvent, Size, Task, TouchPhase,
+    actions, black, px, AnyWindowHandle, AppContext, Bounds, ClipboardItem, EventEmitter, Hsla,
+    Keystroke, ModelContext, Modifiers, MouseButton, MouseDownEvent, MouseMoveEvent, MouseUpEvent,
+    Pixels, Point, Rgba, ScrollWheelEvent, Size, Task, TouchPhase,
 };
 
 use crate::mappings::{colors::to_alac_rgb, keys::to_esc_str};
@@ -1380,7 +1380,7 @@ pub fn get_color_at_index(index: usize, theme: &Theme) -> Hsla {
     let colors = theme.colors();
 
     match index {
-        //0-15 are the same as the named colors above
+        // 0-15 are the same as the named colors above
         0 => colors.terminal_ansi_black,
         1 => colors.terminal_ansi_red,
         2 => colors.terminal_ansi_green,
@@ -1397,34 +1397,32 @@ pub fn get_color_at_index(index: usize, theme: &Theme) -> Hsla {
         13 => colors.terminal_ansi_bright_magenta,
         14 => colors.terminal_ansi_bright_cyan,
         15 => colors.terminal_ansi_bright_white,
-        //16-231 are mapped to their RGB colors on a 0-5 range per channel
+        // 16-231 are mapped to their RGB colors on a 0-5 range per channel
         16..=231 => {
-            let (r, g, b) = rgb_for_index(&(index as u8)); //Split the index into it's ANSI-RGB components
-            let step = (u8::MAX as f32 / 5.).floor() as u8; //Split the RGB range into 5 chunks, with floor so no overflow
-            rgba_color(r * step, g * step, b * step) //Map the ANSI-RGB components to an RGB color
+            let (r, g, b) = rgb_for_index(&(index as u8)); // Split the index into it's ANSI-RGB components
+            let step = (u8::MAX as f32 / 5.).floor() as u8; // Split the RGB range into 5 chunks, with floor so no overflow
+            rgba_color(r * step, g * step, b * step) // Map the ANSI-RGB components to an RGB color
         }
-        //232-255 are a 24 step grayscale from black to white
+        // 232-255 are a 24 step grayscale from black to white
         232..=255 => {
-            let i = index as u8 - 232; //Align index to 0..24
-            let step = (u8::MAX as f32 / 24.).floor() as u8; //Split the RGB grayscale values into 24 chunks
-            rgba_color(i * step, i * step, i * step) //Map the ANSI-grayscale components to the RGB-grayscale
+            let i = index as u8 - 232; // Align index to 0..24
+            let step = (u8::MAX as f32 / 24.).floor() as u8; // Split the RGB grayscale values into 24 chunks
+            rgba_color(i * step, i * step, i * step) // Map the ANSI-grayscale components to the RGB-grayscale
         }
-        //For compatibility with the alacritty::Colors interface
+        // For compatibility with the alacritty::Colors interface
         256 => colors.text,
         257 => colors.background,
         258 => theme.players().local().cursor,
-
-        // todo!(more colors)
-        259 => red(),                      //style.dim_black,
-        260 => red(),                      //style.dim_red,
-        261 => red(),                      //style.dim_green,
-        262 => red(),                      //style.dim_yellow,
-        263 => red(),                      //style.dim_blue,
-        264 => red(),                      //style.dim_magenta,
-        265 => red(),                      //style.dim_cyan,
-        266 => red(),                      //style.dim_white,
-        267 => red(),                      //style.bright_foreground,
-        268 => colors.terminal_ansi_black, //'Dim Background', non-standard color
+        259 => colors.terminal_ansi_dim_black,
+        260 => colors.terminal_ansi_dim_red,
+        261 => colors.terminal_ansi_dim_green,
+        262 => colors.terminal_ansi_dim_yellow,
+        263 => colors.terminal_ansi_dim_blue,
+        264 => colors.terminal_ansi_dim_magenta,
+        265 => colors.terminal_ansi_dim_cyan,
+        266 => colors.terminal_ansi_dim_white,
+        267 => colors.terminal_bright_foreground,
+        268 => colors.terminal_ansi_black, // 'Dim Background', non-standard color
 
         _ => black(),
     }

crates/terminal_view/src/terminal_element.rs 🔗

@@ -1,12 +1,11 @@
 use editor::{Cursor, HighlightedRange, HighlightedRangeLine};
 use gpui::{
-    div, fill, point, px, red, relative, AnyElement, AsyncWindowContext, AvailableSpace,
-    BorrowWindow, Bounds, DispatchPhase, Element, ElementId, FocusHandle, Font, FontStyle,
-    FontWeight, HighlightStyle, Hsla, InteractiveBounds, InteractiveElement,
-    InteractiveElementState, Interactivity, IntoElement, LayoutId, Model, ModelContext,
-    ModifiersChangedEvent, MouseButton, MouseMoveEvent, Pixels, PlatformInputHandler, Point,
-    ShapedLine, StatefulInteractiveElement, Styled, TextRun, TextStyle, TextSystem, UnderlineStyle,
-    WeakView, WhiteSpace, WindowContext,
+    div, fill, point, px, relative, AnyElement, AsyncWindowContext, AvailableSpace, BorrowWindow,
+    Bounds, DispatchPhase, Element, ElementId, FocusHandle, Font, FontStyle, FontWeight,
+    HighlightStyle, Hsla, InteractiveBounds, InteractiveElement, InteractiveElementState,
+    Interactivity, IntoElement, LayoutId, Model, ModelContext, ModifiersChangedEvent, MouseButton,
+    MouseMoveEvent, Pixels, PlatformInputHandler, Point, ShapedLine, StatefulInteractiveElement,
+    Styled, TextRun, TextStyle, TextSystem, UnderlineStyle, WeakView, WhiteSpace, WindowContext,
 };
 use itertools::Itertools;
 use language::CursorShape;
@@ -29,7 +28,7 @@ use workspace::Workspace;
 use std::mem;
 use std::{fmt::Debug, ops::RangeInclusive};
 
-///The information generated during layout that is necessary for painting
+/// The information generated during layout that is necessary for painting.
 pub struct LayoutState {
     cells: Vec<LayoutCell>,
     rects: Vec<LayoutRect>,
@@ -43,7 +42,7 @@ pub struct LayoutState {
     gutter: Pixels,
 }
 
-///Helper struct for converting data between alacritty's cursor points, and displayed cursor points
+/// Helper struct for converting data between Alacritty's cursor points, and displayed cursor points.
 struct DisplayCursor {
     line: i32,
     col: usize,
@@ -139,8 +138,8 @@ impl LayoutRect {
     }
 }
 
-///The GPUI element that paints the terminal.
-///We need to keep a reference to the view for mouse events, do we need it for any other terminal stuff, or can we move that to connection?
+/// The GPUI element that paints the terminal.
+/// We need to keep a reference to the view for mouse events, do we need it for any other terminal stuff, or can we move that to connection?
 pub struct TerminalElement {
     terminal: Model<Terminal>,
     workspace: WeakView<Workspace>,
@@ -278,8 +277,8 @@ impl TerminalElement {
         (cells, rects)
     }
 
-    // Compute the cursor position and expected block width, may return a zero width if x_for_index returns
-    // the same position for sequential indexes. Use em_width instead
+    /// Computes the cursor position and expected block width, may return a zero width if x_for_index returns
+    /// the same position for sequential indexes. Use em_width instead
     fn shape_cursor(
         cursor_point: DisplayCursor,
         size: TerminalSize,
@@ -306,7 +305,7 @@ impl TerminalElement {
         }
     }
 
-    /// Convert the Alacritty cell styles to GPUI text styles and background color
+    /// Converts the Alacritty cell styles to GPUI text styles and background color.
     fn cell_style(
         indexed: &IndexedCell,
         fg: terminal::alacritty_terminal::ansi::Color,
@@ -506,8 +505,8 @@ impl TerminalElement {
             cx,
         );
 
-        //Layout cursor. Rectangle is used for IME, so we should lay it out even
-        //if we don't end up showing it.
+        // Layout cursor. Rectangle is used for IME, so we should lay it out even
+        // if we don't end up showing it.
         let cursor = if let AlacCursorShape::Hidden = cursor.shape {
             None
         } else {
@@ -556,7 +555,6 @@ impl TerminalElement {
             )
         };
 
-        //Done!
         LayoutState {
             cells,
             cursor,
@@ -991,11 +989,11 @@ fn to_highlighted_range_lines(
     Some((start_y, highlighted_range_lines))
 }
 
-///Converts a 2, 8, or 24 bit color ANSI color to the GPUI equivalent
+/// Converts a 2, 8, or 24 bit color ANSI color to the GPUI equivalent.
 fn convert_color(fg: &terminal::alacritty_terminal::ansi::Color, theme: &Theme) -> Hsla {
     let colors = theme.colors();
     match fg {
-        //Named and theme defined colors
+        // Named and theme defined colors
         terminal::alacritty_terminal::ansi::Color::Named(n) => match n {
             NamedColor::Black => colors.terminal_ansi_black,
             NamedColor::Red => colors.terminal_ansi_red,
@@ -1016,24 +1014,22 @@ fn convert_color(fg: &terminal::alacritty_terminal::ansi::Color, theme: &Theme)
             NamedColor::Foreground => colors.text,
             NamedColor::Background => colors.background,
             NamedColor::Cursor => theme.players().local().cursor,
-
-            // todo!(more colors)
-            NamedColor::DimBlack => red(),
-            NamedColor::DimRed => red(),
-            NamedColor::DimGreen => red(),
-            NamedColor::DimYellow => red(),
-            NamedColor::DimBlue => red(),
-            NamedColor::DimMagenta => red(),
-            NamedColor::DimCyan => red(),
-            NamedColor::DimWhite => red(),
-            NamedColor::BrightForeground => red(),
-            NamedColor::DimForeground => red(),
+            NamedColor::DimBlack => colors.terminal_ansi_dim_black,
+            NamedColor::DimRed => colors.terminal_ansi_dim_red,
+            NamedColor::DimGreen => colors.terminal_ansi_dim_green,
+            NamedColor::DimYellow => colors.terminal_ansi_dim_yellow,
+            NamedColor::DimBlue => colors.terminal_ansi_dim_blue,
+            NamedColor::DimMagenta => colors.terminal_ansi_dim_magenta,
+            NamedColor::DimCyan => colors.terminal_ansi_dim_cyan,
+            NamedColor::DimWhite => colors.terminal_ansi_dim_white,
+            NamedColor::BrightForeground => colors.terminal_bright_foreground,
+            NamedColor::DimForeground => colors.terminal_dim_foreground,
         },
-        //'True' colors
+        // 'True' colors
         terminal::alacritty_terminal::ansi::Color::Spec(rgb) => {
             terminal::rgba_color(rgb.r, rgb.g, rgb.b)
         }
-        //8 bit, indexed colors
+        // 8 bit, indexed colors
         terminal::alacritty_terminal::ansi::Color::Indexed(i) => {
             terminal::get_color_at_index(*i as usize, theme)
         }

crates/theme/src/default_colors.rs 🔗

@@ -77,6 +77,9 @@ impl ThemeColors {
             editor_document_highlight_read_background: neutral().light_alpha().step_3(),
             editor_document_highlight_write_background: neutral().light_alpha().step_4(),
             terminal_background: neutral().light().step_1(),
+            terminal_foreground: black().light().step_12(),
+            terminal_bright_foreground: black().light().step_11(),
+            terminal_dim_foreground: black().light().step_10(),
             terminal_ansi_bright_black: black().light().step_11(),
             terminal_ansi_bright_red: red().light().step_10(),
             terminal_ansi_bright_green: green().light().step_10(),
@@ -93,6 +96,14 @@ impl ThemeColors {
             terminal_ansi_magenta: violet().light().step_11(),
             terminal_ansi_cyan: cyan().light().step_11(),
             terminal_ansi_white: neutral().light().step_12(),
+            terminal_ansi_dim_black: black().light().step_11(),
+            terminal_ansi_dim_red: red().light().step_10(),
+            terminal_ansi_dim_green: green().light().step_10(),
+            terminal_ansi_dim_yellow: yellow().light().step_10(),
+            terminal_ansi_dim_blue: blue().light().step_10(),
+            terminal_ansi_dim_magenta: violet().light().step_10(),
+            terminal_ansi_dim_cyan: cyan().light().step_10(),
+            terminal_ansi_dim_white: neutral().light().step_11(),
             link_text_hover: orange().light().step_10(),
         }
     }
@@ -160,22 +171,33 @@ impl ThemeColors {
             editor_document_highlight_read_background: neutral().dark_alpha().step_4(),
             editor_document_highlight_write_background: neutral().dark_alpha().step_4(),
             terminal_background: neutral().dark().step_1(),
-            terminal_ansi_bright_black: black().dark().step_11(),
-            terminal_ansi_bright_red: red().dark().step_10(),
-            terminal_ansi_bright_green: green().dark().step_10(),
-            terminal_ansi_bright_yellow: yellow().dark().step_10(),
-            terminal_ansi_bright_blue: blue().dark().step_10(),
-            terminal_ansi_bright_magenta: violet().dark().step_10(),
-            terminal_ansi_bright_cyan: cyan().dark().step_10(),
-            terminal_ansi_bright_white: neutral().dark().step_11(),
+            terminal_foreground: white().dark().step_12(),
+            terminal_bright_foreground: white().dark().step_11(),
+            terminal_dim_foreground: white().dark().step_10(),
             terminal_ansi_black: black().dark().step_12(),
+            terminal_ansi_bright_black: black().dark().step_11(),
+            terminal_ansi_dim_black: black().dark().step_10(),
             terminal_ansi_red: red().dark().step_11(),
+            terminal_ansi_bright_red: red().dark().step_10(),
+            terminal_ansi_dim_red: red().dark().step_9(),
             terminal_ansi_green: green().dark().step_11(),
+            terminal_ansi_bright_green: green().dark().step_10(),
+            terminal_ansi_dim_green: green().dark().step_9(),
             terminal_ansi_yellow: yellow().dark().step_11(),
+            terminal_ansi_bright_yellow: yellow().dark().step_10(),
+            terminal_ansi_dim_yellow: yellow().dark().step_9(),
             terminal_ansi_blue: blue().dark().step_11(),
+            terminal_ansi_bright_blue: blue().dark().step_10(),
+            terminal_ansi_dim_blue: blue().dark().step_9(),
             terminal_ansi_magenta: violet().dark().step_11(),
+            terminal_ansi_bright_magenta: violet().dark().step_10(),
+            terminal_ansi_dim_magenta: violet().dark().step_9(),
             terminal_ansi_cyan: cyan().dark().step_11(),
+            terminal_ansi_bright_cyan: cyan().dark().step_10(),
+            terminal_ansi_dim_cyan: cyan().dark().step_9(),
             terminal_ansi_white: neutral().dark().step_12(),
+            terminal_ansi_bright_white: neutral().dark().step_11(),
+            terminal_ansi_dim_white: neutral().dark().step_10(),
             link_text_hover: orange().dark().step_10(),
         }
     }

crates/theme/src/one_themes.rs 🔗

@@ -101,6 +101,9 @@ pub(crate) fn one_dark() -> Theme {
 
                 terminal_background: bg,
                 // todo!("Use one colors for terminal")
+                terminal_foreground: crate::white().dark().step_12(),
+                terminal_bright_foreground: crate::white().dark().step_11(),
+                terminal_dim_foreground: crate::white().dark().step_10(),
                 terminal_ansi_black: crate::black().dark().step_12(),
                 terminal_ansi_red: crate::red().dark().step_11(),
                 terminal_ansi_green: crate::green().dark().step_11(),
@@ -117,6 +120,14 @@ pub(crate) fn one_dark() -> Theme {
                 terminal_ansi_bright_magenta: crate::violet().dark().step_10(),
                 terminal_ansi_bright_cyan: crate::cyan().dark().step_10(),
                 terminal_ansi_bright_white: crate::neutral().dark().step_11(),
+                terminal_ansi_dim_black: crate::black().dark().step_10(),
+                terminal_ansi_dim_red: crate::red().dark().step_9(),
+                terminal_ansi_dim_green: crate::green().dark().step_9(),
+                terminal_ansi_dim_yellow: crate::yellow().dark().step_9(),
+                terminal_ansi_dim_blue: crate::blue().dark().step_9(),
+                terminal_ansi_dim_magenta: crate::violet().dark().step_9(),
+                terminal_ansi_dim_cyan: crate::cyan().dark().step_9(),
+                terminal_ansi_dim_white: crate::neutral().dark().step_10(),
                 panel_background: bg,
                 panel_focused_border: blue,
                 pane_focused_border: blue,

crates/theme/src/styles/colors.rs 🔗

@@ -169,40 +169,63 @@ pub struct ThemeColors {
     // ===
     // Terminal
     // ===
-    /// Terminal Background Color
+    /// Terminal background color.
     pub terminal_background: Hsla,
-    /// Bright Black Color for ANSI Terminal
-    pub terminal_ansi_bright_black: Hsla,
-    /// Bright Red Color for ANSI Terminal
-    pub terminal_ansi_bright_red: Hsla,
-    /// Bright Green Color for ANSI Terminal
-    pub terminal_ansi_bright_green: Hsla,
-    /// Bright Yellow Color for ANSI Terminal
-    pub terminal_ansi_bright_yellow: Hsla,
-    /// Bright Blue Color for ANSI Terminal
-    pub terminal_ansi_bright_blue: Hsla,
-    /// Bright Magenta Color for ANSI Terminal
-    pub terminal_ansi_bright_magenta: Hsla,
-    /// Bright Cyan Color for ANSI Terminal
-    pub terminal_ansi_bright_cyan: Hsla,
-    /// Bright White Color for ANSI Terminal
-    pub terminal_ansi_bright_white: Hsla,
-    /// Black Color for ANSI Terminal
+    /// Terminal foreground color.
+    pub terminal_foreground: Hsla,
+    /// Bright terminal foreground color.
+    pub terminal_bright_foreground: Hsla,
+    /// Dim terminal foreground color.
+    pub terminal_dim_foreground: Hsla,
+
+    /// Black ANSI terminal color.
     pub terminal_ansi_black: Hsla,
-    /// Red Color for ANSI Terminal
+    /// Bright black ANSI terminal color.
+    pub terminal_ansi_bright_black: Hsla,
+    /// Dim black ANSI terminal color.
+    pub terminal_ansi_dim_black: Hsla,
+    /// Red ANSI terminal color.
     pub terminal_ansi_red: Hsla,
-    /// Green Color for ANSI Terminal
+    /// Bright red ANSI terminal color.
+    pub terminal_ansi_bright_red: Hsla,
+    /// Dim red ANSI terminal color.
+    pub terminal_ansi_dim_red: Hsla,
+    /// Green ANSI terminal color.
     pub terminal_ansi_green: Hsla,
-    /// Yellow Color for ANSI Terminal
+    /// Bright green ANSI terminal color.
+    pub terminal_ansi_bright_green: Hsla,
+    /// Dim green ANSI terminal color.
+    pub terminal_ansi_dim_green: Hsla,
+    /// Yellow ANSI terminal color.
     pub terminal_ansi_yellow: Hsla,
-    /// Blue Color for ANSI Terminal
+    /// Bright yellow ANSI terminal color.
+    pub terminal_ansi_bright_yellow: Hsla,
+    /// Dim yellow ANSI terminal color.
+    pub terminal_ansi_dim_yellow: Hsla,
+    /// Blue ANSI terminal color.
     pub terminal_ansi_blue: Hsla,
-    /// Magenta Color for ANSI Terminal
+    /// Bright blue ANSI terminal color.
+    pub terminal_ansi_bright_blue: Hsla,
+    /// Dim blue ANSI terminal color.
+    pub terminal_ansi_dim_blue: Hsla,
+    /// Magenta ANSI terminal color.
     pub terminal_ansi_magenta: Hsla,
-    /// Cyan Color for ANSI Terminal
+    /// Bright magenta ANSI terminal color.
+    pub terminal_ansi_bright_magenta: Hsla,
+    /// Dim magenta ANSI terminal color.
+    pub terminal_ansi_dim_magenta: Hsla,
+    /// Cyan ANSI terminal color.
     pub terminal_ansi_cyan: Hsla,
-    /// White Color for ANSI Terminal
+    /// Bright cyan ANSI terminal color.
+    pub terminal_ansi_bright_cyan: Hsla,
+    /// Dim cyan ANSI terminal color.
+    pub terminal_ansi_dim_cyan: Hsla,
+    /// White ANSI terminal color.
     pub terminal_ansi_white: Hsla,
+    /// Bright white ANSI terminal color.
+    pub terminal_ansi_bright_white: Hsla,
+    /// Dim white ANSI terminal color.
+    pub terminal_ansi_dim_white: Hsla,
 
     // ===
     // UI/Rich Text

crates/theme/src/themes/andromeda.rs 🔗

@@ -75,22 +75,33 @@ pub fn andromeda() -> UserThemeFamily {
                     editor_document_highlight_read_background: Some(rgba(0x11a7931a).into()),
                     editor_document_highlight_write_background: Some(rgba(0x64646d66).into()),
                     terminal_background: Some(rgba(0x1e2025ff).into()),
-                    terminal_ansi_bright_black: Some(rgba(0x40434cff).into()),
-                    terminal_ansi_bright_red: Some(rgba(0x8e103aff).into()),
-                    terminal_ansi_bright_green: Some(rgba(0x457c38ff).into()),
-                    terminal_ansi_bright_yellow: Some(rgba(0x958435ff).into()),
-                    terminal_ansi_bright_blue: Some(rgba(0x1b5148ff).into()),
-                    terminal_ansi_bright_magenta: Some(rgba(0x682781ff).into()),
-                    terminal_ansi_bright_cyan: Some(rgba(0x018169ff).into()),
-                    terminal_ansi_bright_white: Some(rgba(0xf7f7f8ff).into()),
+                    terminal_foreground: Some(rgba(0xf7f7f8ff).into()),
+                    terminal_bright_foreground: Some(rgba(0xf7f7f8ff).into()),
+                    terminal_dim_foreground: Some(rgba(0x1e2025ff).into()),
                     terminal_ansi_black: Some(rgba(0x1e2025ff).into()),
+                    terminal_ansi_bright_black: Some(rgba(0x40434cff).into()),
+                    terminal_ansi_dim_black: Some(rgba(0xf7f7f8ff).into()),
                     terminal_ansi_red: Some(rgba(0xf82872ff).into()),
+                    terminal_ansi_bright_red: Some(rgba(0x8e103aff).into()),
+                    terminal_ansi_dim_red: Some(rgba(0xffa3b6ff).into()),
                     terminal_ansi_green: Some(rgba(0x96df72ff).into()),
+                    terminal_ansi_bright_green: Some(rgba(0x457c38ff).into()),
+                    terminal_ansi_dim_green: Some(rgba(0xcef0b9ff).into()),
                     terminal_ansi_yellow: Some(rgba(0xfee56dff).into()),
+                    terminal_ansi_bright_yellow: Some(rgba(0x958435ff).into()),
+                    terminal_ansi_dim_yellow: Some(rgba(0xfff2b8ff).into()),
                     terminal_ansi_blue: Some(rgba(0x11a793ff).into()),
+                    terminal_ansi_bright_blue: Some(rgba(0x1b5148ff).into()),
+                    terminal_ansi_dim_blue: Some(rgba(0x9cd4c8ff).into()),
                     terminal_ansi_magenta: Some(rgba(0xc74decff).into()),
+                    terminal_ansi_bright_magenta: Some(rgba(0x682781ff).into()),
+                    terminal_ansi_dim_magenta: Some(rgba(0xe8abf7ff).into()),
                     terminal_ansi_cyan: Some(rgba(0x09e7c6ff).into()),
+                    terminal_ansi_bright_cyan: Some(rgba(0x018169ff).into()),
+                    terminal_ansi_dim_cyan: Some(rgba(0xaaf5e2ff).into()),
                     terminal_ansi_white: Some(rgba(0xf7f7f8ff).into()),
+                    terminal_ansi_bright_white: Some(rgba(0xf7f7f8ff).into()),
+                    terminal_ansi_dim_white: Some(rgba(0x88868dff).into()),
                     link_text_hover: Some(rgba(0x11a793ff).into()),
                     ..Default::default()
                 },

crates/theme/src/themes/atelier.rs 🔗

@@ -76,22 +76,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x576dda1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x726c7a66).into()),
                         terminal_background: Some(rgba(0x19171cff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x635d6bff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x5c283cff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x1f4747ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x4e3821ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x2d376fff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x60255bff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x26445eff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xefecf4ff).into()),
+                        terminal_foreground: Some(rgba(0xefecf4ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xefecf4ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x19171cff).into()),
                         terminal_ansi_black: Some(rgba(0x19171cff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x635d6bff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xefecf4ff).into()),
                         terminal_ansi_red: Some(rgba(0xbe4678ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x5c283cff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xe3a4b9ff).into()),
                         terminal_ansi_green: Some(rgba(0x2c9292ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x1f4747ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x9dc8c8ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xa06e3bff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x4e3821ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xd4b499ff).into()),
                         terminal_ansi_blue: Some(rgba(0x576ddaff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x2d376fff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xb3b3eeff).into()),
                         terminal_ansi_magenta: Some(rgba(0xbf41bfff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x60255bff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xe3a4dfff).into()),
                         terminal_ansi_cyan: Some(rgba(0x3a8bc6ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x26445eff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xa6c4e3ff).into()),
                         terminal_ansi_white: Some(rgba(0xefecf4ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xefecf4ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x807b89ff).into()),
                         link_text_hover: Some(rgba(0x576ddaff).into()),
                         ..Default::default()
                     },
@@ -541,22 +552,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x586dda1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x726c7a66).into()),
                         terminal_background: Some(rgba(0xefecf4ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x807b89ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xe3a4b9ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x9dc8c8ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xd4b499ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xb3b3eeff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xe3a4dfff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0xa6c4e3ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x19171cff).into()),
+                        terminal_foreground: Some(rgba(0x19171cff).into()),
+                        terminal_bright_foreground: Some(rgba(0x19171cff).into()),
+                        terminal_dim_foreground: Some(rgba(0xefecf4ff).into()),
                         terminal_ansi_black: Some(rgba(0xefecf4ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x807b89ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x19171cff).into()),
                         terminal_ansi_red: Some(rgba(0xbe4778ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xe3a4b9ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x5c283cff).into()),
                         terminal_ansi_green: Some(rgba(0x2c9292ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x9dc8c8ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x1f4747ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xa06e3cff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xd4b499ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x4e3821ff).into()),
                         terminal_ansi_blue: Some(rgba(0x586ddaff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xb3b3eeff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x2d376fff).into()),
                         terminal_ansi_magenta: Some(rgba(0xbf41bfff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xe3a4dfff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x60255bff).into()),
                         terminal_ansi_cyan: Some(rgba(0x3b8bc6ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0xa6c4e3ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x26445eff).into()),
                         terminal_ansi_white: Some(rgba(0x19171cff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x19171cff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x635d6bff).into()),
                         link_text_hover: Some(rgba(0x586ddaff).into()),
                         ..Default::default()
                     },
@@ -1006,22 +1028,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x6684e01a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x8b887466).into()),
                         terminal_background: Some(rgba(0x20201dff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x7a7766ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x781c1fff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x335322ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x574815ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x334173ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x721d2bff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x1e5341ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xfefbecff).into()),
+                        terminal_foreground: Some(rgba(0xfefbecff).into()),
+                        terminal_bright_foreground: Some(rgba(0xfefbecff).into()),
+                        terminal_dim_foreground: Some(rgba(0x20201dff).into()),
                         terminal_ansi_black: Some(rgba(0x20201dff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x7a7766ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xfefbecff).into()),
                         terminal_ansi_red: Some(rgba(0xd73837ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x781c1fff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xf7a195ff).into()),
                         terminal_ansi_green: Some(rgba(0x60ac3aff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x335322ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xb3d69cff).into()),
                         terminal_ansi_yellow: Some(rgba(0xae9515ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x574815ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xdcc98eff).into()),
                         terminal_ansi_blue: Some(rgba(0x6684e0ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x334173ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xb8c0f1ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xd43652ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x721d2bff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xf3a0a4ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x21ad83ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x1e5341ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x9ed7c0ff).into()),
                         terminal_ansi_white: Some(rgba(0xfefbecff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xfefbecff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x9b9782ff).into()),
                         link_text_hover: Some(rgba(0x6684e0ff).into()),
                         ..Default::default()
                     },
@@ -1471,22 +1504,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x6784e01a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x8b887466).into()),
                         terminal_background: Some(rgba(0xfefbecff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x9b9782ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xf7a195ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xb3d69cff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xdcc98eff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xb8c0f1ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xf3a0a4ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9ed7c0ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x20201dff).into()),
+                        terminal_foreground: Some(rgba(0x20201dff).into()),
+                        terminal_bright_foreground: Some(rgba(0x20201dff).into()),
+                        terminal_dim_foreground: Some(rgba(0xfefbecff).into()),
                         terminal_ansi_black: Some(rgba(0xfefbecff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x9b9782ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x20201dff).into()),
                         terminal_ansi_red: Some(rgba(0xd73838ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xf7a195ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x781c1fff).into()),
                         terminal_ansi_green: Some(rgba(0x61ac3aff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xb3d69cff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x335322ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xae9515ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xdcc98eff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x574815ff).into()),
                         terminal_ansi_blue: Some(rgba(0x6784e0ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xb8c0f1ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x334173ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xd43753ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xf3a0a4ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x721d2bff).into()),
                         terminal_ansi_cyan: Some(rgba(0x22ad83ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9ed7c0ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x1e5341ff).into()),
                         terminal_ansi_white: Some(rgba(0x20201dff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x20201dff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x7a7766ff).into()),
                         link_text_hover: Some(rgba(0x6784e0ff).into()),
                         ..Default::default()
                     },
@@ -1936,22 +1980,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x37a1661a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x7a786766).into()),
                         terminal_background: Some(rgba(0x22221bff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x6a6958ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x5c331fff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x3f491aff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x514a14ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x234e34ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x4c373eff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x314c27ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xf4f3ecff).into()),
+                        terminal_foreground: Some(rgba(0xf4f3ecff).into()),
+                        terminal_bright_foreground: Some(rgba(0xf4f3ecff).into()),
+                        terminal_dim_foreground: Some(rgba(0x22221bff).into()),
                         terminal_ansi_black: Some(rgba(0x22221bff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x6a6958ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xf4f3ecff).into()),
                         terminal_ansi_red: Some(rgba(0xba6237ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x5c331fff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xe4af96ff).into()),
                         terminal_ansi_green: Some(rgba(0x7d9727ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x3f491aff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xc0ca93ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xa59810ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x514a14ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xd7ca8dff).into()),
                         terminal_ansi_blue: Some(rgba(0x37a166ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x234e34ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xa0d1b0ff).into()),
                         terminal_ansi_magenta: Some(rgba(0x9d6c7cff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x4c373eff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xcfb4bcff).into()),
                         terminal_ansi_cyan: Some(rgba(0x5b9d48ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x314c27ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xaecea1ff).into()),
                         terminal_ansi_white: Some(rgba(0xf4f3ecff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xf4f3ecff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x898775ff).into()),
                         link_text_hover: Some(rgba(0x37a166ff).into()),
                         ..Default::default()
                     },
@@ -2401,22 +2456,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x38a1661a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x7a786766).into()),
                         terminal_background: Some(rgba(0xf4f3ecff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x898775ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xe4af96ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xc0ca93ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xd7ca8dff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xa0d1b0ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xcfb4bcff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0xaecea1ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x22221bff).into()),
+                        terminal_foreground: Some(rgba(0x22221bff).into()),
+                        terminal_bright_foreground: Some(rgba(0x22221bff).into()),
+                        terminal_dim_foreground: Some(rgba(0xf4f3ecff).into()),
                         terminal_ansi_black: Some(rgba(0xf4f3ecff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x898775ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x22221bff).into()),
                         terminal_ansi_red: Some(rgba(0xba6337ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xe4af96ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x5c331fff).into()),
                         terminal_ansi_green: Some(rgba(0x7d9728ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xc0ca93ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x3f491aff).into()),
                         terminal_ansi_yellow: Some(rgba(0xa59810ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xd7ca8dff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x514a14ff).into()),
                         terminal_ansi_blue: Some(rgba(0x38a166ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xa0d1b0ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x234e34ff).into()),
                         terminal_ansi_magenta: Some(rgba(0x9d6c7cff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xcfb4bcff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x4c373eff).into()),
                         terminal_ansi_cyan: Some(rgba(0x5c9d49ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0xaecea1ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x314c27ff).into()),
                         terminal_ansi_white: Some(rgba(0x22221bff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x22221bff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x6a6958ff).into()),
                         link_text_hover: Some(rgba(0x38a166ff).into()),
                         ..Default::default()
                     },
@@ -2866,22 +2932,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x417ee61a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x89817e66).into()),
                         terminal_background: Some(rgba(0x1b1918ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x746c69ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x8c1223ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x3e491aff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x674115ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x213f78ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x662186ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x264958ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xf1efeeff).into()),
+                        terminal_foreground: Some(rgba(0xf1efeeff).into()),
+                        terminal_bright_foreground: Some(rgba(0xf1efeeff).into()),
+                        terminal_dim_foreground: Some(rgba(0x1b1918ff).into()),
                         terminal_ansi_black: Some(rgba(0x1b1918ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x746c69ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xf1efeeff).into()),
                         terminal_ansi_red: Some(rgba(0xf22d40ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x8c1223ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xffa29aff).into()),
                         terminal_ansi_green: Some(rgba(0x7b9727ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x3e491aff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xbfca93ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xc38419ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x674115ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xe9c08eff).into()),
                         terminal_ansi_blue: Some(rgba(0x417ee6ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x213f78ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xaebcf4ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xc340f2ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x662186ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xe7a6fbff).into()),
                         terminal_ansi_cyan: Some(rgba(0x3e97b8ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x264958ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xa6cadbff).into()),
                         terminal_ansi_white: Some(rgba(0xf1efeeff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xf1efeeff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x9e9693ff).into()),
                         link_text_hover: Some(rgba(0x417ee6ff).into()),
                         ..Default::default()
                     },
@@ -3331,22 +3408,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x417ee61a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x89817e66).into()),
                         terminal_background: Some(rgba(0xf1efeeff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x9e9693ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xffa29aff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xbfca93ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xe9c08eff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xaebcf4ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xe7a6fbff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0xa6cadbff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x1b1918ff).into()),
+                        terminal_foreground: Some(rgba(0x1b1918ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x1b1918ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xf1efeeff).into()),
                         terminal_ansi_black: Some(rgba(0xf1efeeff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x9e9693ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x1b1918ff).into()),
                         terminal_ansi_red: Some(rgba(0xf22e41ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xffa29aff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x8c1223ff).into()),
                         terminal_ansi_green: Some(rgba(0x7b9728ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xbfca93ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x3e491aff).into()),
                         terminal_ansi_yellow: Some(rgba(0xc3841aff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xe9c08eff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x674115ff).into()),
                         terminal_ansi_blue: Some(rgba(0x417ee6ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xaebcf4ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x213f78ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xc340f2ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xe7a6fbff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x662186ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x3f97b8ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0xa6cadbff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x264958ff).into()),
                         terminal_ansi_white: Some(rgba(0x1b1918ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x1b1918ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x746c69ff).into()),
                         link_text_hover: Some(rgba(0x417ee6ff).into()),
                         ..Default::default()
                     },
@@ -3796,22 +3884,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x526aeb1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x8b7c8b66).into()),
                         terminal_background: Some(rgba(0x1b181bff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x756775ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x6d221aff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x474422ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x5e441fff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x26367eff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x6c1e67ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x1a4848ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xf7f3f7ff).into()),
+                        terminal_foreground: Some(rgba(0xf7f3f7ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xf7f3f7ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x1b181bff).into()),
                         terminal_ansi_black: Some(rgba(0x1b181bff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x756775ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xf7f3f7ff).into()),
                         terminal_ansi_red: Some(rgba(0xca402cff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x6d221aff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xf0a28fff).into()),
                         terminal_ansi_green: Some(rgba(0x918b3bff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x474422ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xcac49aff).into()),
                         terminal_ansi_yellow: Some(rgba(0xbb8a36ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x5e441fff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xe2c398ff).into()),
                         terminal_ansi_blue: Some(rgba(0x526aebff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x26367eff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xb4b2f7ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xcc34ccff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x6c1e67ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xeba2e6ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x189393ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x1a4848ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x9ac9c8ff).into()),
                         terminal_ansi_white: Some(rgba(0xf7f3f7ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xf7f3f7ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0xa091a0ff).into()),
                         link_text_hover: Some(rgba(0x526aebff).into()),
                         ..Default::default()
                     },
@@ -4261,22 +4360,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x526aeb1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x8b7c8b66).into()),
                         terminal_background: Some(rgba(0xf7f3f7ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0xa091a0ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xf0a28fff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xcac49aff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xe2c398ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xb4b2f7ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xeba2e6ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9ac9c8ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x1b181bff).into()),
+                        terminal_foreground: Some(rgba(0x1b181bff).into()),
+                        terminal_bright_foreground: Some(rgba(0x1b181bff).into()),
+                        terminal_dim_foreground: Some(rgba(0xf7f3f7ff).into()),
                         terminal_ansi_black: Some(rgba(0xf7f3f7ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0xa091a0ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x1b181bff).into()),
                         terminal_ansi_red: Some(rgba(0xca412cff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xf0a28fff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x6d221aff).into()),
                         terminal_ansi_green: Some(rgba(0x918b3cff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xcac49aff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x474422ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xbb8a36ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xe2c398ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x5e441fff).into()),
                         terminal_ansi_blue: Some(rgba(0x526aebff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xb4b2f7ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x26367eff).into()),
                         terminal_ansi_magenta: Some(rgba(0xcc35ccff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xeba2e6ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x6c1e67ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x199393ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9ac9c8ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x1a4848ff).into()),
                         terminal_ansi_white: Some(rgba(0x1b181bff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x1b181bff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x756775ff).into()),
                         link_text_hover: Some(rgba(0x526aebff).into()),
                         ..Default::default()
                     },
@@ -4726,22 +4836,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x277fad1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x66889a66).into()),
                         terminal_background: Some(rgba(0x161b1dff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x587989ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x6f1c3aff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x2e4522ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x454413ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x1e3f53ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x5c1e6bff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x1f4638ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xebf8ffff).into()),
+                        terminal_foreground: Some(rgba(0xebf8ffff).into()),
+                        terminal_bright_foreground: Some(rgba(0xebf8ffff).into()),
+                        terminal_dim_foreground: Some(rgba(0x161b1dff).into()),
                         terminal_ansi_black: Some(rgba(0x161b1dff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x587989ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xebf8ffff).into()),
                         terminal_ansi_red: Some(rgba(0xd22e72ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x6f1c3aff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xf09fb6ff).into()),
                         terminal_ansi_green: Some(rgba(0x568c3bff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x2e4522ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xabc59aff).into()),
                         terminal_ansi_yellow: Some(rgba(0x8a8a11ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x454413ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xc8c38bff).into()),
                         terminal_ansi_blue: Some(rgba(0x277fadff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x1e3f53ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x9ebdd6ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xb72ed2ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x5c1e6bff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xe09fe9ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x2e8f6fff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x1f4638ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x9bc7b5ff).into()),
                         terminal_ansi_white: Some(rgba(0xebf8ffff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xebf8ffff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x7397aaff).into()),
                         link_text_hover: Some(rgba(0x277fadff).into()),
                         ..Default::default()
                     },
@@ -5191,22 +5312,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x277fad1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x66889a66).into()),
                         terminal_background: Some(rgba(0xebf8ffff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x7397aaff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xf09fb6ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xabc59aff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xc8c38bff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x9ebdd6ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xe09fe9ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9bc7b5ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x161b1dff).into()),
+                        terminal_foreground: Some(rgba(0x161b1dff).into()),
+                        terminal_bright_foreground: Some(rgba(0x161b1dff).into()),
+                        terminal_dim_foreground: Some(rgba(0xebf8ffff).into()),
                         terminal_ansi_black: Some(rgba(0xebf8ffff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x7397aaff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x161b1dff).into()),
                         terminal_ansi_red: Some(rgba(0xd22f72ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xf09fb6ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x6f1c3aff).into()),
                         terminal_ansi_green: Some(rgba(0x578c3cff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xabc59aff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x2e4522ff).into()),
                         terminal_ansi_yellow: Some(rgba(0x8a8a11ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xc8c38bff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x454413ff).into()),
                         terminal_ansi_blue: Some(rgba(0x277fadff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x9ebdd6ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x1e3f53ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xb72fd2ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xe09fe9ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x5c1e6bff).into()),
                         terminal_ansi_cyan: Some(rgba(0x2f8f6fff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9bc7b5ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x1f4638ff).into()),
                         terminal_ansi_white: Some(rgba(0x161b1dff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x161b1dff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x587989ff).into()),
                         link_text_hover: Some(rgba(0x277fadff).into()),
                         ..Default::default()
                     },
@@ -5656,22 +5788,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x7272ca1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x726a6a66).into()),
                         terminal_background: Some(rgba(0x1b1818ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x635b5bff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x692727ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x2a4444ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x4e3821ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x3b3960ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x5b2c42ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x2e4257ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xf4ececff).into()),
+                        terminal_foreground: Some(rgba(0xf4ececff).into()),
+                        terminal_bright_foreground: Some(rgba(0xf4ececff).into()),
+                        terminal_dim_foreground: Some(rgba(0x1b1818ff).into()),
                         terminal_ansi_black: Some(rgba(0x1b1818ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x635b5bff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xf4ececff).into()),
                         terminal_ansi_red: Some(rgba(0xca4949ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x692727ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xeda69fff).into()),
                         terminal_ansi_green: Some(rgba(0x4b8b8bff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x2a4444ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xa6c4c4ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xa06e3bff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x4e3821ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xd4b499ff).into()),
                         terminal_ansi_blue: Some(rgba(0x7272caff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x3b3960ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xbbb6e5ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xbd5187ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x5b2c42ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xe2a9c2ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x5485b6ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x2e4257ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xacc0daff).into()),
                         terminal_ansi_white: Some(rgba(0xf4ececff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xf4ececff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x807979ff).into()),
                         link_text_hover: Some(rgba(0x7272caff).into()),
                         ..Default::default()
                     },
@@ -6121,22 +6264,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x7372ca1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x726a6a66).into()),
                         terminal_background: Some(rgba(0xf4ececff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x807979ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xeda69fff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xa6c4c4ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xd4b499ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xbbb6e5ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xe2a9c2ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0xacc0daff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x1b1818ff).into()),
+                        terminal_foreground: Some(rgba(0x1b1818ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x1b1818ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xf4ececff).into()),
                         terminal_ansi_black: Some(rgba(0xf4ececff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x807979ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x1b1818ff).into()),
                         terminal_ansi_red: Some(rgba(0xca4a4aff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xeda69fff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x692727ff).into()),
                         terminal_ansi_green: Some(rgba(0x4c8b8bff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xa6c4c4ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x2a4444ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xa06e3cff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xd4b499ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x4e3821ff).into()),
                         terminal_ansi_blue: Some(rgba(0x7372caff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xbbb6e5ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x3b3960ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xbd5287ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xe2a9c2ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x5b2c42ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x5585b6ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0xacc0daff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x2e4257ff).into()),
                         terminal_ansi_white: Some(rgba(0x1b1818ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x1b1818ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x635b5bff).into()),
                         link_text_hover: Some(rgba(0x7372caff).into()),
                         ..Default::default()
                     },
@@ -6586,22 +6740,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x478c901a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x6c7a7166).into()),
                         terminal_background: Some(rgba(0x171c19ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x5d6b62ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x563220ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x294a33ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x4e3f22ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x284546ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x423a36ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x1d4b4dff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xecf4eeff).into()),
+                        terminal_foreground: Some(rgba(0xecf4eeff).into()),
+                        terminal_bright_foreground: Some(rgba(0xecf4eeff).into()),
+                        terminal_dim_foreground: Some(rgba(0x171c19ff).into()),
                         terminal_ansi_black: Some(rgba(0x171c19ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x5d6b62ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xecf4eeff).into()),
                         terminal_ansi_red: Some(rgba(0xb16139ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x563220ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xdeae97ff).into()),
                         terminal_ansi_green: Some(rgba(0x489963ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x294a33ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xa5ccafff).into()),
                         terminal_ansi_yellow: Some(rgba(0xa07e3bff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x4e3f22ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xd3bd9aff).into()),
                         terminal_ansi_blue: Some(rgba(0x478c90ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x284546ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xa5c5c6ff).into()),
                         terminal_ansi_magenta: Some(rgba(0x867469ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x423a36ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xc2b7b1ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x1e9aa0ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x1d4b4dff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x9dcdcfff).into()),
                         terminal_ansi_white: Some(rgba(0xecf4eeff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xecf4eeff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x7b897fff).into()),
                         link_text_hover: Some(rgba(0x478c90ff).into()),
                         ..Default::default()
                     },
@@ -7051,22 +7216,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x488c901a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x6c7a7166).into()),
                         terminal_background: Some(rgba(0xecf4eeff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x7b897fff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xdeae97ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xa5ccafff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xd3bd9aff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xa5c5c6ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xc2b7b1ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9dcdcfff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x171c19ff).into()),
+                        terminal_foreground: Some(rgba(0x171c19ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x171c19ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xecf4eeff).into()),
                         terminal_ansi_black: Some(rgba(0xecf4eeff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x7b897fff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x171c19ff).into()),
                         terminal_ansi_red: Some(rgba(0xb1623aff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xdeae97ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x563220ff).into()),
                         terminal_ansi_green: Some(rgba(0x499963ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xa5ccafff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x294a33ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xa07e3cff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xd3bd9aff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x4e3f22ff).into()),
                         terminal_ansi_blue: Some(rgba(0x488c90ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xa5c5c6ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x284546ff).into()),
                         terminal_ansi_magenta: Some(rgba(0x867469ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xc2b7b1ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x423a36ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x1f9aa0ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9dcdcfff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x1d4b4dff).into()),
                         terminal_ansi_white: Some(rgba(0x171c19ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x171c19ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x5d6b62ff).into()),
                         link_text_hover: Some(rgba(0x488c90ff).into()),
                         ..Default::default()
                     },
@@ -7516,22 +7692,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x3e62f41a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x748b7466).into()),
                         terminal_background: Some(rgba(0x131513ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x667a66ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x840b21ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x204f1bff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x4b4a17ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x193385ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x810e60ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x1d4a56ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xf4fbf4ff).into()),
+                        terminal_foreground: Some(rgba(0xf4fbf4ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xf4fbf4ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x131513ff).into()),
                         terminal_ansi_black: Some(rgba(0x131513ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x667a66ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xf4fbf4ff).into()),
                         terminal_ansi_red: Some(rgba(0xe61c3cff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x840b21ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xff9d98ff).into()),
                         terminal_ansi_green: Some(rgba(0x2ba32aff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x204f1bff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xa0d294ff).into()),
                         terminal_ansi_yellow: Some(rgba(0x98981cff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x4b4a17ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xd0ca90ff).into()),
                         terminal_ansi_blue: Some(rgba(0x3e62f4ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x193385ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xb1adfcff).into()),
                         terminal_ansi_magenta: Some(rgba(0xe61cc3ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x810e60ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xf9a1e1ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x1c99b3ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x1d4a56ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x9fccd9ff).into()),
                         terminal_ansi_white: Some(rgba(0xf4fbf4ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xf4fbf4ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x829b82ff).into()),
                         link_text_hover: Some(rgba(0x3e62f4ff).into()),
                         ..Default::default()
                     },
@@ -7981,22 +8168,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x3f62f41a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x748b7466).into()),
                         terminal_background: Some(rgba(0xf4fbf4ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x829b82ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xff9d98ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xa0d294ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xd0ca90ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xb1adfcff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xf9a1e1ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9fccd9ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x131513ff).into()),
+                        terminal_foreground: Some(rgba(0x131513ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x131513ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xf4fbf4ff).into()),
                         terminal_ansi_black: Some(rgba(0xf4fbf4ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x829b82ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x131513ff).into()),
                         terminal_ansi_red: Some(rgba(0xe61c3dff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xff9d98ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x840b21ff).into()),
                         terminal_ansi_green: Some(rgba(0x2ba32bff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xa0d294ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x204f1bff).into()),
                         terminal_ansi_yellow: Some(rgba(0x98981dff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xd0ca90ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x4b4a17ff).into()),
                         terminal_ansi_blue: Some(rgba(0x3f62f4ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xb1adfcff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x193385ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xe61dc3ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xf9a1e1ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x810e60ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x1d99b3ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9fccd9ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x1d4a56ff).into()),
                         terminal_ansi_white: Some(rgba(0x131513ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x131513ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x667a66ff).into()),
                         link_text_hover: Some(rgba(0x3f62f4ff).into()),
                         ..Default::default()
                     },
@@ -8446,22 +8644,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x3e8fd01a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x7a819c66).into()),
                         terminal_background: Some(rgba(0x202746ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x697192ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x6d2616ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x534921ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x63441eff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x274664ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x4c333dff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x214e5fff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xf5f7ffff).into()),
+                        terminal_foreground: Some(rgba(0xf5f7ffff).into()),
+                        terminal_bright_foreground: Some(rgba(0xf5f7ffff).into()),
+                        terminal_dim_foreground: Some(rgba(0x202746ff).into()),
                         terminal_ansi_black: Some(rgba(0x202746ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x697192ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xf5f7ffff).into()),
                         terminal_ansi_red: Some(rgba(0xc94923ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x6d2616ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xefa58cff).into()),
                         terminal_ansi_green: Some(rgba(0xac973aff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x534921ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xd9ca9bff).into()),
                         terminal_ansi_yellow: Some(rgba(0xc08b31ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x63441eff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xe5c497ff).into()),
                         terminal_ansi_blue: Some(rgba(0x3e8fd0ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x274664ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xa9c6e8ff).into()),
                         terminal_ansi_magenta: Some(rgba(0x9c637aff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x4c333dff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xcfafbbff).into()),
                         terminal_ansi_cyan: Some(rgba(0x25a2c9ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x214e5fff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xa4d0e4ff).into()),
                         terminal_ansi_white: Some(rgba(0xf5f7ffff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xf5f7ffff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x8b91a7ff).into()),
                         link_text_hover: Some(rgba(0x3e8fd0ff).into()),
                         ..Default::default()
                     },
@@ -8911,22 +9120,33 @@ pub fn atelier() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x3f8fd01a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x7a819c66).into()),
                         terminal_background: Some(rgba(0xf5f7ffff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x8b91a7ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xefa58cff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xd9ca9bff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xe5c497ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xa9c6e8ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xcfafbbff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0xa4d0e4ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x202746ff).into()),
+                        terminal_foreground: Some(rgba(0x202746ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x202746ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xf5f7ffff).into()),
                         terminal_ansi_black: Some(rgba(0xf5f7ffff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x8b91a7ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x202746ff).into()),
                         terminal_ansi_red: Some(rgba(0xc94a23ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xefa58cff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x6d2616ff).into()),
                         terminal_ansi_green: Some(rgba(0xac973aff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xd9ca9bff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x534921ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xc08b31ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xe5c497ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x63441eff).into()),
                         terminal_ansi_blue: Some(rgba(0x3f8fd0ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xa9c6e8ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x274664ff).into()),
                         terminal_ansi_magenta: Some(rgba(0x9c637aff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xcfafbbff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x4c333dff).into()),
                         terminal_ansi_cyan: Some(rgba(0x25a2c9ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0xa4d0e4ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x214e5fff).into()),
                         terminal_ansi_white: Some(rgba(0x202746ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x202746ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x697192ff).into()),
                         link_text_hover: Some(rgba(0x3f8fd0ff).into()),
                         ..Default::default()
                     },

crates/theme/src/themes/ayu.rs 🔗

@@ -76,22 +76,33 @@ pub fn ayu() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x5ac2fe1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x66676766).into()),
                         terminal_background: Some(rgba(0x0d1017ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x545557ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x83363cff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x567627ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x92592cff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x28628cff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x205b78ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x4c806fff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xbfbdb6ff).into()),
+                        terminal_foreground: Some(rgba(0xbfbdb6ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xbfbdb6ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x0d1017ff).into()),
                         terminal_ansi_black: Some(rgba(0x0d1017ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x545557ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xbfbdb6ff).into()),
                         terminal_ansi_red: Some(rgba(0xef7178ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x83363cff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xfebab9ff).into()),
                         terminal_ansi_green: Some(rgba(0xaad84cff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x567627ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xd8eca8ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xfeb454ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x92592cff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xffd9aaff).into()),
                         terminal_ansi_blue: Some(rgba(0x5ac2feff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x28628cff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xb8e0ffff).into()),
                         terminal_ansi_magenta: Some(rgba(0x3abae5ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x205b78ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xaddcf3ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x95e5cbff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x4c806fff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xccf3e5ff).into()),
                         terminal_ansi_white: Some(rgba(0xbfbdb6ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xbfbdb6ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x787876ff).into()),
                         link_text_hover: Some(rgba(0x5ac2feff).into()),
                         ..Default::default()
                     },
@@ -520,22 +531,33 @@ pub fn ayu() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x3b9ee51a).into()),
                         editor_document_highlight_write_background: Some(rgba(0xacafb166).into()),
                         terminal_background: Some(rgba(0xfcfcfcff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0xbcbec0ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xfebab6ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xc7d98fff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xffd6a4ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xaccef3ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xb2d9e9ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0xace0cbff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x5c6166ff).into()),
+                        terminal_foreground: Some(rgba(0x5c6166ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x5c6166ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xfcfcfcff).into()),
                         terminal_ansi_black: Some(rgba(0xfcfcfcff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0xbcbec0ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x5c6166ff).into()),
                         terminal_ansi_red: Some(rgba(0xef7271ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xfebab6ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x833639ff).into()),
                         terminal_ansi_green: Some(rgba(0x86b305ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xc7d98fff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x445614ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xf1ae4aff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xffd6a4ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x8a5328ff).into()),
                         terminal_ansi_blue: Some(rgba(0x3b9ee5ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xaccef3ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x214d76ff).into()),
                         terminal_ansi_magenta: Some(rgba(0x56b4d3ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xb2d9e9ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x2f5669ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x4dbf99ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0xace0cbff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x2a5f4aff).into()),
                         terminal_ansi_white: Some(rgba(0x5c6166ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x5c6166ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x9c9fa2ff).into()),
                         link_text_hover: Some(rgba(0x3b9ee5ff).into()),
                         ..Default::default()
                     },
@@ -964,22 +986,33 @@ pub fn ayu() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x73cffe1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x787a7c66).into()),
                         terminal_background: Some(rgba(0x242936ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x67696eff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x83403dff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x76993dff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x937238ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x346e8dff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x2b6c7bff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x4c806fff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xcccac2ff).into()),
+                        terminal_foreground: Some(rgba(0xcccac2ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xcccac2ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x242936ff).into()),
                         terminal_ansi_black: Some(rgba(0x242936ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x67696eff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xcccac2ff).into()),
                         terminal_ansi_red: Some(rgba(0xf18779ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x83403dff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xfec4baff).into()),
                         terminal_ansi_green: Some(rgba(0xd5fe80ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x76993dff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xecffc1ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xfed073ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x937238ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xffe7b9ff).into()),
                         terminal_ansi_blue: Some(rgba(0x73cffeff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x346e8dff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xc1e7ffff).into()),
                         terminal_ansi_magenta: Some(rgba(0x5ccee5ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x2b6c7bff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xb7e7f2ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x95e5cbff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x4c806fff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xccf3e5ff).into()),
                         terminal_ansi_white: Some(rgba(0xcccac2ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xcccac2ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x898a8aff).into()),
                         link_text_hover: Some(rgba(0x73cffeff).into()),
                         ..Default::default()
                     },

crates/theme/src/themes/gruvbox.rs 🔗

@@ -76,22 +76,33 @@ pub fn gruvbox() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x83a5981a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x92847466).into()),
                         terminal_background: Some(rgba(0x282828ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x73675eff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x93211eff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x615d1bff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x91611cff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x414f4aff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x514a41ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x45603eff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_foreground: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x282828ff).into()),
                         terminal_ansi_black: Some(rgba(0x282828ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x73675eff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xfbf1c7ff).into()),
                         terminal_ansi_red: Some(rgba(0xfb4a35ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x93211eff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xffaa95ff).into()),
                         terminal_ansi_green: Some(rgba(0xb8bb27ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x615d1bff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xe0dc98ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xf9bd30ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x91611cff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xffdd9cff).into()),
                         terminal_ansi_blue: Some(rgba(0x83a598ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x414f4aff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xc0d2cbff).into()),
                         terminal_ansi_magenta: Some(rgba(0xa89984ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x514a41ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xd3cbc0ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x8ec07cff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x45603eff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xc7dfbdff).into()),
                         terminal_ansi_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0xb1a28aff).into()),
                         link_text_hover: Some(rgba(0x83a598ff).into()),
                         ..Default::default()
                     },
@@ -527,22 +538,33 @@ pub fn gruvbox() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x83a5981a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x92847466).into()),
                         terminal_background: Some(rgba(0x1d2021ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x73675eff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x93211eff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x615d1bff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x91611cff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x414f4aff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x514a41ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x45603eff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_foreground: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x1d2021ff).into()),
                         terminal_ansi_black: Some(rgba(0x1d2021ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x73675eff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xfbf1c7ff).into()),
                         terminal_ansi_red: Some(rgba(0xfb4a35ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x93211eff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xffaa95ff).into()),
                         terminal_ansi_green: Some(rgba(0xb8bb27ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x615d1bff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xe0dc98ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xf9bd30ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x91611cff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xffdd9cff).into()),
                         terminal_ansi_blue: Some(rgba(0x83a598ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x414f4aff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xc0d2cbff).into()),
                         terminal_ansi_magenta: Some(rgba(0xa89984ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x514a41ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xd3cbc0ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x8ec07cff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x45603eff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xc7dfbdff).into()),
                         terminal_ansi_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0xb1a28aff).into()),
                         link_text_hover: Some(rgba(0x83a598ff).into()),
                         ..Default::default()
                     },
@@ -978,22 +1000,33 @@ pub fn gruvbox() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x83a5981a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x92847466).into()),
                         terminal_background: Some(rgba(0x32302fff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x73675eff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x93211eff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x615d1bff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x91611cff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x414f4aff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x514a41ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x45603eff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_foreground: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x32302fff).into()),
                         terminal_ansi_black: Some(rgba(0x32302fff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x73675eff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xfbf1c7ff).into()),
                         terminal_ansi_red: Some(rgba(0xfb4a35ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x93211eff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xffaa95ff).into()),
                         terminal_ansi_green: Some(rgba(0xb8bb27ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x615d1bff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xe0dc98ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xf9bd30ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x91611cff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xffdd9cff).into()),
                         terminal_ansi_blue: Some(rgba(0x83a598ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x414f4aff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xc0d2cbff).into()),
                         terminal_ansi_magenta: Some(rgba(0xa89984ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x514a41ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xd3cbc0ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x8ec07cff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x45603eff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xc7dfbdff).into()),
                         terminal_ansi_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0xb1a28aff).into()),
                         link_text_hover: Some(rgba(0x83a598ff).into()),
                         ..Default::default()
                     },
@@ -1429,22 +1462,33 @@ pub fn gruvbox() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x0b66781a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x92847466).into()),
                         terminal_background: Some(rgba(0xfbf1c7ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xbfb787ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xe2b88bff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x8fb0baff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xbcb5afff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9fbca8ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x282828ff).into()),
+                        terminal_foreground: Some(rgba(0x282828ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x282828ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xfbf1c7ff).into()),
                         terminal_ansi_black: Some(rgba(0xfbf1c7ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x282828ff).into()),
                         terminal_ansi_red: Some(rgba(0x9d0408ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x4f1207ff).into()),
                         terminal_ansi_green: Some(rgba(0x797410ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xbfb787ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x3e3a11ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xb57616ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xe2b88bff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x5c3b13ff).into()),
                         terminal_ansi_blue: Some(rgba(0x0b6678ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x8fb0baff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x14343cff).into()),
                         terminal_ansi_magenta: Some(rgba(0x7c6f64ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xbcb5afff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x3e3833ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x437b59ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9fbca8ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x253e2eff).into()),
                         terminal_ansi_white: Some(rgba(0x282828ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x282828ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x73675eff).into()),
                         link_text_hover: Some(rgba(0x0b6678ff).into()),
                         ..Default::default()
                     },
@@ -1880,22 +1924,33 @@ pub fn gruvbox() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x0b66781a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x92847466).into()),
                         terminal_background: Some(rgba(0xf9f5d7ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xbfb787ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xe2b88bff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x8fb0baff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xbcb5afff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9fbca8ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x282828ff).into()),
+                        terminal_foreground: Some(rgba(0x282828ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x282828ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xf9f5d7ff).into()),
                         terminal_ansi_black: Some(rgba(0xf9f5d7ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x282828ff).into()),
                         terminal_ansi_red: Some(rgba(0x9d0408ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x4f1207ff).into()),
                         terminal_ansi_green: Some(rgba(0x797410ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xbfb787ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x3e3a11ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xb57616ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xe2b88bff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x5c3b13ff).into()),
                         terminal_ansi_blue: Some(rgba(0x0b6678ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x8fb0baff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x14343cff).into()),
                         terminal_ansi_magenta: Some(rgba(0x7c6f64ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xbcb5afff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x3e3833ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x437b59ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9fbca8ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x253e2eff).into()),
                         terminal_ansi_white: Some(rgba(0x282828ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x282828ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x73675eff).into()),
                         link_text_hover: Some(rgba(0x0b6678ff).into()),
                         ..Default::default()
                     },
@@ -2331,22 +2386,33 @@ pub fn gruvbox() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x0b66781a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x92847466).into()),
                         terminal_background: Some(rgba(0xf2e5bcff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xbfb787ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xe2b88bff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x8fb0baff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xbcb5afff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9fbca8ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x282828ff).into()),
+                        terminal_foreground: Some(rgba(0x282828ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x282828ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xf2e5bcff).into()),
                         terminal_ansi_black: Some(rgba(0xf2e5bcff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0xb1a28aff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x282828ff).into()),
                         terminal_ansi_red: Some(rgba(0x9d0408ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xdc8c7bff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x4f1207ff).into()),
                         terminal_ansi_green: Some(rgba(0x797410ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xbfb787ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x3e3a11ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xb57616ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xe2b88bff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x5c3b13ff).into()),
                         terminal_ansi_blue: Some(rgba(0x0b6678ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x8fb0baff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x14343cff).into()),
                         terminal_ansi_magenta: Some(rgba(0x7c6f64ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xbcb5afff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x3e3833ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x437b59ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9fbca8ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x253e2eff).into()),
                         terminal_ansi_white: Some(rgba(0x282828ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x282828ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x73675eff).into()),
                         link_text_hover: Some(rgba(0x0b6678ff).into()),
                         ..Default::default()
                     },

crates/theme/src/themes/one.rs 🔗

@@ -76,22 +76,33 @@ pub fn one() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x74ade81a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x555a6366).into()),
                         terminal_background: Some(rgba(0x282c34ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x525661ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x673a3cff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x4d6140ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x786441ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x385378ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x5e2b26ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x3a565bff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xc8ccd4ff).into()),
+                        terminal_foreground: Some(rgba(0xc8ccd4ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xc8ccd4ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x282c34ff).into()),
                         terminal_ansi_black: Some(rgba(0x282c34ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x525661ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xc8ccd4ff).into()),
                         terminal_ansi_red: Some(rgba(0xd07277ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x673a3cff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xebb8b9ff).into()),
                         terminal_ansi_green: Some(rgba(0xa1c181ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x4d6140ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xd1e0bfff).into()),
                         terminal_ansi_yellow: Some(rgba(0xdec184ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x786441ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xf1dfc1ff).into()),
                         terminal_ansi_blue: Some(rgba(0x74ade8ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x385378ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xbed5f4ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xbe5046ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x5e2b26ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xe6a79eff).into()),
                         terminal_ansi_cyan: Some(rgba(0x6fb4c0ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x3a565bff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xb9d9dfff).into()),
                         terminal_ansi_white: Some(rgba(0xc8ccd4ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xc8ccd4ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x575d65ff).into()),
                         link_text_hover: Some(rgba(0x74ade8ff).into()),
                         ..Default::default()
                     },
@@ -527,22 +538,33 @@ pub fn one() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x5c79e21a).into()),
                         editor_document_highlight_write_background: Some(rgba(0xa3a3a466).into()),
                         terminal_background: Some(rgba(0xfafafaff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0xaaaaaaff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xf0b0a4ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xb2cfa9ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xf1dfc1ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xb5baf2ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xcea6d3ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0xa4bfdbff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x383a41ff).into()),
+                        terminal_foreground: Some(rgba(0x383a41ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x383a41ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xfafafaff).into()),
                         terminal_ansi_black: Some(rgba(0xfafafaff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0xaaaaaaff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x383a41ff).into()),
                         terminal_ansi_red: Some(rgba(0xd36151ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xf0b0a4ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x6f312aff).into()),
                         terminal_ansi_green: Some(rgba(0x669f59ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xb2cfa9ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x354d2eff).into()),
                         terminal_ansi_yellow: Some(rgba(0xdec184ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xf1dfc1ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x786441ff).into()),
                         terminal_ansi_blue: Some(rgba(0x5c79e2ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xb5baf2ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x2d3d75ff).into()),
                         terminal_ansi_magenta: Some(rgba(0x994fa6ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xcea6d3ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x4b2a50ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x3b82b7ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0xa4bfdbff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x254058ff).into()),
                         terminal_ansi_white: Some(rgba(0x383a41ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x383a41ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x98989bff).into()),
                         link_text_hover: Some(rgba(0x5c79e2ff).into()),
                         ..Default::default()
                     },

crates/theme/src/themes/rose_pine.rs 🔗

@@ -76,22 +76,33 @@ pub fn rose_pine() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x9cced71a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x28253c66).into()),
                         terminal_background: Some(rgba(0x191724ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x403d55ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x7e3647ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x31614fff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x8a653bff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x566c70ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x4c3b47ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x203a46ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xe0def4ff).into()),
+                        terminal_foreground: Some(rgba(0xe0def4ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xe0def4ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x191724ff).into()),
                         terminal_ansi_black: Some(rgba(0x191724ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x403d55ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xe0def4ff).into()),
                         terminal_ansi_red: Some(rgba(0xea6f92ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x7e3647ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xfab9c7ff).into()),
                         terminal_ansi_green: Some(rgba(0x5dc2a3ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x31614fff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xb3e1d1ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xf5c177ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x8a653bff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xfedfbbff).into()),
                         terminal_ansi_blue: Some(rgba(0x9cced7ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x566c70ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xcfe7ebff).into()),
                         terminal_ansi_magenta: Some(rgba(0x9d7691ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x4c3b47ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xceb9c7ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x32748fff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x203a46ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x9cb7c6ff).into()),
                         terminal_ansi_white: Some(rgba(0xe0def4ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xe0def4ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x514e68ff).into()),
                         link_text_hover: Some(rgba(0x9cced7ff).into()),
                         ..Default::default()
                     },
@@ -534,22 +545,33 @@ pub fn rose_pine() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x57949f1a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x9691a466).into()),
                         terminal_background: Some(rgba(0xfaf4edff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0xb8b2baff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xdcb0bbff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xa5d5c5ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xfccd9bff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xacc9ceff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xbcb1bdff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x97b1c0ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x575279ff).into()),
+                        terminal_foreground: Some(rgba(0x575279ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x575279ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xfaf4edff).into()),
                         terminal_ansi_black: Some(rgba(0xfaf4edff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0xb8b2baff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x575279ff).into()),
                         terminal_ansi_red: Some(rgba(0xb4647aff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xdcb0bbff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x57333dff).into()),
                         terminal_ansi_green: Some(rgba(0x3eaa8eff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xa5d5c5ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x265245ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xe99d35ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xfccd9bff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x854a1fff).into()),
                         terminal_ansi_blue: Some(rgba(0x57949fff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xacc9ceff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x2f484dff).into()),
                         terminal_ansi_magenta: Some(rgba(0x7c697fff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xbcb1bdff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x3e353fff).into()),
                         terminal_ansi_cyan: Some(rgba(0x2a6983ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x97b1c0ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x1c3641ff).into()),
                         terminal_ansi_white: Some(rgba(0x575279ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x575279ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x827e98ff).into()),
                         link_text_hover: Some(rgba(0x57949fff).into()),
                         ..Default::default()
                     },
@@ -992,22 +1014,33 @@ pub fn rose_pine() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x9cced71a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x59557166).into()),
                         terminal_background: Some(rgba(0x232136ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x3f3b58ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x7e3647ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x31614fff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x8a653bff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x566c70ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x51414eff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x264654ff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xe0def4ff).into()),
+                        terminal_foreground: Some(rgba(0xe0def4ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xe0def4ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x232136ff).into()),
                         terminal_ansi_black: Some(rgba(0x232136ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x3f3b58ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xe0def4ff).into()),
                         terminal_ansi_red: Some(rgba(0xea6f92ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x7e3647ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xfab9c7ff).into()),
                         terminal_ansi_green: Some(rgba(0x5dc2a3ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x31614fff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xb3e1d1ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xf5c177ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x8a653bff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xfedfbbff).into()),
                         terminal_ansi_blue: Some(rgba(0x9cced7ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x566c70ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xcfe7ebff).into()),
                         terminal_ansi_magenta: Some(rgba(0xa784a1ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x51414eff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xd3c0cfff).into()),
                         terminal_ansi_cyan: Some(rgba(0x3f8fb0ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x264654ff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0xa5c6d7ff).into()),
                         terminal_ansi_white: Some(rgba(0xe0def4ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xe0def4ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x75718eff).into()),
                         link_text_hover: Some(rgba(0x9cced7ff).into()),
                         ..Default::default()
                     },

crates/theme/src/themes/sandcastle.rs 🔗

@@ -75,22 +75,33 @@ pub fn sandcastle() -> UserThemeFamily {
                     editor_document_highlight_read_background: Some(rgba(0x528b8b1a).into()),
                     editor_document_highlight_write_background: Some(rgba(0x7c6f6466).into()),
                     terminal_background: Some(rgba(0x282c34ff).into()),
-                    terminal_ansi_bright_black: Some(rgba(0x5e5753ff).into()),
-                    terminal_ansi_bright_red: Some(rgba(0x57333dff).into()),
-                    terminal_ansi_bright_green: Some(rgba(0x414f4aff).into()),
-                    terminal_ansi_bright_yellow: Some(rgba(0x4e3f22ff).into()),
-                    terminal_ansi_bright_blue: Some(rgba(0x2c4444ff).into()),
-                    terminal_ansi_bright_magenta: Some(rgba(0x523a18ff).into()),
-                    terminal_ansi_bright_cyan: Some(rgba(0x414f4aff).into()),
-                    terminal_ansi_bright_white: Some(rgba(0xfdf4c1ff).into()),
+                    terminal_foreground: Some(rgba(0xfdf4c1ff).into()),
+                    terminal_bright_foreground: Some(rgba(0xfdf4c1ff).into()),
+                    terminal_dim_foreground: Some(rgba(0x282c34ff).into()),
                     terminal_ansi_black: Some(rgba(0x282c34ff).into()),
+                    terminal_ansi_bright_black: Some(rgba(0x5e5753ff).into()),
+                    terminal_ansi_dim_black: Some(rgba(0xfdf4c1ff).into()),
                     terminal_ansi_red: Some(rgba(0xb4637aff).into()),
+                    terminal_ansi_bright_red: Some(rgba(0x57333dff).into()),
+                    terminal_ansi_dim_red: Some(rgba(0xdcb0bbff).into()),
                     terminal_ansi_green: Some(rgba(0x83a598ff).into()),
+                    terminal_ansi_bright_green: Some(rgba(0x414f4aff).into()),
+                    terminal_ansi_dim_green: Some(rgba(0xc0d2cbff).into()),
                     terminal_ansi_yellow: Some(rgba(0xa07e3bff).into()),
+                    terminal_ansi_bright_yellow: Some(rgba(0x4e3f22ff).into()),
+                    terminal_ansi_dim_yellow: Some(rgba(0xd3bd9aff).into()),
                     terminal_ansi_blue: Some(rgba(0x528b8bff).into()),
+                    terminal_ansi_bright_blue: Some(rgba(0x2c4444ff).into()),
+                    terminal_ansi_dim_blue: Some(rgba(0xa8c4c4ff).into()),
                     terminal_ansi_magenta: Some(rgba(0xa87323ff).into()),
+                    terminal_ansi_bright_magenta: Some(rgba(0x523a18ff).into()),
+                    terminal_ansi_dim_magenta: Some(rgba(0xdab78eff).into()),
                     terminal_ansi_cyan: Some(rgba(0x83a598ff).into()),
+                    terminal_ansi_bright_cyan: Some(rgba(0x414f4aff).into()),
+                    terminal_ansi_dim_cyan: Some(rgba(0xc0d2cbff).into()),
                     terminal_ansi_white: Some(rgba(0xfdf4c1ff).into()),
+                    terminal_ansi_bright_white: Some(rgba(0xfdf4c1ff).into()),
+                    terminal_ansi_dim_white: Some(rgba(0x968777ff).into()),
                     link_text_hover: Some(rgba(0x528b8bff).into()),
                     ..Default::default()
                 },

crates/theme/src/themes/solarized.rs 🔗

@@ -76,22 +76,33 @@ pub fn solarized() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x288bd11a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x6d828866).into()),
                         terminal_background: Some(rgba(0x002b36ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x5c7279ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0x7d181cff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0x434a11ff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0x5d4310ff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0x214465ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0x6f1f40ff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x204e4aff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0xfdf6e3ff).into()),
+                        terminal_foreground: Some(rgba(0xfdf6e3ff).into()),
+                        terminal_bright_foreground: Some(rgba(0xfdf6e3ff).into()),
+                        terminal_dim_foreground: Some(rgba(0x002b36ff).into()),
                         terminal_ansi_black: Some(rgba(0x002b36ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x5c7279ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0xfdf6e3ff).into()),
                         terminal_ansi_red: Some(rgba(0xdc3330ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0x7d181cff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0xfaa091ff).into()),
                         terminal_ansi_green: Some(rgba(0x859904ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0x434a11ff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0xc6cb8bff).into()),
                         terminal_ansi_yellow: Some(rgba(0xb58903ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0x5d4310ff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0xe1c28aff).into()),
                         terminal_ansi_blue: Some(rgba(0x288bd1ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0x214465ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0xa5c3e9ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xd33782ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0x6f1f40ff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0xf0a2bfff).into()),
                         terminal_ansi_cyan: Some(rgba(0x2ca198ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x204e4aff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x9fd0cbff).into()),
                         terminal_ansi_white: Some(rgba(0xfdf6e3ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0xfdf6e3ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x7b8e91ff).into()),
                         link_text_hover: Some(rgba(0x288bd1ff).into()),
                         ..Default::default()
                     },
@@ -520,22 +531,33 @@ pub fn solarized() -> UserThemeFamily {
                         editor_document_highlight_read_background: Some(rgba(0x298bd11a).into()),
                         editor_document_highlight_write_background: Some(rgba(0x6d828866).into()),
                         terminal_background: Some(rgba(0xfdf6e3ff).into()),
-                        terminal_ansi_bright_black: Some(rgba(0x7b8e91ff).into()),
-                        terminal_ansi_bright_red: Some(rgba(0xfaa091ff).into()),
-                        terminal_ansi_bright_green: Some(rgba(0xc6cb8bff).into()),
-                        terminal_ansi_bright_yellow: Some(rgba(0xe1c28aff).into()),
-                        terminal_ansi_bright_blue: Some(rgba(0xa5c3e9ff).into()),
-                        terminal_ansi_bright_magenta: Some(rgba(0xf0a2bfff).into()),
-                        terminal_ansi_bright_cyan: Some(rgba(0x9fd0cbff).into()),
-                        terminal_ansi_bright_white: Some(rgba(0x002b36ff).into()),
+                        terminal_foreground: Some(rgba(0x002b36ff).into()),
+                        terminal_bright_foreground: Some(rgba(0x002b36ff).into()),
+                        terminal_dim_foreground: Some(rgba(0xfdf6e3ff).into()),
                         terminal_ansi_black: Some(rgba(0xfdf6e3ff).into()),
+                        terminal_ansi_bright_black: Some(rgba(0x7b8e91ff).into()),
+                        terminal_ansi_dim_black: Some(rgba(0x002b36ff).into()),
                         terminal_ansi_red: Some(rgba(0xdc3330ff).into()),
+                        terminal_ansi_bright_red: Some(rgba(0xfaa091ff).into()),
+                        terminal_ansi_dim_red: Some(rgba(0x7d181cff).into()),
                         terminal_ansi_green: Some(rgba(0x859904ff).into()),
+                        terminal_ansi_bright_green: Some(rgba(0xc6cb8bff).into()),
+                        terminal_ansi_dim_green: Some(rgba(0x434a11ff).into()),
                         terminal_ansi_yellow: Some(rgba(0xb58904ff).into()),
+                        terminal_ansi_bright_yellow: Some(rgba(0xe1c28aff).into()),
+                        terminal_ansi_dim_yellow: Some(rgba(0x5d4310ff).into()),
                         terminal_ansi_blue: Some(rgba(0x298bd1ff).into()),
+                        terminal_ansi_bright_blue: Some(rgba(0xa5c3e9ff).into()),
+                        terminal_ansi_dim_blue: Some(rgba(0x214465ff).into()),
                         terminal_ansi_magenta: Some(rgba(0xd33882ff).into()),
+                        terminal_ansi_bright_magenta: Some(rgba(0xf0a2bfff).into()),
+                        terminal_ansi_dim_magenta: Some(rgba(0x6f1f40ff).into()),
                         terminal_ansi_cyan: Some(rgba(0x2ca198ff).into()),
+                        terminal_ansi_bright_cyan: Some(rgba(0x9fd0cbff).into()),
+                        terminal_ansi_dim_cyan: Some(rgba(0x204e4aff).into()),
                         terminal_ansi_white: Some(rgba(0x002b36ff).into()),
+                        terminal_ansi_bright_white: Some(rgba(0x002b36ff).into()),
+                        terminal_ansi_dim_white: Some(rgba(0x5c7279ff).into()),
                         link_text_hover: Some(rgba(0x298bd1ff).into()),
                         ..Default::default()
                     },

crates/theme/src/themes/summercamp.rs 🔗

@@ -75,22 +75,33 @@ pub fn summercamp() -> UserThemeFamily {
                     editor_document_highlight_read_background: Some(rgba(0x499bef1a).into()),
                     editor_document_highlight_write_background: Some(rgba(0x49443366).into()),
                     terminal_background: Some(rgba(0x1c1810ff).into()),
-                    terminal_ansi_bright_black: Some(rgba(0x3b3627ff).into()),
-                    terminal_ansi_bright_red: Some(rgba(0x7f2724ff).into()),
-                    terminal_ansi_bright_green: Some(rgba(0x28842cff).into()),
-                    terminal_ansi_bright_yellow: Some(rgba(0x8c9a10ff).into()),
-                    terminal_ansi_bright_blue: Some(rgba(0x234b7fff).into()),
-                    terminal_ansi_bright_magenta: Some(rgba(0x88487eff).into()),
-                    terminal_ansi_bright_cyan: Some(rgba(0x298462ff).into()),
-                    terminal_ansi_bright_white: Some(rgba(0xf8f5deff).into()),
+                    terminal_foreground: Some(rgba(0xf8f5deff).into()),
+                    terminal_bright_foreground: Some(rgba(0xf8f5deff).into()),
+                    terminal_dim_foreground: Some(rgba(0x1c1810ff).into()),
                     terminal_ansi_black: Some(rgba(0x1c1810ff).into()),
+                    terminal_ansi_bright_black: Some(rgba(0x3b3627ff).into()),
+                    terminal_ansi_dim_black: Some(rgba(0xf8f5deff).into()),
                     terminal_ansi_red: Some(rgba(0xe35142ff).into()),
+                    terminal_ansi_bright_red: Some(rgba(0x7f2724ff).into()),
+                    terminal_ansi_dim_red: Some(rgba(0xfbab9cff).into()),
                     terminal_ansi_green: Some(rgba(0x5dea5aff).into()),
+                    terminal_ansi_bright_green: Some(rgba(0x28842cff).into()),
+                    terminal_ansi_dim_green: Some(rgba(0xb9f7aeff).into()),
                     terminal_ansi_yellow: Some(rgba(0xf1fe29ff).into()),
+                    terminal_ansi_bright_yellow: Some(rgba(0x8c9a10ff).into()),
+                    terminal_ansi_dim_yellow: Some(rgba(0xffffa2ff).into()),
                     terminal_ansi_blue: Some(rgba(0x499befff).into()),
+                    terminal_ansi_bright_blue: Some(rgba(0x234b7fff).into()),
+                    terminal_ansi_dim_blue: Some(rgba(0xb1ccf8ff).into()),
                     terminal_ansi_magenta: Some(rgba(0xf59be6ff).into()),
+                    terminal_ansi_bright_magenta: Some(rgba(0x88487eff).into()),
+                    terminal_ansi_dim_magenta: Some(rgba(0xfccef3ff).into()),
                     terminal_ansi_cyan: Some(rgba(0x5beabcff).into()),
+                    terminal_ansi_bright_cyan: Some(rgba(0x298462ff).into()),
+                    terminal_ansi_dim_cyan: Some(rgba(0xb7f6ddff).into()),
                     terminal_ansi_white: Some(rgba(0xf8f5deff).into()),
+                    terminal_ansi_bright_white: Some(rgba(0xf8f5deff).into()),
+                    terminal_ansi_dim_white: Some(rgba(0x57533fff).into()),
                     link_text_hover: Some(rgba(0x499befff).into()),
                     ..Default::default()
                 },

crates/theme_importer/src/theme_printer.rs 🔗

@@ -244,43 +244,60 @@ impl<'a> Debug for ThemeColorsRefinementPrinter<'a> {
                 self.0.editor_document_highlight_write_background,
             ),
             ("terminal_background", self.0.terminal_background),
+            ("terminal_foreground", self.0.terminal_foreground),
+            (
+                "terminal_bright_foreground",
+                self.0.terminal_bright_foreground,
+            ),
+            ("terminal_dim_foreground", self.0.terminal_dim_foreground),
+            ("terminal_ansi_black", self.0.terminal_ansi_black),
             (
                 "terminal_ansi_bright_black",
                 self.0.terminal_ansi_bright_black,
             ),
+            ("terminal_ansi_dim_black", self.0.terminal_ansi_dim_black),
+            ("terminal_ansi_red", self.0.terminal_ansi_red),
             ("terminal_ansi_bright_red", self.0.terminal_ansi_bright_red),
+            ("terminal_ansi_dim_red", self.0.terminal_ansi_dim_red),
+            ("terminal_ansi_green", self.0.terminal_ansi_green),
             (
                 "terminal_ansi_bright_green",
                 self.0.terminal_ansi_bright_green,
             ),
+            ("terminal_ansi_dim_green", self.0.terminal_ansi_dim_green),
+            ("terminal_ansi_yellow", self.0.terminal_ansi_yellow),
             (
                 "terminal_ansi_bright_yellow",
                 self.0.terminal_ansi_bright_yellow,
             ),
+            ("terminal_ansi_dim_yellow", self.0.terminal_ansi_dim_yellow),
+            ("terminal_ansi_blue", self.0.terminal_ansi_blue),
             (
                 "terminal_ansi_bright_blue",
                 self.0.terminal_ansi_bright_blue,
             ),
+            ("terminal_ansi_dim_blue", self.0.terminal_ansi_dim_blue),
+            ("terminal_ansi_magenta", self.0.terminal_ansi_magenta),
             (
                 "terminal_ansi_bright_magenta",
                 self.0.terminal_ansi_bright_magenta,
             ),
+            (
+                "terminal_ansi_dim_magenta",
+                self.0.terminal_ansi_dim_magenta,
+            ),
+            ("terminal_ansi_cyan", self.0.terminal_ansi_cyan),
             (
                 "terminal_ansi_bright_cyan",
                 self.0.terminal_ansi_bright_cyan,
             ),
+            ("terminal_ansi_dim_cyan", self.0.terminal_ansi_dim_cyan),
+            ("terminal_ansi_white", self.0.terminal_ansi_white),
             (
                 "terminal_ansi_bright_white",
                 self.0.terminal_ansi_bright_white,
             ),
-            ("terminal_ansi_black", self.0.terminal_ansi_black),
-            ("terminal_ansi_red", self.0.terminal_ansi_red),
-            ("terminal_ansi_green", self.0.terminal_ansi_green),
-            ("terminal_ansi_yellow", self.0.terminal_ansi_yellow),
-            ("terminal_ansi_blue", self.0.terminal_ansi_blue),
-            ("terminal_ansi_magenta", self.0.terminal_ansi_magenta),
-            ("terminal_ansi_cyan", self.0.terminal_ansi_cyan),
-            ("terminal_ansi_white", self.0.terminal_ansi_white),
+            ("terminal_ansi_dim_white", self.0.terminal_ansi_dim_white),
             ("link_text_hover", self.0.link_text_hover),
         ];
 

crates/theme_importer/src/zed1/converter.rs 🔗

@@ -250,22 +250,33 @@ impl Zed1ThemeConverter {
                 editor.document_highlight_write_background,
             ),
             terminal_background: convert(terminal.background),
-            terminal_ansi_bright_black: convert(terminal.bright_black),
-            terminal_ansi_bright_red: convert(terminal.bright_red),
-            terminal_ansi_bright_green: convert(terminal.bright_green),
-            terminal_ansi_bright_yellow: convert(terminal.bright_yellow),
-            terminal_ansi_bright_blue: convert(terminal.bright_blue),
-            terminal_ansi_bright_magenta: convert(terminal.bright_magenta),
-            terminal_ansi_bright_cyan: convert(terminal.bright_cyan),
-            terminal_ansi_bright_white: convert(terminal.bright_white),
+            terminal_foreground: convert(terminal.foreground),
+            terminal_bright_foreground: convert(terminal.bright_foreground),
+            terminal_dim_foreground: convert(terminal.dim_foreground),
             terminal_ansi_black: convert(terminal.black),
+            terminal_ansi_bright_black: convert(terminal.bright_black),
+            terminal_ansi_dim_black: convert(terminal.dim_black),
             terminal_ansi_red: convert(terminal.red),
+            terminal_ansi_bright_red: convert(terminal.bright_red),
+            terminal_ansi_dim_red: convert(terminal.dim_red),
             terminal_ansi_green: convert(terminal.green),
+            terminal_ansi_bright_green: convert(terminal.bright_green),
+            terminal_ansi_dim_green: convert(terminal.dim_green),
             terminal_ansi_yellow: convert(terminal.yellow),
+            terminal_ansi_bright_yellow: convert(terminal.bright_yellow),
+            terminal_ansi_dim_yellow: convert(terminal.dim_yellow),
             terminal_ansi_blue: convert(terminal.blue),
+            terminal_ansi_bright_blue: convert(terminal.bright_blue),
+            terminal_ansi_dim_blue: convert(terminal.dim_blue),
             terminal_ansi_magenta: convert(terminal.magenta),
+            terminal_ansi_bright_magenta: convert(terminal.bright_magenta),
+            terminal_ansi_dim_magenta: convert(terminal.dim_magenta),
             terminal_ansi_cyan: convert(terminal.cyan),
+            terminal_ansi_bright_cyan: convert(terminal.bright_cyan),
+            terminal_ansi_dim_cyan: convert(terminal.dim_cyan),
             terminal_ansi_white: convert(terminal.white),
+            terminal_ansi_bright_white: convert(terminal.bright_white),
+            terminal_ansi_dim_white: convert(terminal.dim_white),
             link_text_hover: convert(highest.accent.default.foreground),
         })
     }