From 19cee5fda1a28fea0575c83731e0d0d9548ea49e Mon Sep 17 00:00:00 2001 From: Darren Schroeder <343840+fdncred@users.noreply.github.com> Date: Sun, 24 Sep 2023 14:43:17 -0500 Subject: [PATCH] fix magenta_reverse and friends (#10491) # Description Magenta wasn't being interpreted correctly. note that `bg: magenta_reverse attr: b` showed up as white. This was because it was missing from the lookup and it was defaulting to white. fixes #10490 ### Before ![image](https://github.com/nushell/nushell/assets/343840/0cf69ab8-813e-42e4-aea5-5db231f29f74) ### After ![image](https://github.com/nushell/nushell/assets/343840/d36f18f3-514d-443a-8bc8-cda2fed09615) # User-Facing Changes # Tests + Formatting # After Submitting --- crates/nu-color-config/src/nu_style.rs | 18 ++++++++++++ crates/nu-command/src/platform/ansi/ansi_.rs | 30 +++++++++++--------- 2 files changed, 34 insertions(+), 14 deletions(-) diff --git a/crates/nu-color-config/src/nu_style.rs b/crates/nu-color-config/src/nu_style.rs index 99854100b7..42da9d2852 100644 --- a/crates/nu-color-config/src/nu_style.rs +++ b/crates/nu-color-config/src/nu_style.rs @@ -247,6 +247,24 @@ pub fn lookup_style(s: &str) -> Style { "lpbl" | "light_purple_blink" => Color::LightPurple.blink(), "lpst" | "light_purple_strike" => Color::LightPurple.strikethrough(), + "m" | "magenta" => Color::Magenta.normal(), + "mb" | "magenta_bold" => Color::Magenta.bold(), + "mu" | "magenta_underline" => Color::Magenta.underline(), + "mi" | "magenta_italic" => Color::Magenta.italic(), + "md" | "magenta_dimmed" => Color::Magenta.dimmed(), + "mr" | "magenta_reverse" => Color::Magenta.reverse(), + "mbl" | "magenta_blink" => Color::Magenta.blink(), + "mst" | "magenta_strike" => Color::Magenta.strikethrough(), + + "lm" | "light_magenta" => Color::LightMagenta.normal(), + "lmb" | "light_magenta_bold" => Color::LightMagenta.bold(), + "lmu" | "light_magenta_underline" => Color::LightMagenta.underline(), + "lmi" | "light_magenta_italic" => Color::LightMagenta.italic(), + "lmd" | "light_magenta_dimmed" => Color::LightMagenta.dimmed(), + "lmr" | "light_magenta_reverse" => Color::LightMagenta.reverse(), + "lmbl" | "light_magenta_blink" => Color::LightMagenta.blink(), + "lmst" | "light_magenta_strike" => Color::LightMagenta.strikethrough(), + "c" | "cyan" => Color::Cyan.normal(), "cb" | "cyan_bold" => Color::Cyan.bold(), "cu" | "cyan_underline" => Color::Cyan.underline(), diff --git a/crates/nu-command/src/platform/ansi/ansi_.rs b/crates/nu-command/src/platform/ansi/ansi_.rs index b17ac329d2..4063d33628 100644 --- a/crates/nu-command/src/platform/ansi/ansi_.rs +++ b/crates/nu-command/src/platform/ansi/ansi_.rs @@ -116,21 +116,21 @@ static CODE_LIST: Lazy> = Lazy::new(|| { vec![ AnsiCode{ short_name: Some("lpr"), long_name: "light_purple_reverse", code: Color::LightPurple.reverse().prefix().to_string()}, AnsiCode{ short_name: Some("bg_lp"), long_name: "bg_light_purple", code: Style::new().on(Color::LightPurple).prefix().to_string()}, - AnsiCode{ short_name: Some("m"), long_name: "magenta", code: Color::Purple.prefix().to_string()}, - AnsiCode{ short_name: Some("mb"), long_name: "magenta_bold", code: Color::Purple.bold().prefix().to_string()}, - AnsiCode{ short_name: Some("mu"), long_name: "magenta_underline", code: Color::Purple.underline().prefix().to_string()}, - AnsiCode{ short_name: Some("mi"), long_name: "magenta_italic", code: Color::Purple.italic().prefix().to_string()}, - AnsiCode{ short_name: Some("md"), long_name: "magenta_dimmed", code: Color::Purple.dimmed().prefix().to_string()}, - AnsiCode{ short_name: Some("mr"), long_name: "magenta_reverse", code: Color::Purple.reverse().prefix().to_string()}, - AnsiCode{ short_name: Some("bg_m"), long_name: "bg_magenta", code: Style::new().on(Color::Purple).prefix().to_string()}, + AnsiCode{ short_name: Some("m"), long_name: "magenta", code: Color::Magenta.prefix().to_string()}, + AnsiCode{ short_name: Some("mb"), long_name: "magenta_bold", code: Color::Magenta.bold().prefix().to_string()}, + AnsiCode{ short_name: Some("mu"), long_name: "magenta_underline", code: Color::Magenta.underline().prefix().to_string()}, + AnsiCode{ short_name: Some("mi"), long_name: "magenta_italic", code: Color::Magenta.italic().prefix().to_string()}, + AnsiCode{ short_name: Some("md"), long_name: "magenta_dimmed", code: Color::Magenta.dimmed().prefix().to_string()}, + AnsiCode{ short_name: Some("mr"), long_name: "magenta_reverse", code: Color::Magenta.reverse().prefix().to_string()}, + AnsiCode{ short_name: Some("bg_m"), long_name: "bg_magenta", code: Style::new().on(Color::Magenta).prefix().to_string()}, - AnsiCode{ short_name: Some("lm"), long_name: "light_magenta", code: Color::LightPurple.prefix().to_string()}, - AnsiCode{ short_name: Some("lmb"), long_name: "light_magenta_bold", code: Color::LightPurple.bold().prefix().to_string()}, - AnsiCode{ short_name: Some("lmu"), long_name: "light_magenta_underline", code: Color::LightPurple.underline().prefix().to_string()}, - AnsiCode{ short_name: Some("lmi"), long_name: "light_magenta_italic", code: Color::LightPurple.italic().prefix().to_string()}, - AnsiCode{ short_name: Some("lmd"), long_name: "light_magenta_dimmed", code: Color::LightPurple.dimmed().prefix().to_string()}, - AnsiCode{ short_name: Some("lmr"), long_name: "light_magenta_reverse", code: Color::LightPurple.reverse().prefix().to_string()}, - AnsiCode{ short_name: Some("bg_lm"), long_name: "bg_light_magenta", code: Style::new().on(Color::LightPurple).prefix().to_string()}, + AnsiCode{ short_name: Some("lm"), long_name: "light_magenta", code: Color::LightMagenta.prefix().to_string()}, + AnsiCode{ short_name: Some("lmb"), long_name: "light_magenta_bold", code: Color::LightMagenta.bold().prefix().to_string()}, + AnsiCode{ short_name: Some("lmu"), long_name: "light_magenta_underline", code: Color::LightMagenta.underline().prefix().to_string()}, + AnsiCode{ short_name: Some("lmi"), long_name: "light_magenta_italic", code: Color::LightMagenta.italic().prefix().to_string()}, + AnsiCode{ short_name: Some("lmd"), long_name: "light_magenta_dimmed", code: Color::LightMagenta.dimmed().prefix().to_string()}, + AnsiCode{ short_name: Some("lmr"), long_name: "light_magenta_reverse", code: Color::LightMagenta.reverse().prefix().to_string()}, + AnsiCode{ short_name: Some("bg_lm"), long_name: "bg_light_magenta", code: Style::new().on(Color::LightMagenta).prefix().to_string()}, AnsiCode{ short_name: Some("c"), long_name: "cyan", code: Color::Cyan.prefix().to_string()}, AnsiCode{ short_name: Some("cb"), long_name: "cyan_bold", code: Color::Cyan.bold().prefix().to_string()}, @@ -549,6 +549,7 @@ Escape sequences usual values: │ 3 │ foreground │ 33 │ 93 │ yellow │ │ 4 │ foreground │ 34 │ 94 │ blue │ │ 5 │ foreground │ 35 │ 95 │ magenta │ +│ 5 │ foreground │ 35 │ 95 │ purple │ │ 6 │ foreground │ 36 │ 96 │ cyan │ │ 7 │ foreground │ 37 │ 97 │ white │ │ 8 │ foreground │ 39 │ │ default │ @@ -558,6 +559,7 @@ Escape sequences usual values: │ 12 │ background │ 43 │ 103 │ yellow │ │ 13 │ background │ 44 │ 104 │ blue │ │ 14 │ background │ 45 │ 105 │ magenta │ +│ 14 │ background │ 45 │ 105 │ purple │ │ 15 │ background │ 46 │ 106 │ cyan │ │ 16 │ background │ 47 │ 107 │ white │ │ 17 │ background │ 49 │ │ default │