diff --git a/dot_config/alacritty/themes/apex-aeon.toml b/dot_config/alacritty/themes/apex-aeon.toml index c711f43..457776e 100644 --- a/dot_config/alacritty/themes/apex-aeon.toml +++ b/dot_config/alacritty/themes/apex-aeon.toml @@ -1,63 +1,64 @@ # APEX AEON — Alacritty theme (colors only) +# v2 spine: red = danger · violet = attention · cyan = info [colors.primary] -background = "#f5f5f5" -foreground = "#0a0a0a" -dim_foreground = "#737373" -bright_foreground = "#ffffff" +background = "#f1f3f7" +foreground = "#16181d" +dim_foreground = "#5c6270" +bright_foreground = "#f1f3f7" [colors.cursor] -text = "#0a0a0a" -cursor = "#ff0044" +text = "#f1f3f7" +cursor = "#7c2fd6" [colors.vi_mode_cursor] -text = "#0a0a0a" -cursor = "#007a88" +text = "#f1f3f7" +cursor = "#8c3dd0" [colors.selection] -text = "#0a0a0a" -background = "#ff0044" +text = "#16181d" +background = "#efe2fb" [colors.search.matches] -foreground = "#0a0a0a" -background = "#ff0044" +foreground = "#16181d" +background = "#efe2fb" [colors.search.focused_match] -foreground = "#0a0a0a" -background = "#d18f00" +foreground = "#f1f3f7" +background = "#8c3dd0" [colors.hints.start] -foreground = "#0a0a0a" -background = "#d18f00" +foreground = "#f1f3f7" +background = "#a86b00" [colors.hints.end] -foreground = "#0a0a0a" -background = "#007a88" +foreground = "#f1f3f7" +background = "#0080a6" [colors.line_indicator] foreground = "None" background = "None" [colors.footer_bar] -foreground = "#0a0a0a" -background = "#e8e8e8" +foreground = "#16181d" +background = "#e7eaf0" [colors.normal] -black = "#0a0a0a" -red = "#ff0044" -green = "#00b377" -yellow = "#d18f00" -blue = "#007a88" -magenta = "#7a3cff" -cyan = "#007a88" -white = "#f5f5f5" +black = "#16181d" +red = "#c8003a" +green = "#00875a" +yellow = "#a86b00" +blue = "#2148c0" +magenta = "#7c2fd6" +cyan = "#0080a6" +white = "#c2c8d4" [colors.bright] -black = "#737373" -red = "#ff4d6d" -green = "#33d6a6" -yellow = "#ffbf40" -blue = "#33bccc" -magenta = "#a680ff" -cyan = "#33bccc" -white = "#ffffff" \ No newline at end of file +black = "#5c6270" +red = "#9e0030" +green = "#006e49" +yellow = "#8a5800" +blue = "#1633a0" +magenta = "#6a1fb8" +cyan = "#0e6e92" +white = "#f1f3f7" \ No newline at end of file diff --git a/dot_config/alacritty/themes/apex-neon.toml b/dot_config/alacritty/themes/apex-neon.toml index edf015e..deec4dc 100644 --- a/dot_config/alacritty/themes/apex-neon.toml +++ b/dot_config/alacritty/themes/apex-neon.toml @@ -1,37 +1,38 @@ # APEX NEON — Alacritty theme (colors only) +# v2 spine: red = danger · violet = attention · cyan = info [colors.primary] -background = "#050505" -foreground = "#ededed" -dim_foreground = "#737373" +background = "#070709" +foreground = "#e6e8ec" +dim_foreground = "#8b909c" bright_foreground = "#ffffff" [colors.cursor] -text = "#050505" -cursor = "#ff0044" +text = "#070709" +cursor = "#d68fff" [colors.vi_mode_cursor] -text = "#050505" -cursor = "#00eaff" +text = "#070709" +cursor = "#b14dff" [colors.selection] -text = "#050505" -background = "#ff0044" +text = "#e6e8ec" +background = "#3a1a4d" [colors.search.matches] -foreground = "#050505" -background = "#ff0044" +foreground = "#e6e8ec" +background = "#3a1a4d" [colors.search.focused_match] -foreground = "#050505" -background = "#ffb700" +foreground = "#070709" +background = "#b14dff" [colors.hints.start] -foreground = "#050505" +foreground = "#070709" background = "#ffb700" [colors.hints.end] -foreground = "#050505" +foreground = "#070709" background = "#00eaff" [colors.line_indicator] @@ -39,25 +40,25 @@ foreground = "None" background = "None" [colors.footer_bar] -foreground = "#ededed" -background = "#141414" +foreground = "#e6e8ec" +background = "#101218" [colors.normal] -black = "#050505" +black = "#070709" red = "#ff0044" green = "#00ff99" yellow = "#ffb700" -blue = "#00eaff" +blue = "#2e6bff" magenta = "#9d00ff" cyan = "#00eaff" -white = "#ededed" +white = "#e6e8ec" [colors.bright] -black = "#737373" -red = "#ff8899" +black = "#383d49" +red = "#ff3b3b" green = "#2bffb2" yellow = "#ffd24d" -blue = "#5af3ff" +blue = "#5b8cff" magenta = "#c84dff" cyan = "#5af3ff" white = "#ffffff" \ No newline at end of file diff --git a/dot_config/btop/themes/apex-aeon.theme b/dot_config/btop/themes/apex-aeon.theme index 884bf10..f20928f 100644 --- a/dot_config/btop/themes/apex-aeon.theme +++ b/dot_config/btop/themes/apex-aeon.theme @@ -1,89 +1,90 @@ # Apex Aeon — Btop Theme -# DNA: State over Decoration +# v2 spine: red = danger · violet = attention · cyan = info # Main background, empty for terminal default, black for dark themes -theme[main_bg]="#f5f5f5" +theme[main_bg]="#f1f3f7" # Main text color -theme[main_fg]="#0a0a0a" +theme[main_fg]="#16181d" # Title color for boxes -theme[title]="#0a0a0a" +theme[title]="#16181d" -# Highlight color for keyboard shortcuts -theme[hi_fg]="#ff0044" +# Highlight color for keyboard shortcuts — violet attention accent +theme[hi_fg]="#7c2fd6" -# Background color of selected item in processes box -theme[selected_bg]="#ff0044" +# Background color of selected item in processes box — violet field +theme[selected_bg]="#efe2fb" # Foreground color of selected item in processes box -theme[selected_fg]="#0a0a0a" +theme[selected_fg]="#16181d" # Color of inactive/disabled text -theme[inactive_fg]="#737373" +theme[inactive_fg]="#5c6270" # Color of text appearing on top of graphs, i.e. usage percentage -theme[graph_text]="#737373" +theme[graph_text]="#5c6270" # Background color of the percentage meters -theme[meter_bg]="#e8e8e8" +theme[meter_bg]="#e7eaf0" # Misc colors for processes box including mini cpu graphs, used memory percentage, and entries filter -theme[proc_misc]="#007a88" +theme[proc_misc]="#0080a6" # Cpu box outline color -theme[cpu_box]="#737373" +theme[cpu_box]="#c2c8d4" # Memory box outline color -theme[mem_box]="#737373" +theme[mem_box]="#c2c8d4" # Net box outline color -theme[net_box]="#737373" +theme[net_box]="#c2c8d4" # Processes box outline color -theme[proc_box]="#737373" +theme[proc_box]="#c2c8d4" # Box divider line and small boxes line color -theme[div_line]="#737373" +theme[div_line]="#c2c8d4" +# Heat gradients: calm info -> special -> danger red at the hot end # Temperature graph colors -theme[temp_start]="#007a88" -theme[temp_mid]="#7a3cff" -theme[temp_end]="#ff0044" +theme[temp_start]="#0080a6" +theme[temp_mid]="#6a1fb8" +theme[temp_end]="#c8003a" # CPU graph colors -theme[cpu_start]="#007a88" -theme[cpu_mid]="#7a3cff" -theme[cpu_end]="#ff0044" +theme[cpu_start]="#0080a6" +theme[cpu_mid]="#6a1fb8" +theme[cpu_end]="#c8003a" # Mem graph colors -theme[free_start]="#00b377" -theme[free_mid]="#d18f00" -theme[free_end]="#ff0044" +theme[free_start]="#00875a" +theme[free_mid]="#a86b00" +theme[free_end]="#c8003a" -theme[cached_start]="#007a88" -theme[cached_mid]="#7a3cff" -theme[cached_end]="#ff0044" +theme[cached_start]="#0080a6" +theme[cached_mid]="#6a1fb8" +theme[cached_end]="#c8003a" -theme[available_start]="#00b377" -theme[available_mid]="#d18f00" -theme[available_end]="#ff0044" +theme[available_start]="#00875a" +theme[available_mid]="#a86b00" +theme[available_end]="#c8003a" -theme[used_start]="#007a88" -theme[used_mid]="#7a3cff" -theme[used_end]="#ff0044" +theme[used_start]="#0080a6" +theme[used_mid]="#6a1fb8" +theme[used_end]="#c8003a" # Download graph colors -theme[download_start]="#007a88" -theme[download_mid]="#7a3cff" -theme[download_end]="#ff0044" +theme[download_start]="#0080a6" +theme[download_mid]="#6a1fb8" +theme[download_end]="#c8003a" # Upload graph colors -theme[upload_start]="#007a88" -theme[upload_mid]="#7a3cff" -theme[upload_end]="#ff0044" +theme[upload_start]="#0080a6" +theme[upload_mid]="#6a1fb8" +theme[upload_end]="#c8003a" # Process path color -theme[process_start]="#007a88" -theme[process_mid]="#7a3cff" -theme[process_end]="#ff0044" \ No newline at end of file +theme[process_start]="#0080a6" +theme[process_mid]="#6a1fb8" +theme[process_end]="#c8003a" \ No newline at end of file diff --git a/dot_config/btop/themes/apex-neon.theme b/dot_config/btop/themes/apex-neon.theme index a430d27..7cd89e4 100644 --- a/dot_config/btop/themes/apex-neon.theme +++ b/dot_config/btop/themes/apex-neon.theme @@ -1,51 +1,52 @@ # Apex Neon — Btop Theme -# DNA: State over Decoration +# v2 spine: red = danger · violet = attention · cyan = info # Main background, empty for terminal default, black for dark themes -theme[main_bg]="#050505" +theme[main_bg]="#070709" # Main text color -theme[main_fg]="#ededed" +theme[main_fg]="#e6e8ec" # Title color for boxes -theme[title]="#ededed" +theme[title]="#e6e8ec" -# Highlight color for keyboard shortcuts -theme[hi_fg]="#ff0044" +# Highlight color for keyboard shortcuts — violet attention accent +theme[hi_fg]="#d68fff" -# Background color of selected item in processes box -theme[selected_bg]="#ff0044" +# Background color of selected item in processes box — violet field +theme[selected_bg]="#3a1a4d" # Foreground color of selected item in processes box -theme[selected_fg]="#050505" +theme[selected_fg]="#e6e8ec" # Color of inactive/disabled text -theme[inactive_fg]="#737373" +theme[inactive_fg]="#8b909c" # Color of text appearing on top of graphs, i.e. usage percentage -theme[graph_text]="#737373" +theme[graph_text]="#8b909c" # Background color of the percentage meters -theme[meter_bg]="#141414" +theme[meter_bg]="#101218" # Misc colors for processes box including mini cpu graphs, used memory percentage, and entries filter theme[proc_misc]="#00eaff" # Cpu box outline color -theme[cpu_box]="#262626" +theme[cpu_box]="#262a34" # Memory box outline color -theme[mem_box]="#262626" +theme[mem_box]="#262a34" # Net box outline color -theme[net_box]="#262626" +theme[net_box]="#262a34" # Processes box outline color -theme[proc_box]="#262626" +theme[proc_box]="#262a34" # Box divider line and small boxes line color -theme[div_line]="#262626" +theme[div_line]="#262a34" +# Heat gradients: calm info -> special -> danger red at the hot end # Temperature graph colors theme[temp_start]="#00eaff" theme[temp_mid]="#9d00ff" diff --git a/dot_config/fuzzel/themes/apex-aeon.ini b/dot_config/fuzzel/themes/apex-aeon.ini index 3027163..0f5fc25 100644 --- a/dot_config/fuzzel/themes/apex-aeon.ini +++ b/dot_config/fuzzel/themes/apex-aeon.ini @@ -1,14 +1,14 @@ # Apex Aeon — Fuzzel Theme -# DNA: State over Decoration +# v2 spine: red = danger · violet = attention · cyan = info [colors] -background=f5f5f5ff -text=0a0a0aff -match=007a88ff -selection=ff0044ff -selection-text=0a0a0aff -selection-match=007a88ff -border=007a88ff +background=f1f3f7ff +text=16181dff +match=0080a6ff +selection=efe2fbff +selection-text=16181dff +selection-match=0080a6ff +border=0080a6ff [border] width=2 diff --git a/dot_config/fuzzel/themes/apex-neon.ini b/dot_config/fuzzel/themes/apex-neon.ini index 5e94581..9eb6d1e 100644 --- a/dot_config/fuzzel/themes/apex-neon.ini +++ b/dot_config/fuzzel/themes/apex-neon.ini @@ -1,12 +1,12 @@ # Apex Neon — Fuzzel Theme -# DNA: State over Decoration +# v2 spine: red = danger · violet = attention · cyan = info [colors] -background=050505ff -text=edededff +background=070709ff +text=e6e8ecff match=00eaffff -selection=ff0044ff -selection-text=050505ff +selection=3a1a4dff +selection-text=e6e8ecff selection-match=00eaffff border=00eaffff diff --git a/dot_config/ghostty/themes/apex-aeon b/dot_config/ghostty/themes/apex-aeon index f77e8e9..28283a2 100644 --- a/dot_config/ghostty/themes/apex-aeon +++ b/dot_config/ghostty/themes/apex-aeon @@ -1,26 +1,30 @@ # Apex Aeon - Ghostty theme -# DNA: State over Decoration +# v2 spine: red = danger · violet = attention · cyan = info -background = #f5f5f5 -foreground = #0a0a0a +background = #f1f3f7 +foreground = #16181d -cursor-color = #ff0044 -selection-background = #ff0044 -selection-foreground = #0a0a0a +# Cursor: the crosshair — violet, dark ink under the block +cursor-color = #7c2fd6 +cursor-text = #f1f3f7 -palette = 0=#0a0a0a -palette = 1=#ff0044 -palette = 2=#00b377 -palette = 3=#d18f00 -palette = 4=#007a88 -palette = 5=#7a3cff -palette = 6=#007a88 -palette = 7=#f5f5f5 -palette = 8=#737373 -palette = 9=#ff4d6d -palette = 10=#33d6a6 -palette = 11=#ffbf40 -palette = 12=#33bccc -palette = 13=#a680ff -palette = 14=#33bccc -palette = 15=#ffffff \ No newline at end of file +# Selection: violet field (attention, not danger) +selection-background = #efe2fb +selection-foreground = #16181d + +palette = 0=#16181d +palette = 1=#c8003a +palette = 2=#00875a +palette = 3=#a86b00 +palette = 4=#2148c0 +palette = 5=#7c2fd6 +palette = 6=#0080a6 +palette = 7=#c2c8d4 +palette = 8=#5c6270 +palette = 9=#9e0030 +palette = 10=#006e49 +palette = 11=#8a5800 +palette = 12=#1633a0 +palette = 13=#6a1fb8 +palette = 14=#0e6e92 +palette = 15=#f1f3f7 \ No newline at end of file diff --git a/dot_config/ghostty/themes/apex-neon b/dot_config/ghostty/themes/apex-neon index 3e2f37a..3b6a523 100644 --- a/dot_config/ghostty/themes/apex-neon +++ b/dot_config/ghostty/themes/apex-neon @@ -1,26 +1,30 @@ # Apex Neon - Ghostty theme -# DNA: State over Decoration +# v2 spine: red = danger · violet = attention · cyan = info -background = #050505 -foreground = #ededed +background = #070709 +foreground = #e6e8ec -cursor-color = #ff0044 -selection-background = #ff0044 -selection-foreground = #050505 +# Cursor: the crosshair — violet, dark ink under the block +cursor-color = #d68fff +cursor-text = #070709 -palette = 0=#050505 +# Selection: violet field (attention, not danger) +selection-background = #3a1a4d +selection-foreground = #e6e8ec + +palette = 0=#070709 palette = 1=#ff0044 palette = 2=#00ff99 palette = 3=#ffb700 -palette = 4=#00eaff +palette = 4=#2e6bff palette = 5=#9d00ff palette = 6=#00eaff -palette = 7=#ededed -palette = 8=#737373 -palette = 9=#ff8899 +palette = 7=#e6e8ec +palette = 8=#383d49 +palette = 9=#ff3b3b palette = 10=#2bffb2 palette = 11=#ffd24d -palette = 12=#5af3ff +palette = 12=#5b8cff palette = 13=#c84dff palette = 14=#5af3ff palette = 15=#ffffff \ No newline at end of file diff --git a/dot_config/gtk-4.0/gtk.css b/dot_config/gtk-4.0/gtk.css index 492891d..57aad87 100644 --- a/dot_config/gtk-4.0/gtk.css +++ b/dot_config/gtk-4.0/gtk.css @@ -1,5 +1,5 @@ /* Apex Theme System — GTK4 / Libadwaita */ -/* Auto-generated from Apex DNA */ +/* v2 spine: red = danger · violet = attention · cyan = info */ /* Scheme: Apex Neon (dark) */ @@ -8,60 +8,61 @@ :root { /* Core Surfaces */ - @define-color window_bg_color #050505; - @define-color window_fg_color #ededed; + @define-color window_bg_color #070709; + @define-color window_fg_color #e6e8ec; - @define-color view_bg_color #050505; - @define-color view_fg_color #ededed; + @define-color view_bg_color #070709; + @define-color view_fg_color #e6e8ec; - @define-color headerbar_bg_color #141414; - @define-color headerbar_fg_color #ededed; - @define-color headerbar_border_color #262626; + @define-color headerbar_bg_color #101218; + @define-color headerbar_fg_color #e6e8ec; + @define-color headerbar_border_color #262a34; @define-color headerbar_backdrop_color @window_bg_color; @define-color headerbar_shade_color rgba(0, 0, 0, 0.07); - @define-color popover_bg_color #141414; - @define-color popover_fg_color #ededed; + @define-color popover_bg_color #101218; + @define-color popover_fg_color #e6e8ec; - @define-color card_bg_color #141414; - @define-color card_fg_color #ededed; + @define-color card_bg_color #101218; + @define-color card_fg_color #e6e8ec; @define-color card_shade_color rgba(0, 0, 0, 0.07); - @define-color dialog_bg_color #141414; - @define-color dialog_fg_color #ededed; + @define-color dialog_bg_color #101218; + @define-color dialog_fg_color #e6e8ec; /* Accents */ @define-color accent_color #00eaff; @define-color accent_bg_color #00eaff; - @define-color accent_fg_color #050505; + @define-color accent_fg_color #070709; + /* Destructive = danger red (spec §5,6) */ @define-color destructive_color #ff0044; @define-color destructive_bg_color #ff0044; - @define-color destructive_fg_color #050505; + @define-color destructive_fg_color #070709; @define-color success_color #00ff99; @define-color success_bg_color #00ff99; - @define-color success_fg_color #050505; + @define-color success_fg_color #070709; @define-color warning_color #ffb700; @define-color warning_bg_color #ffb700; - @define-color warning_fg_color #050505; + @define-color warning_fg_color #070709; - @define-color error_color #ff8899; - @define-color error_bg_color #ff8899; - @define-color error_fg_color #050505; + @define-color error_color #ff0044; + @define-color error_bg_color #ff0044; + @define-color error_fg_color #070709; /* UI Elements */ - @define-color borders #262626; - @define-color sidebar_bg_color #141414; - @define-color sidebar_fg_color #ededed; + @define-color borders #262a34; + @define-color sidebar_bg_color #101218; + @define-color sidebar_fg_color #e6e8ec; @define-color sidebar_backdrop_color @window_bg_color; @define-color sidebar_shade_color rgba(0, 0, 0, 0.07); /* Custom Apex Palette */ - @define-color apex_razor #ff0044; - @define-color apex_void #050505; - @define-color apex_stealth #404040; + @define-color apex_focus #d68fff; + @define-color apex_void #070709; + @define-color apex_subtle #383d49; } } @@ -71,59 +72,60 @@ :root { /* Core Surfaces */ - @define-color window_bg_color #f5f5f5; - @define-color window_fg_color #0a0a0a; + @define-color window_bg_color #f1f3f7; + @define-color window_fg_color #16181d; - @define-color view_bg_color #f5f5f5; - @define-color view_fg_color #0a0a0a; + @define-color view_bg_color #f1f3f7; + @define-color view_fg_color #16181d; - @define-color headerbar_bg_color #e8e8e8; - @define-color headerbar_fg_color #0a0a0a; - @define-color headerbar_border_color #737373; + @define-color headerbar_bg_color #e7eaf0; + @define-color headerbar_fg_color #16181d; + @define-color headerbar_border_color #c2c8d4; @define-color headerbar_backdrop_color @window_bg_color; @define-color headerbar_shade_color rgba(0, 0, 0, 0.07); - @define-color popover_bg_color #e8e8e8; - @define-color popover_fg_color #0a0a0a; + @define-color popover_bg_color #e7eaf0; + @define-color popover_fg_color #16181d; - @define-color card_bg_color #e8e8e8; - @define-color card_fg_color #0a0a0a; + @define-color card_bg_color #e7eaf0; + @define-color card_fg_color #16181d; @define-color card_shade_color rgba(0, 0, 0, 0.07); - @define-color dialog_bg_color #e8e8e8; - @define-color dialog_fg_color #0a0a0a; + @define-color dialog_bg_color #e7eaf0; + @define-color dialog_fg_color #16181d; /* Accents */ - @define-color accent_color #007a88; - @define-color accent_bg_color #007a88; - @define-color accent_fg_color #f5f5f5; + @define-color accent_color #0080a6; + @define-color accent_bg_color #0080a6; + @define-color accent_fg_color #f1f3f7; - @define-color destructive_color #ff0044; - @define-color destructive_bg_color #ff0044; - @define-color destructive_fg_color #f5f5f5; + /* Destructive = danger red (spec §5,6) */ + @define-color destructive_color #c8003a; + @define-color destructive_bg_color #c8003a; + @define-color destructive_fg_color #f1f3f7; - @define-color success_color #00b377; - @define-color success_bg_color #00b377; - @define-color success_fg_color #f5f5f5; + @define-color success_color #00875a; + @define-color success_bg_color #00875a; + @define-color success_fg_color #f1f3f7; - @define-color warning_color #d18f00; - @define-color warning_bg_color #d18f00; - @define-color warning_fg_color #f5f5f5; + @define-color warning_color #a86b00; + @define-color warning_bg_color #a86b00; + @define-color warning_fg_color #f1f3f7; - @define-color error_color #ff4d6d; - @define-color error_bg_color #ff4d6d; - @define-color error_fg_color #f5f5f5; + @define-color error_color #c8003a; + @define-color error_bg_color #c8003a; + @define-color error_fg_color #f1f3f7; /* UI Elements */ - @define-color borders #737373; - @define-color sidebar_bg_color #e8e8e8; - @define-color sidebar_fg_color #0a0a0a; + @define-color borders #c2c8d4; + @define-color sidebar_bg_color #e7eaf0; + @define-color sidebar_fg_color #16181d; @define-color sidebar_backdrop_color @window_bg_color; @define-color sidebar_shade_color rgba(0, 0, 0, 0.07); /* Custom Apex Palette */ - @define-color apex_razor #ff0044; - @define-color apex_void #f5f5f5; - @define-color apex_stealth #a0a0a0; + @define-color apex_focus #7c2fd6; + @define-color apex_void #f1f3f7; + @define-color apex_subtle #c8cdd8; } } diff --git a/dot_config/kitty/themes/apex-aeon.conf b/dot_config/kitty/themes/apex-aeon.conf index d2d3990..b23c0c6 100644 --- a/dot_config/kitty/themes/apex-aeon.conf +++ b/dot_config/kitty/themes/apex-aeon.conf @@ -1,66 +1,66 @@ ## APEX AEON - KITTY THEME ## -## Spec-accurate: color = state, not decoration +## v2 spine: red = danger · violet = attention · cyan = info # --- Core --- -foreground #0a0a0a -background #f5f5f5 +foreground #16181d +background #f1f3f7 -# Selection: "target locked" -selection_background #ff0044 -selection_foreground #0a0a0a +# Selection: violet field (attention, not danger) +selection_background #efe2fb +selection_foreground #16181d -# Cursor: Razor Red beam -cursor #ff0044 -cursor_text_color #0a0a0a +# Cursor: the crosshair — violet, dark ink under the block +cursor #7c2fd6 +cursor_text_color #f1f3f7 cursor_shape beam # URLs: informational cyan -url_color #007a88 +url_color #0080a6 -# Borders (optional) -active_border_color #ff0044 -inactive_border_color #737373 +# Borders: active window = danger red (spec §5) +active_border_color #c8003a +inactive_border_color #c2c8d4 -# Optional: subtle UI hint for visual bell -visual_bell_color #ff4d6d +# Visual bell: hot red +visual_bell_color #9e0030 # Spacing window_padding_width 4 -# --- 16-COLOR ANSI TABLE (Apex Aeon spec) --- +# --- 16-COLOR ANSI TABLE (Apex Aeon spec §9) --- # Normal bank (0–7) -# color0: Black (Void) -color0 #0a0a0a -# color1: Red (Razor) -color1 #ff0044 -# color2: Green (OK) -color2 #00b377 -# color3: Yellow (Gold) -color3 #d18f00 -# color4: Blue (Info) -color4 #007a88 -# color5: Magenta (Purple) -color5 #7a3cff -# color6: Cyan (Info mapped) -color6 #007a88 -# color7: White (Stark) -color7 #f5f5f5 +# color0: Black (bg) +color0 #16181d +# color1: Red (danger) +color1 #c8003a +# color2: Green (success) +color2 #00875a +# color3: Yellow (warning) +color3 #a86b00 +# color4: Blue (kinds / structural) +color4 #2148c0 +# color5: Magenta (special / root) +color5 #7c2fd6 +# color6: Cyan (info / actions) +color6 #0080a6 +# color7: White (text) +color7 #c2c8d4 -# Bright bank (8–15) -# color8: Bright black (UI separators) -color8 #737373 -# color9: Bright red (Alerts) -color9 #ff4d6d -# color10: Bright green (Active success) -color10 #33d6a6 -# color11: Bright yellow (Urgent warning) -color11 #ffbf40 -# color12: Bright blue (Active info) -color12 #33bccc -# color13: Bright magenta (Elevated special) -color13 #a680ff -# color14: Bright cyan (Active tech signal) -color14 #33bccc -# color15: Bright white (Extreme highlight) -color15 #ffffff \ No newline at end of file +# Bright bank (8–15) — escalation / active states only +# color8: Bright black (muted / separators) +color8 #5c6270 +# color9: Bright red (escalation) +color9 #9e0030 +# color10: Bright green (active success) +color10 #006e49 +# color11: Bright yellow (urgent warning) +color11 #8a5800 +# color12: Bright blue (active flow) +color12 #1633a0 +# color13: Bright magenta (elevated attention) +color13 #6a1fb8 +# color14: Bright cyan (active tech signal) +color14 #0e6e92 +# color15: Bright white (extreme highlight) +color15 #f1f3f7 \ No newline at end of file diff --git a/dot_config/kitty/themes/apex-neon.conf b/dot_config/kitty/themes/apex-neon.conf index 74ab105..9d8e71d 100644 --- a/dot_config/kitty/themes/apex-neon.conf +++ b/dot_config/kitty/themes/apex-neon.conf @@ -1,66 +1,66 @@ ## APEX NEON - KITTY THEME ## -## Spec-accurate: color = state, not decoration +## v2 spine: red = danger · violet = attention · cyan = info # --- Core --- -foreground #ededed -background #050505 +foreground #e6e8ec +background #070709 -# Selection: "target locked" -selection_background #ff0044 -selection_foreground #050505 +# Selection: violet field (attention, not danger) +selection_background #3a1a4d +selection_foreground #e6e8ec -# Cursor: Razor Red beam -cursor #ff0044 -cursor_text_color #050505 +# Cursor: the crosshair — violet, dark ink under the block +cursor #d68fff +cursor_text_color #070709 cursor_shape beam # URLs: informational cyan url_color #00eaff -# Borders (optional) +# Borders: active window = danger red (spec §5) active_border_color #ff0044 -inactive_border_color #262626 +inactive_border_color #262a34 -# Optional: subtle UI hint for visual bell -visual_bell_color #ff8899 +# Visual bell: hot red +visual_bell_color #ff3b3b # Spacing window_padding_width 4 -# --- 16-COLOR ANSI TABLE (Apex Neon spec) --- +# --- 16-COLOR ANSI TABLE (Apex Neon spec §9) --- # Normal bank (0–7) -# color0: Black (Void) -color0 #050505 -# color1: Red (Razor) +# color0: Black (bg) +color0 #070709 +# color1: Red (danger) color1 #ff0044 -# color2: Green (OK) +# color2: Green (success) color2 #00ff99 -# color3: Yellow (Gold) +# color3: Yellow (warning) color3 #ffb700 -# color4: Blue (Info) -color4 #00eaff -# color5: Magenta (Purple) +# color4: Blue (kinds / structural) +color4 #2e6bff +# color5: Magenta (special / root) color5 #9d00ff -# color6: Cyan (Info mapped) +# color6: Cyan (info / actions) color6 #00eaff -# color7: White (Stark) -color7 #ededed +# color7: White (text) +color7 #e6e8ec -# Bright bank (8–15) -# color8: Bright black (UI separators) -color8 #737373 -# color9: Bright red (Alerts) -color9 #ff8899 -# color10: Bright green (Active success) +# Bright bank (8–15) — escalation / active states only +# color8: Bright black (muted / separators) +color8 #383d49 +# color9: Bright red (escalation) +color9 #ff3b3b +# color10: Bright green (active success) color10 #2bffb2 -# color11: Bright yellow (Urgent warning) +# color11: Bright yellow (urgent warning) color11 #ffd24d -# color12: Bright blue (Active info) -color12 #5af3ff -# color13: Bright magenta (Elevated special) +# color12: Bright blue (active flow) +color12 #5b8cff +# color13: Bright magenta (elevated attention) color13 #c84dff -# color14: Bright cyan (Active tech signal) +# color14: Bright cyan (active tech signal) color14 #5af3ff -# color15: Bright white (Extreme highlight) +# color15: Bright white (extreme highlight) color15 #ffffff \ No newline at end of file diff --git a/dot_config/nushell/themes/apex-aeon.nu b/dot_config/nushell/themes/apex-aeon.nu index fdc9ba4..63a75ed 100644 --- a/dot_config/nushell/themes/apex-aeon.nu +++ b/dot_config/nushell/themes/apex-aeon.nu @@ -1,68 +1,70 @@ # Apex Aeon — Nushell color config +# v2 spine: red = danger · violet = attention · cyan = info # Usage: add `use /path/to/apex-aeon.nu` to config.nu export-env { $env.config.color_config = { # --- Chrome --- - separator: "#737373" - leading_trailing_space_bg: { bg: "#737373" } - header: { fg: "#ff0044" attr: b } - empty: "#737373" - row_index: { fg: "#737373" attr: b } - hints: "#a0a0a0" + separator: "#5c6270" + leading_trailing_space_bg: { bg: "#c2c8d4" } + header: { fg: "#2148c0" attr: b } + empty: "#5c6270" + row_index: { fg: "#5c6270" attr: b } + hints: "#c8cdd8" # --- Primitive types --- - string: { fg: "#00b377" } - int: { fg: "#007a88" } - float: { fg: "#007a88" } - bool: { fg: "#d18f00" } - filesize: { fg: "#007a88" } - duration: { fg: "#007a88" } - datetime: { fg: "#007a88" } - range: { fg: "#0a0a0a" } - record: { fg: "#0a0a0a" } - list: { fg: "#0a0a0a" } - block: { fg: "#7a3cff" } - nothing: { fg: "#737373" } - binary: { fg: "#007a88" } + string: { fg: "#00734d" } + int: { fg: "#00875a" } + float: { fg: "#00875a" } + bool: { fg: "#00875a" } + filesize: { fg: "#0080a6" } + duration: { fg: "#0080a6" } + datetime: { fg: "#0080a6" } + range: { fg: "#16181d" } + record: { fg: "#16181d" } + list: { fg: "#16181d" } + block: { fg: "#1633a0" } + nothing: { fg: "#5c6270" } + binary: { fg: "#0080a6" } # --- Shapes (REPL syntax highlighting) --- - shape_string: { fg: "#00b377" } - shape_string_interpolation: { fg: "#00b377" attr: b } - shape_int: { fg: "#007a88" } - shape_float: { fg: "#007a88" } - shape_bool: { fg: "#d18f00" } - shape_datetime: { fg: "#007a88" } - shape_binary: { fg: "#007a88" } - shape_filepath: { fg: "#007a88" } - shape_directory: { fg: "#007a88" } - shape_globpattern: { fg: "#007a88" } - shape_glob_interpolation: { fg: "#007a88" } - shape_nothing: { fg: "#737373" } - shape_variable: { fg: "#0a0a0a" } - shape_vardecl: { fg: "#0a0a0a" } - shape_operator: { fg: "#0a0a0a" } - shape_external: { fg: "#005577" } - shape_externalarg: { fg: "#0a0a0a" } - shape_internalcall: { fg: "#005577" attr: b } - shape_signature: { fg: "#005577" } - shape_flag: { fg: "#d18f00" } - shape_pipe: { fg: "#d18f00" attr: b } - shape_redirection: { fg: "#d18f00" } - shape_and: { fg: "#7a3cff" attr: b } - shape_or: { fg: "#7a3cff" attr: b } - shape_keyword: { fg: "#7a3cff" attr: b } - shape_block: { fg: "#7a3cff" } - shape_closure: { fg: "#7a3cff" } - shape_list: { fg: "#0a0a0a" } - shape_record: { fg: "#0a0a0a" } - shape_table: { fg: "#0a0a0a" } - shape_range: { fg: "#0a0a0a" } - shape_literal: { fg: "#0a0a0a" } - shape_custom: { fg: "#0a0a0a" } - shape_match_pattern: { fg: "#d18f00" } + # The REPL line is a code buffer: amber/violet/red stay out (keystone). + shape_string: { fg: "#00734d" } + shape_string_interpolation: { fg: "#00734d" attr: b } + shape_int: { fg: "#00875a" } + shape_float: { fg: "#00875a" } + shape_bool: { fg: "#00875a" } + shape_datetime: { fg: "#0080a6" } + shape_binary: { fg: "#0080a6" } + shape_filepath: { fg: "#0080a6" } + shape_directory: { fg: "#0080a6" } + shape_globpattern: { fg: "#0080a6" } + shape_glob_interpolation: { fg: "#0080a6" } + shape_nothing: { fg: "#5c6270" } + shape_variable: { fg: "#16181d" } + shape_vardecl: { fg: "#16181d" } + shape_operator: { fg: "#5c6270" } + shape_external: { fg: "#0e6e92" } + shape_externalarg: { fg: "#16181d" } + shape_internalcall: { fg: "#0e6e92" attr: b } + shape_signature: { fg: "#0e6e92" } + shape_flag: { fg: "#2148c0" } + shape_pipe: { fg: "#1633a0" attr: b } + shape_redirection: { fg: "#5c6270" } + shape_and: { fg: "#1633a0" attr: b } + shape_or: { fg: "#1633a0" attr: b } + shape_keyword: { fg: "#1633a0" attr: b } + shape_block: { fg: "#1633a0" } + shape_closure: { fg: "#1633a0" } + shape_list: { fg: "#16181d" } + shape_record: { fg: "#16181d" } + shape_table: { fg: "#16181d" } + shape_range: { fg: "#16181d" } + shape_literal: { fg: "#16181d" } + shape_custom: { fg: "#16181d" } + shape_match_pattern: { fg: "#1633a0" } shape_matching_brackets: { attr: u } - shape_garbage: { fg: "#ff0044" attr: b } + shape_garbage: { fg: "#c8003a" attr: b } } } \ No newline at end of file diff --git a/dot_config/nushell/themes/apex-neon.nu b/dot_config/nushell/themes/apex-neon.nu index 5f0fc08..0ed0bed 100644 --- a/dot_config/nushell/themes/apex-neon.nu +++ b/dot_config/nushell/themes/apex-neon.nu @@ -1,67 +1,69 @@ # Apex Neon — Nushell color config +# v2 spine: red = danger · violet = attention · cyan = info # Usage: add `use /path/to/apex-neon.nu` to config.nu export-env { $env.config.color_config = { # --- Chrome --- - separator: "#737373" - leading_trailing_space_bg: { bg: "#262626" } - header: { fg: "#ff0044" attr: b } - empty: "#737373" - row_index: { fg: "#737373" attr: b } - hints: "#404040" + separator: "#8b909c" + leading_trailing_space_bg: { bg: "#262a34" } + header: { fg: "#7db4ff" attr: b } + empty: "#8b909c" + row_index: { fg: "#8b909c" attr: b } + hints: "#383d49" # --- Primitive types --- - string: { fg: "#00ff99" } - int: { fg: "#00eaff" } - float: { fg: "#00eaff" } - bool: { fg: "#ffb700" } + string: { fg: "#2bffb2" } + int: { fg: "#37dba0" } + float: { fg: "#37dba0" } + bool: { fg: "#37dba0" } filesize: { fg: "#00eaff" } duration: { fg: "#00eaff" } datetime: { fg: "#00eaff" } - range: { fg: "#ededed" } - record: { fg: "#ededed" } - list: { fg: "#ededed" } - block: { fg: "#9d00ff" } - nothing: { fg: "#737373" } + range: { fg: "#e6e8ec" } + record: { fg: "#e6e8ec" } + list: { fg: "#e6e8ec" } + block: { fg: "#5b8cff" } + nothing: { fg: "#8b909c" } binary: { fg: "#00eaff" } # --- Shapes (REPL syntax highlighting) --- - shape_string: { fg: "#00ff99" } - shape_string_interpolation: { fg: "#00ff99" attr: b } - shape_int: { fg: "#00eaff" } - shape_float: { fg: "#00eaff" } - shape_bool: { fg: "#ffb700" } + # The REPL line is a code buffer: amber/violet/red stay out (keystone). + shape_string: { fg: "#2bffb2" } + shape_string_interpolation: { fg: "#2bffb2" attr: b } + shape_int: { fg: "#37dba0" } + shape_float: { fg: "#37dba0" } + shape_bool: { fg: "#37dba0" } shape_datetime: { fg: "#00eaff" } shape_binary: { fg: "#00eaff" } shape_filepath: { fg: "#00eaff" } shape_directory: { fg: "#00eaff" } shape_globpattern: { fg: "#00eaff" } shape_glob_interpolation: { fg: "#00eaff" } - shape_nothing: { fg: "#737373" } - shape_variable: { fg: "#ededed" } - shape_vardecl: { fg: "#ededed" } - shape_operator: { fg: "#ededed" } - shape_external: { fg: "#0088cc" } - shape_externalarg: { fg: "#ededed" } - shape_internalcall: { fg: "#0088cc" attr: b } - shape_signature: { fg: "#0088cc" } - shape_flag: { fg: "#ffb700" } - shape_pipe: { fg: "#ffb700" attr: b } - shape_redirection: { fg: "#ffb700" } - shape_and: { fg: "#9d00ff" attr: b } - shape_or: { fg: "#9d00ff" attr: b } - shape_keyword: { fg: "#9d00ff" attr: b } - shape_block: { fg: "#9d00ff" } - shape_closure: { fg: "#9d00ff" } - shape_list: { fg: "#ededed" } - shape_record: { fg: "#ededed" } - shape_table: { fg: "#ededed" } - shape_range: { fg: "#ededed" } - shape_literal: { fg: "#ededed" } - shape_custom: { fg: "#ededed" } - shape_match_pattern: { fg: "#ffb700" } + shape_nothing: { fg: "#8b909c" } + shape_variable: { fg: "#e6e8ec" } + shape_vardecl: { fg: "#e6e8ec" } + shape_operator: { fg: "#c2c8d4" } + shape_external: { fg: "#5af3ff" } + shape_externalarg: { fg: "#e6e8ec" } + shape_internalcall: { fg: "#5af3ff" attr: b } + shape_signature: { fg: "#5af3ff" } + shape_flag: { fg: "#2e6bff" } + shape_pipe: { fg: "#5b8cff" attr: b } + shape_redirection: { fg: "#c2c8d4" } + shape_and: { fg: "#5b8cff" attr: b } + shape_or: { fg: "#5b8cff" attr: b } + shape_keyword: { fg: "#5b8cff" attr: b } + shape_block: { fg: "#5b8cff" } + shape_closure: { fg: "#5b8cff" } + shape_list: { fg: "#e6e8ec" } + shape_record: { fg: "#e6e8ec" } + shape_table: { fg: "#e6e8ec" } + shape_range: { fg: "#e6e8ec" } + shape_literal: { fg: "#e6e8ec" } + shape_custom: { fg: "#e6e8ec" } + shape_match_pattern: { fg: "#5b8cff" } shape_matching_brackets: { attr: u } shape_garbage: { fg: "#ff0044" attr: b } } diff --git a/dot_config/nvim/colors/apex-aeon.lua b/dot_config/nvim/colors/apex-aeon.lua index 1c05a29..c95e678 100644 --- a/dot_config/nvim/colors/apex-aeon.lua +++ b/dot_config/nvim/colors/apex-aeon.lua @@ -1,30 +1,52 @@ -- Apex Aeon: Standalone Theme Engine --- Philosophy: State over Decoration. Red is Presence. Cyan is Data. +-- Philosophy: Signal over decoration. Red = danger. Violet = attention. +-- Neither red nor violet ever appears inside the code buffer (spec §1, §12). local M = {} M.palette = { - -- The Void - void = "#f5f5f5", -- Background - panel = "#e8e8e8", -- Dark Surface (Statusline/Gutter) - border = "#737373", -- Muted Border - stealth = "#a0a0a0", -- Comments / Ignored + -- NEUTRALS — the readable field -------------------------------------------- + void = "#f1f3f7", -- Background (also: ink on a bright accent fill) + panel = "#e7eaf0", -- Dark surface (statusline, floats, cursorline) + border = "#c2c8d4", -- Borders, separators + stealth = "#c8cdd8", -- Ignored text only (sub-threshold by design) + dim = "#5c6270", -- Comments, muted labels (ghost) + text = "#16181d", -- Body text (stark / ink) + punct = "#7d8390", -- Punctuation / delimiters (lifted neutral) + op = "#5c6270", -- Operators (neutral) + prop = "#2e333d", -- Fields / properties (dim body) - -- The Signal - text = "#0a0a0a", -- Stark White - dim = "#737373", -- Muted Text + -- ATTENTION (violet) — cursor, search, matched pairs. NEVER syntax. -------- + focus = "#7c2fd6", -- Cursor — the crosshair (hottest mark) + focus_active = "#8c3dd0", -- Current match, matched bracket / pair + focus_field = "#efe2fb", -- Search-set / selection background - -- The Hunter (Presence) - razor = "#ff0044", -- PRIMARY: Cursor, Current Match, Active Border - ink = "#0a0a0a", -- Text color on Razor backgrounds - alert = "#ff0044", -- Error accent text on void/panel + -- DANGER (red) — error, destructive, alarm. NEVER syntax. ------------------ + danger = "#c8003a", -- Error figure, destructive, active border + danger_field = "#fbe4e9", -- Error region / delete background + danger_hot = "#9e0030", -- Escalation - -- The HUD (Data) - tech = "#007a88", -- INFO: Selection, Search Match, Constants - toxic = "#00b377", -- SUCCESS: Strings - amber = "#d18f00", -- WARNING: Types, Search - azure = "#005577", -- STRUCT: Functions (Deep Blue) - sacred = "#7a3cff", -- SPECIAL: Keywords, Root + -- CODE HUES (buffer-safe) -------------------------------------------------- + info = "#0080a6", -- Cyan — info / links + action = "#0e6e92", -- Cyan — functions / methods + builtin = "#3a7d9c", -- Cyan, dim — self / builtin + kind = "#2148c0", -- Blue — types / kinds + storage = "#1633a0", -- Blue, heavy — storage / modifier / attribute + flow = "#1633a0", -- Bright-blue — control-flow navigation + value = "#00734d", -- Green — strings / values + escape = "#2b8f63", -- Green, bright — char / escape + const = "#00875a", -- Green, cool — numbers / const + ok = "#00875a", -- Green — success state + warn = "#a86b00", -- Amber — warning (UI only) + special = "#6a1fb8", -- Violet-deep — root / special only + + -- DIFF grounds ------------------------------------------------------------- + diff_add = "#e2f3ea", + diff_chg = "#f5ecda", + diff_del = "#fbe4e9", + + -- ON-ACCENT INK ------------------------------------------------------------ + ink = "#16181d", -- fg on a dim violet field (search / selection) } function M.load() @@ -59,101 +81,106 @@ function M.load() WinBar = { fg = p.text, bg = p.panel }, WinBarNC = { fg = p.dim, bg = p.panel }, - -- CURSOR & NAVIGATION ("The Hunter") ------------------------------------ - Cursor = { fg = p.ink, bg = p.razor }, -- Red Beam - TermCursor = { fg = p.ink, bg = p.razor }, + -- CURSOR & NAVIGATION ("Attention" — violet) ---------------------------- + Cursor = { fg = p.void, bg = p.focus }, -- Violet crosshair + TermCursor = { fg = p.void, bg = p.focus }, CursorLine = { bg = p.panel }, CursorColumn = { bg = p.panel }, ColorColumn = { bg = p.panel }, - CursorLineNr = { fg = p.razor, bold = true }, -- Red Line Number (You are here) + CursorLineNr = { fg = p.focus, bold = true }, -- Violet line number (you are here) LineNr = { fg = p.stealth }, -- Other lines fade out - -- SELECTION & SEARCH ("Terminator Vision") ------------------------------ - Visual = { fg = p.void, bg = p.tech, bold = true }, -- Cyan (Data Lock) - VisualNOS = { fg = p.void, bg = p.border }, + -- SELECTION & SEARCH ("Region scanned" — violet field) ------------------ + Visual = { fg = p.ink, bg = p.focus_field }, -- Dim violet field, fg preserved + VisualNOS = { fg = p.ink, bg = p.focus_field }, - Search = { fg = p.void, bg = p.tech }, -- Cyan (Potential Targets) - IncSearch = { fg = p.ink, bg = p.razor }, -- Red (Acquiring...) - CurSearch = { fg = p.ink, bg = p.razor, bold = true }, -- Red (Target Locked) + Search = { fg = p.ink, bg = p.focus_field }, -- Other matches: the set + IncSearch = { fg = p.void, bg = p.focus_active }, -- Acquiring + CurSearch = { fg = p.void, bg = p.focus_active, bold = true }, -- The one you are on -- STATUS & MESSAGES ----------------------------------------------------- StatusLine = { fg = p.text, bg = p.panel }, StatusLineNC = { fg = p.dim, bg = p.void }, - WildMenu = { fg = p.void, bg = p.tech }, + WildMenu = { fg = p.void, bg = p.focus_active }, Pmenu = { fg = p.text, bg = p.panel }, - PmenuSel = { fg = p.ink, bg = p.razor, bold = true }, -- Red Menu Selection + PmenuSel = { fg = p.void, bg = p.focus, bold = true }, -- Violet menu selection PmenuKind = { fg = p.dim, bg = p.panel }, - PmenuKindSel = { fg = p.ink, bg = p.razor, bold = true }, + PmenuKindSel = { fg = p.void, bg = p.focus, bold = true }, PmenuExtra = { fg = p.dim, bg = p.panel }, - PmenuExtraSel = { fg = p.ink, bg = p.razor, bold = true }, - PmenuMatch = { fg = p.tech, bg = p.panel, bold = true }, - PmenuMatchSel = { fg = p.ink, bg = p.razor, bold = true }, + PmenuExtraSel = { fg = p.void, bg = p.focus, bold = true }, + PmenuMatch = { fg = p.info, bg = p.panel, bold = true }, + PmenuMatchSel = { fg = p.void, bg = p.focus, bold = true }, PmenuSbar = { bg = p.panel }, PmenuThumb = { bg = p.stealth }, - ErrorMsg = { fg = p.alert }, - WarningMsg = { fg = p.amber }, - MoreMsg = { fg = p.tech }, + ErrorMsg = { fg = p.danger }, + WarningMsg = { fg = p.warn }, + MoreMsg = { fg = p.info }, ModeMsg = { fg = p.text }, TabLine = { fg = p.dim, bg = p.panel }, TabLineSel = { fg = p.text, bg = p.void, bold = true }, TabLineFill = { fg = p.panel, bg = p.panel }, QuickFixLine = { fg = p.text, bg = p.panel, bold = true }, - -- SYNTAX HIGHLIGHTING --------------------------------------------------- - Comment = { fg = p.stealth, italic = true }, - Constant = { fg = p.tech }, -- Cyan (Digital values) - String = { fg = p.toxic }, -- Green (Organic strings) - Character = { fg = p.toxic }, - Number = { fg = p.tech }, - Boolean = { fg = p.tech }, - Float = { fg = p.tech }, + -- SYNTAX: typed by grammatical role (spec §7) --------------------------- + -- blue = kinds · cyan = actions · green = values · neutral = connective + Comment = { fg = p.dim, italic = true }, -- Ghost — not a target - Identifier = { fg = p.text }, -- Variables (White) - Function = { fg = p.azure }, -- Deep Blue (Structure) + Constant = { fg = p.const }, -- Green (cool) — const values + String = { fg = p.value }, -- Green — strings + Character = { fg = p.value }, + Number = { fg = p.const }, + Boolean = { fg = p.const }, + Float = { fg = p.const }, - Statement = { fg = p.sacred }, -- Purple (Keywords) - Conditional = { fg = p.sacred }, - Repeat = { fg = p.sacred }, - Label = { fg = p.sacred }, - Operator = { fg = p.text }, -- White (Neutral) - Keyword = { fg = p.sacred }, - Exception = { fg = p.razor }, -- Red (Errors) + Identifier = { fg = p.text }, -- Variables (calm body) + Property = { fg = p.prop }, -- Fields / properties (dim body) + Function = { fg = p.action }, -- Cyan — actions + Builtin = { fg = p.builtin, italic = true }, -- Cyan dim — self / builtin - PreProc = { fg = p.sacred }, - Include = { fg = p.sacred }, - Define = { fg = p.sacred }, - Macro = { fg = p.sacred }, - PreCondit = { fg = p.sacred }, + Statement = { fg = p.flow, bold = true }, -- Bright-blue — control flow + Conditional = { fg = p.flow, bold = true }, + Repeat = { fg = p.flow, bold = true }, + Label = { fg = p.flow }, + Operator = { fg = p.op }, -- Neutral + Keyword = { fg = p.storage }, -- Blue — storage / modifier + Exception = { fg = p.flow, bold = true }, -- Control flow (NOT danger — never red in code) - Type = { fg = p.amber }, -- Yellow (Types/Classes) - StorageClass = { fg = p.amber }, - Structure = { fg = p.amber }, - Typedef = { fg = p.amber }, + PreProc = { fg = p.action }, -- Cyan — preprocessor / macro ceremony + Include = { fg = p.storage }, -- Blue — declarative (use / import) + Define = { fg = p.action }, + Macro = { fg = p.action, italic = true }, -- Cyan — bang-macros (action + ceremony) + PreCondit = { fg = p.action }, - Special = { fg = p.sacred }, -- Purple (special grammar tokens) - SpecialChar = { fg = p.amber }, -- Amber (escalated string variant: escapes, regex) - Tag = { fg = p.azure }, -- Blue (structural: HTML/XML tags) - Delimiter = { fg = p.dim }, -- Subtle delimiters - Debug = { fg = p.razor }, + Type = { fg = p.kind }, -- Blue — kinds + StorageClass = { fg = p.storage, bold = true }, -- Blue heavy + Structure = { fg = p.kind }, + Typedef = { fg = p.kind }, + Attribute = { fg = p.storage, italic = true }, -- Blue declarative — #[derive], decorators - Underlined = { underline = true }, + Special = { fg = p.escape }, -- Green — special tokens (escapes-adjacent) + SpecialChar = { fg = p.escape }, -- Green bright — string escapes / regex + Tag = { fg = p.kind }, -- Blue — structural HTML/XML tags + Delimiter = { fg = p.punct }, -- Neutral, lifted + Debug = { fg = p.special }, + + Underlined = { fg = p.info, underline = true }, Ignore = { fg = p.stealth }, - Error = { fg = p.alert }, - Todo = { fg = p.void, bg = p.amber, bold = true }, - Title = { fg = p.sacred, bold = true }, + Error = { fg = p.danger }, + Todo = { fg = p.void, bg = p.warn, bold = true }, + Title = { fg = p.info, bold = true }, - MatchParen = { fg = p.void, bg = p.amber, bold = true }, + MatchParen = { fg = p.focus_active, bold = true }, -- Attention — matched pair (violet) Whitespace = { fg = p.border }, NonText = { fg = p.border }, SpecialKey = { fg = p.border }, - SpellBad = { sp = p.razor, undercurl = true }, - SpellCap = { sp = p.amber, undercurl = true }, - SpellRare = { sp = p.tech, undercurl = true }, + SpellBad = { sp = p.danger, undercurl = true }, + SpellCap = { sp = p.warn, undercurl = true }, + SpellRare = { sp = p.info, undercurl = true }, SpellLocal = { sp = p.dim, undercurl = true }, LspReferenceText = { bg = p.panel }, LspReferenceRead = { bg = p.panel }, LspReferenceWrite = { bg = p.panel, bold = true }, - LspSignatureActiveParameter = { fg = p.void, bg = p.tech, bold = true }, + LspSignatureActiveParameter = { fg = p.void, bg = p.info, bold = true }, LspInlayHint = { fg = p.dim, bg = p.panel }, LspCodeLens = { fg = p.dim }, LspCodeLensSeparator = { fg = p.stealth }, @@ -161,118 +188,119 @@ function M.load() LspInfoTitle = { fg = p.dim, bg = p.panel }, -- DIAGNOSTICS ----------------------------------------------------------- - DiagnosticError = { fg = p.alert }, - DiagnosticWarn = { fg = p.amber }, - DiagnosticInfo = { fg = p.tech }, + DiagnosticError = { fg = p.danger }, + DiagnosticWarn = { fg = p.warn }, + DiagnosticInfo = { fg = p.info }, DiagnosticHint = { fg = p.dim }, - DiagnosticOk = { fg = p.toxic }, + DiagnosticOk = { fg = p.ok }, DiagnosticDeprecated = { fg = p.dim, strikethrough = true }, DiagnosticUnnecessary = { fg = p.dim }, - DiagnosticUnderlineError = { undercurl = true, sp = p.razor }, - DiagnosticUnderlineWarn = { undercurl = true, sp = p.amber }, - DiagnosticUnderlineInfo = { undercurl = true, sp = p.tech }, + DiagnosticUnderlineError = { undercurl = true, sp = p.danger }, + DiagnosticUnderlineWarn = { undercurl = true, sp = p.warn }, + DiagnosticUnderlineInfo = { undercurl = true, sp = p.info }, DiagnosticUnderlineHint = { undercurl = true, sp = p.dim }, - DiagnosticUnderlineOk = { undercurl = true, sp = p.toxic }, - DiagnosticVirtualTextError = { fg = p.alert, bg = p.panel }, - DiagnosticVirtualTextWarn = { fg = p.amber, bg = p.panel }, - DiagnosticVirtualTextInfo = { fg = p.tech, bg = p.panel }, + DiagnosticUnderlineOk = { undercurl = true, sp = p.ok }, + DiagnosticVirtualTextError = { fg = p.danger, bg = p.panel }, + DiagnosticVirtualTextWarn = { fg = p.warn, bg = p.panel }, + DiagnosticVirtualTextInfo = { fg = p.info, bg = p.panel }, DiagnosticVirtualTextHint = { fg = p.dim, bg = p.panel }, - DiagnosticVirtualTextOk = { fg = p.toxic, bg = p.panel }, - DiagnosticVirtualLinesError = { fg = p.alert, bg = p.panel }, - DiagnosticVirtualLinesWarn = { fg = p.amber, bg = p.panel }, - DiagnosticVirtualLinesInfo = { fg = p.tech, bg = p.panel }, + DiagnosticVirtualTextOk = { fg = p.ok, bg = p.panel }, + DiagnosticVirtualLinesError = { fg = p.danger, bg = p.panel }, + DiagnosticVirtualLinesWarn = { fg = p.warn, bg = p.panel }, + DiagnosticVirtualLinesInfo = { fg = p.info, bg = p.panel }, DiagnosticVirtualLinesHint = { fg = p.dim, bg = p.panel }, - DiagnosticVirtualLinesOk = { fg = p.toxic, bg = p.panel }, - DiagnosticSignError = { fg = p.alert, bg = p.void }, - DiagnosticSignWarn = { fg = p.amber, bg = p.void }, - DiagnosticSignInfo = { fg = p.tech, bg = p.void }, + DiagnosticVirtualLinesOk = { fg = p.ok, bg = p.panel }, + DiagnosticSignError = { fg = p.danger, bg = p.void }, + DiagnosticSignWarn = { fg = p.warn, bg = p.void }, + DiagnosticSignInfo = { fg = p.info, bg = p.void }, DiagnosticSignHint = { fg = p.dim, bg = p.void }, - DiagnosticSignOk = { fg = p.toxic, bg = p.void }, - DiagnosticFloatingError = { fg = p.alert, bg = p.panel }, - DiagnosticFloatingWarn = { fg = p.amber, bg = p.panel }, - DiagnosticFloatingInfo = { fg = p.tech, bg = p.panel }, + DiagnosticSignOk = { fg = p.ok, bg = p.void }, + DiagnosticFloatingError = { fg = p.danger, bg = p.panel }, + DiagnosticFloatingWarn = { fg = p.warn, bg = p.panel }, + DiagnosticFloatingInfo = { fg = p.info, bg = p.panel }, DiagnosticFloatingHint = { fg = p.dim, bg = p.panel }, - DiagnosticFloatingOk = { fg = p.toxic, bg = p.panel }, + DiagnosticFloatingOk = { fg = p.ok, bg = p.panel }, ApexMarkupStrong = { bold = true }, ApexMarkupItalic = { italic = true }, - ApexMarkupLink = { fg = p.tech, underline = true }, + ApexMarkupLink = { fg = p.info, underline = true }, - -- DIFF ------------------------------------------------------------------ - DiffAdd = { fg = p.toxic, bg = p.panel }, - DiffChange = { fg = p.tech, bg = p.panel }, - DiffDelete = { fg = p.razor, bg = p.panel }, - DiffText = { fg = p.void, bg = p.tech, bold = true }, + -- DIFF (figure / ground — spec §8) -------------------------------------- + DiffAdd = { fg = p.ok, bg = p.diff_add }, + DiffChange = { fg = p.warn, bg = p.diff_chg }, + DiffDelete = { fg = p.danger, bg = p.diff_del }, + DiffText = { fg = p.void, bg = p.warn, bold = true }, -- PLUGINS: TELESCOPE ("The HUD") ---------------------------------------- TelescopeNormal = { bg = p.void }, - TelescopeBorder = { fg = p.razor, bg = p.void }, -- Red Border + TelescopeBorder = { fg = p.border, bg = p.void }, TelescopePromptNormal = { fg = p.text, bg = p.void }, - TelescopePromptBorder = { fg = p.tech, bg = p.void }, -- Cyan Input Border - TelescopePromptTitle = { fg = p.void, bg = p.tech }, -- Cyan Label - TelescopePreviewTitle = { fg = p.ink, bg = p.razor }, -- Red Label - TelescopeResultsTitle = { fg = p.void, bg = p.panel }, - TelescopeSelection = { fg = p.ink, bg = p.razor }, -- Red Selection + TelescopePromptBorder = { fg = p.info, bg = p.void }, -- Cyan input border + TelescopePromptTitle = { fg = p.void, bg = p.info }, -- Cyan label + TelescopePreviewTitle = { fg = p.void, bg = p.ok }, -- Green label + TelescopeResultsTitle = { fg = p.dim, bg = p.panel }, + TelescopeSelection = { fg = p.text, bg = p.focus_field, bold = true }, -- Violet field + TelescopeMatching = { fg = p.info, bold = true }, - -- PLUGINS: NEO-TREE ("Stealth") ----------------------------------------- + -- PLUGINS: NEO-TREE ----------------------------------------------------- NeoTreeNormal = { bg = p.void }, NeoTreeNormalNC = { bg = p.void }, NeoTreeVertSplit = { fg = p.panel, bg = p.void }, NeoTreeWinSeparator = { fg = p.panel, bg = p.void }, -- Fade out tree border - NeoTreeRootName = { fg = p.razor, bold = true }, -- Root is Red - NeoTreeGitAdded = { fg = p.toxic }, - NeoTreeGitConflict = { fg = p.amber }, - NeoTreeGitDeleted = { fg = p.razor }, - NeoTreeGitModified = { fg = p.tech }, + NeoTreeRootName = { fg = p.focus, bold = true }, -- Root = location (violet) + NeoTreeGitAdded = { fg = p.ok }, + NeoTreeGitConflict = { fg = p.warn }, + NeoTreeGitDeleted = { fg = p.danger }, + NeoTreeGitModified = { fg = p.info }, -- PLUGINS: GITSIGNS ----------------------------------------------------- - GitSignsAdd = { fg = p.toxic, bg = p.void }, - GitSignsChange = { fg = p.tech, bg = p.void }, - GitSignsDelete = { fg = p.razor, bg = p.void }, + GitSignsAdd = { fg = p.ok, bg = p.void }, + GitSignsChange = { fg = p.warn, bg = p.void }, + GitSignsDelete = { fg = p.danger, bg = p.void }, -- PLUGINS: CMP (Completion) --------------------------------------------- CmpItemAbbrDeprecated = { fg = p.dim, strikethrough = true }, - CmpItemAbbrMatch = { fg = p.tech, bold = true }, - CmpItemAbbrMatchFuzzy = { fg = p.tech, bold = true }, - CmpItemKindFunction = { fg = p.azure }, - CmpItemKindMethod = { fg = p.azure }, - CmpItemKindKeyword = { fg = p.sacred }, + CmpItemAbbrMatch = { fg = p.info, bold = true }, + CmpItemAbbrMatchFuzzy = { fg = p.info, bold = true }, + CmpItemKindFunction = { fg = p.action }, + CmpItemKindMethod = { fg = p.action }, + CmpItemKindKeyword = { fg = p.flow }, CmpItemKindVariable = { fg = p.text }, -- PLUGINS: BLINK.CMP (Completion) ---------------------------------------- BlinkCmpMenu = { fg = p.text, bg = p.panel }, BlinkCmpMenuBorder = { fg = p.border, bg = p.panel }, - BlinkCmpMenuSelection = { fg = p.ink, bg = p.razor, bold = true }, + BlinkCmpMenuSelection = { fg = p.void, bg = p.focus, bold = true }, BlinkCmpScrollBarThumb = { bg = p.stealth }, BlinkCmpScrollBarGutter = { bg = p.panel }, BlinkCmpLabel = { fg = p.text }, BlinkCmpLabelDeprecated = { fg = p.dim, strikethrough = true }, - BlinkCmpLabelMatch = { fg = p.tech, bold = true }, + BlinkCmpLabelMatch = { fg = p.info, bold = true }, BlinkCmpKindText = { fg = p.text }, - BlinkCmpKindMethod = { fg = p.azure }, - BlinkCmpKindFunction = { fg = p.azure }, - BlinkCmpKindConstructor = { fg = p.amber }, - BlinkCmpKindField = { fg = p.text }, + BlinkCmpKindMethod = { fg = p.action }, + BlinkCmpKindFunction = { fg = p.action }, + BlinkCmpKindConstructor = { fg = p.kind }, + BlinkCmpKindField = { fg = p.prop }, BlinkCmpKindVariable = { fg = p.text }, - BlinkCmpKindClass = { fg = p.amber }, - BlinkCmpKindInterface = { fg = p.amber }, - BlinkCmpKindModule = { fg = p.amber }, - BlinkCmpKindProperty = { fg = p.text }, - BlinkCmpKindUnit = { fg = p.tech }, - BlinkCmpKindValue = { fg = p.tech }, - BlinkCmpKindEnum = { fg = p.amber }, - BlinkCmpKindKeyword = { fg = p.sacred }, - BlinkCmpKindSnippet = { fg = p.toxic }, - BlinkCmpKindColor = { fg = p.tech }, + BlinkCmpKindClass = { fg = p.kind }, + BlinkCmpKindInterface = { fg = p.kind }, + BlinkCmpKindModule = { fg = p.kind }, + BlinkCmpKindProperty = { fg = p.prop }, + BlinkCmpKindUnit = { fg = p.const }, + BlinkCmpKindValue = { fg = p.const }, + BlinkCmpKindEnum = { fg = p.kind }, + BlinkCmpKindKeyword = { fg = p.flow }, + BlinkCmpKindSnippet = { fg = p.value }, + BlinkCmpKindColor = { fg = p.info }, BlinkCmpKindFile = { fg = p.text }, - BlinkCmpKindReference = { fg = p.tech }, - BlinkCmpKindFolder = { fg = p.text }, - BlinkCmpKindEnumMember = { fg = p.tech }, - BlinkCmpKindConstant = { fg = p.tech }, - BlinkCmpKindStruct = { fg = p.amber }, - BlinkCmpKindEvent = { fg = p.amber }, - BlinkCmpKindOperator = { fg = p.text }, - BlinkCmpKindTypeParameter = { fg = p.amber }, + BlinkCmpKindReference = { fg = p.info }, + BlinkCmpKindFolder = { fg = p.info }, + BlinkCmpKindEnumMember = { fg = p.const }, + BlinkCmpKindConstant = { fg = p.const }, + BlinkCmpKindStruct = { fg = p.kind }, + BlinkCmpKindEvent = { fg = p.kind }, + BlinkCmpKindOperator = { fg = p.op }, + BlinkCmpKindTypeParameter = { fg = p.kind }, BlinkCmpGhostText = { fg = p.stealth, italic = true }, BlinkCmpDoc = { fg = p.text, bg = p.panel }, BlinkCmpDocBorder = { fg = p.border, bg = p.panel }, @@ -280,7 +308,7 @@ function M.load() BlinkCmpDocCursorLine = { bg = p.border }, BlinkCmpSignatureHelp = { fg = p.text, bg = p.panel }, BlinkCmpSignatureHelpBorder = { fg = p.border, bg = p.panel }, - BlinkCmpSignatureHelpActiveParameter = { fg = p.ink, bg = p.tech, bold = true }, + BlinkCmpSignatureHelpActiveParameter = { fg = p.void, bg = p.info, bold = true }, BlinkCmpSource = { fg = p.dim }, -- PLUGINS: BUFFERLINE ----------------------------------------------------- @@ -291,183 +319,183 @@ function M.load() BufferLineBufferVisible = { fg = p.dim, bg = p.panel }, BufferLineTab = { fg = p.dim, bg = p.panel }, BufferLineTabSelected = { fg = p.text, bg = p.void, bold = true }, - BufferLineTabClose = { fg = p.razor, bg = p.panel }, - BufferLineModified = { fg = p.tech, bg = p.panel }, - BufferLineModifiedSelected = { fg = p.tech, bg = p.void }, - BufferLineModifiedVisible = { fg = p.tech, bg = p.panel }, + BufferLineTabClose = { fg = p.dim, bg = p.panel }, + BufferLineModified = { fg = p.info, bg = p.panel }, + BufferLineModifiedSelected = { fg = p.info, bg = p.void }, + BufferLineModifiedVisible = { fg = p.info, bg = p.panel }, BufferLineSeparator = { fg = p.border, bg = p.panel }, BufferLineSeparatorSelected = { fg = p.border, bg = p.void }, BufferLineSeparatorVisible = { fg = p.border, bg = p.panel }, - BufferLineIndicatorSelected = { fg = p.razor, bg = p.void }, + BufferLineIndicatorSelected = { fg = p.focus, bg = p.void }, -- Active = violet BufferLineCloseButton = { fg = p.dim, bg = p.panel }, - BufferLineCloseButtonSelected = { fg = p.razor, bg = p.void }, + BufferLineCloseButtonSelected = { fg = p.focus, bg = p.void }, BufferLineCloseButtonVisible = { fg = p.dim, bg = p.panel }, BufferLineDiagnostic = { fg = p.dim, bg = p.panel }, BufferLineDiagnosticSelected = { fg = p.dim, bg = p.void }, - BufferLineError = { fg = p.alert, bg = p.panel }, - BufferLineErrorSelected = { fg = p.alert, bg = p.void, bold = true }, - BufferLineWarning = { fg = p.amber, bg = p.panel }, - BufferLineWarningSelected = { fg = p.amber, bg = p.void, bold = true }, - BufferLineInfo = { fg = p.tech, bg = p.panel }, - BufferLineInfoSelected = { fg = p.tech, bg = p.void, bold = true }, + BufferLineError = { fg = p.danger, bg = p.panel }, + BufferLineErrorSelected = { fg = p.danger, bg = p.void, bold = true }, + BufferLineWarning = { fg = p.warn, bg = p.panel }, + BufferLineWarningSelected = { fg = p.warn, bg = p.void, bold = true }, + BufferLineInfo = { fg = p.info, bg = p.panel }, + BufferLineInfoSelected = { fg = p.info, bg = p.void, bold = true }, BufferLineHint = { fg = p.dim, bg = p.panel }, BufferLineHintSelected = { fg = p.dim, bg = p.void, bold = true }, - BufferLinePick = { fg = p.razor, bg = p.panel, bold = true }, - BufferLinePickSelected = { fg = p.razor, bg = p.void, bold = true }, - BufferLinePickVisible = { fg = p.razor, bg = p.panel, bold = true }, + BufferLinePick = { fg = p.focus, bg = p.panel, bold = true }, + BufferLinePickSelected = { fg = p.focus, bg = p.void, bold = true }, + BufferLinePickVisible = { fg = p.focus, bg = p.panel, bold = true }, -- PLUGINS: WHICH-KEY ------------------------------------------------------ - WhichKey = { fg = p.razor, bold = true }, + WhichKey = { fg = p.flow, bold = true }, -- The key trigger = navigation WhichKeySeparator = { fg = p.stealth }, - WhichKeyGroup = { fg = p.tech }, + WhichKeyGroup = { fg = p.info }, WhichKeyDesc = { fg = p.text }, WhichKeyFloat = { bg = p.panel }, WhichKeyBorder = { fg = p.border, bg = p.panel }, - WhichKeyTitle = { fg = p.ink, bg = p.razor, bold = true }, + WhichKeyTitle = { fg = p.void, bg = p.focus, bold = true }, WhichKeyNormal = { fg = p.text, bg = p.panel }, WhichKeyValue = { fg = p.dim }, - WhichKeyIcon = { fg = p.azure }, - WhichKeyIconAzure = { fg = p.azure }, - WhichKeyIconGreen = { fg = p.toxic }, - WhichKeyIconYellow = { fg = p.amber }, - WhichKeyIconRed = { fg = p.razor }, - WhichKeyIconPurple = { fg = p.sacred }, - WhichKeyIconCyan = { fg = p.tech }, + WhichKeyIcon = { fg = p.action }, + WhichKeyIconAzure = { fg = p.kind }, + WhichKeyIconGreen = { fg = p.ok }, + WhichKeyIconYellow = { fg = p.warn }, + WhichKeyIconRed = { fg = p.danger }, + WhichKeyIconPurple = { fg = p.special }, + WhichKeyIconCyan = { fg = p.info }, -- PLUGINS: TROUBLE -------------------------------------------------------- TroubleNormal = { fg = p.text, bg = p.void }, TroubleNormalNC = { fg = p.dim, bg = p.void }, TroubleText = { fg = p.text }, - TroubleCount = { fg = p.ink, bg = p.razor, bold = true }, - TroubleError = { fg = p.alert }, - TroubleWarning = { fg = p.amber }, + TroubleCount = { fg = p.void, bg = p.focus_active, bold = true }, + TroubleError = { fg = p.danger }, + TroubleWarning = { fg = p.warn }, TroubleHint = { fg = p.dim }, - TroubleInfo = { fg = p.tech }, + TroubleInfo = { fg = p.info }, TroubleSource = { fg = p.dim }, TroubleCode = { fg = p.stealth }, TroubleLocation = { fg = p.dim }, - TroubleFile = { fg = p.tech, bold = true }, + TroubleFile = { fg = p.info, bold = true }, TroubleIndent = { fg = p.border }, TroublePos = { fg = p.dim }, - TroubleSignError = { fg = p.alert }, - TroubleSignWarning = { fg = p.amber }, + TroubleSignError = { fg = p.danger }, + TroubleSignWarning = { fg = p.warn }, TroubleSignHint = { fg = p.dim }, - TroubleSignInfo = { fg = p.tech }, - TroublePreview = { fg = p.ink, bg = p.razor }, + TroubleSignInfo = { fg = p.info }, + TroublePreview = { fg = p.text, bg = p.focus_field }, TroubleFocusText = { fg = p.text, bold = true }, -- PLUGINS: INDENT-BLANKLINE ----------------------------------------------- IblIndent = { fg = p.border }, - IblScope = { fg = p.stealth }, + IblScope = { fg = p.flow }, -- Current scope = structural (blue) IblWhitespace = { fg = p.border }, -- PLUGINS: NEOGIT --------------------------------------------------------- - NeogitBranch = { fg = p.razor, bold = true }, - NeogitRemote = { fg = p.tech }, + NeogitBranch = { fg = p.flow, bold = true }, -- Ref / location + NeogitRemote = { fg = p.info }, NeogitHunkHeader = { fg = p.text, bg = p.panel, bold = true }, - NeogitHunkHeaderHighlight = { fg = p.ink, bg = p.tech, bold = true }, - NeogitDiffAdd = { fg = p.toxic, bg = p.void }, - NeogitDiffDelete = { fg = p.razor, bg = p.void }, + NeogitHunkHeaderHighlight = { fg = p.void, bg = p.info, bold = true }, + NeogitDiffAdd = { fg = p.ok, bg = p.void }, + NeogitDiffDelete = { fg = p.danger, bg = p.void }, NeogitDiffContext = { fg = p.dim, bg = p.void }, - NeogitDiffAddHighlight = { fg = p.toxic, bg = p.panel }, - NeogitDiffDeleteHighlight = { fg = p.razor, bg = p.panel }, + NeogitDiffAddHighlight = { fg = p.ok, bg = p.diff_add }, + NeogitDiffDeleteHighlight = { fg = p.danger, bg = p.diff_del }, NeogitDiffContextHighlight = { fg = p.text, bg = p.panel }, - NeogitCommitViewHeader = { fg = p.ink, bg = p.razor, bold = true }, - NeogitFilePath = { fg = p.tech, underline = true }, - NeogitDiffHeader = { fg = p.amber, bold = true }, - NeogitDiffHeaderHighlight = { fg = p.ink, bg = p.amber, bold = true }, + NeogitCommitViewHeader = { fg = p.void, bg = p.info, bold = true }, + NeogitFilePath = { fg = p.info, underline = true }, + NeogitDiffHeader = { fg = p.warn, bold = true }, + NeogitDiffHeaderHighlight = { fg = p.void, bg = p.warn, bold = true }, NeogitObjectId = { fg = p.dim }, - NeogitStashes = { fg = p.sacred }, - NeogitRebaseDone = { fg = p.toxic }, + NeogitStashes = { fg = p.special }, + NeogitRebaseDone = { fg = p.ok }, NeogitFold = { fg = p.stealth }, -- PLUGINS: AERIAL (Symbols Outline) -------------------------------------- - AerialLine = { fg = p.ink, bg = p.razor }, + AerialLine = { fg = p.ink, bg = p.focus_field }, AerialLineNC = { fg = p.dim, bg = p.panel }, AerialNormal = { fg = p.text, bg = p.void }, AerialGuide = { fg = p.border }, - AerialClass = { fg = p.amber }, - AerialClassIcon = { fg = p.amber }, - AerialFunction = { fg = p.azure }, - AerialFunctionIcon = { fg = p.azure }, - AerialMethod = { fg = p.azure }, - AerialMethodIcon = { fg = p.azure }, - AerialConstructor = { fg = p.amber }, - AerialField = { fg = p.text }, + AerialClass = { fg = p.kind }, + AerialClassIcon = { fg = p.kind }, + AerialFunction = { fg = p.action }, + AerialFunctionIcon = { fg = p.action }, + AerialMethod = { fg = p.action }, + AerialMethodIcon = { fg = p.action }, + AerialConstructor = { fg = p.kind }, + AerialField = { fg = p.prop }, AerialVariable = { fg = p.text }, - AerialEnum = { fg = p.amber }, - AerialEnumIcon = { fg = p.amber }, - AerialInterface = { fg = p.amber }, - AerialModule = { fg = p.amber }, - AerialNamespace = { fg = p.amber }, - AerialPackage = { fg = p.amber }, - AerialProperty = { fg = p.text }, - AerialStruct = { fg = p.amber }, - AerialType = { fg = p.amber }, - AerialTypeParameter = { fg = p.amber }, - AerialConstant = { fg = p.tech }, - AerialString = { fg = p.toxic }, - AerialNumber = { fg = p.tech }, - AerialBoolean = { fg = p.tech }, - AerialKey = { fg = p.sacred }, - AerialKeyword = { fg = p.sacred }, - AerialOperator = { fg = p.text }, + AerialEnum = { fg = p.kind }, + AerialEnumIcon = { fg = p.kind }, + AerialInterface = { fg = p.kind }, + AerialModule = { fg = p.kind }, + AerialNamespace = { fg = p.kind }, + AerialPackage = { fg = p.kind }, + AerialProperty = { fg = p.prop }, + AerialStruct = { fg = p.kind }, + AerialType = { fg = p.kind }, + AerialTypeParameter = { fg = p.kind }, + AerialConstant = { fg = p.const }, + AerialString = { fg = p.value }, + AerialNumber = { fg = p.const }, + AerialBoolean = { fg = p.const }, + AerialKey = { fg = p.flow }, + AerialKeyword = { fg = p.flow }, + AerialOperator = { fg = p.op }, AerialNull = { fg = p.dim }, - AerialArray = { fg = p.tech }, - AerialObject = { fg = p.amber }, - AerialEvent = { fg = p.amber }, + AerialArray = { fg = p.const }, + AerialObject = { fg = p.kind }, + AerialEvent = { fg = p.kind }, -- PLUGINS: DAP-UI --------------------------------------------------------- - DapUIScope = { fg = p.tech, bold = true }, - DapUIType = { fg = p.amber }, + DapUIScope = { fg = p.info, bold = true }, + DapUIType = { fg = p.kind }, DapUIDecoration = { fg = p.border }, - DapUIThread = { fg = p.toxic }, - DapUIStoppedThread = { fg = p.razor, bold = true }, - DapUICurrentFrameName = { fg = p.razor, bold = true }, + DapUIThread = { fg = p.ok }, + DapUIStoppedThread = { fg = p.danger, bold = true }, -- Halted = alarm + DapUICurrentFrameName = { fg = p.danger, bold = true }, DapUISource = { fg = p.dim }, DapUILineNumber = { fg = p.stealth }, DapUIFloatBorder = { fg = p.border, bg = p.panel }, DapUIFloatNormal = { fg = p.text, bg = p.panel }, DapUIWatchesEmpty = { fg = p.dim }, - DapUIWatchesValue = { fg = p.toxic }, - DapUIWatchesError = { fg = p.alert }, - DapUIBreakpointsPath = { fg = p.tech }, + DapUIWatchesValue = { fg = p.value }, + DapUIWatchesError = { fg = p.danger }, + DapUIBreakpointsPath = { fg = p.info }, DapUIBreakpointsInfo = { fg = p.dim }, - DapUIBreakpointsCurrentLine = { fg = p.razor, bold = true }, + DapUIBreakpointsCurrentLine = { fg = p.danger, bold = true }, DapUIBreakpointsDisabledLine = { fg = p.stealth }, DapUIEndofBuffer = { fg = p.void }, - DapUIModifiedValue = { fg = p.amber, bold = true }, - DapUIStop = { fg = p.razor }, - DapUIStepOver = { fg = p.tech }, - DapUIStepInto = { fg = p.tech }, - DapUIStepBack = { fg = p.tech }, - DapUIStepOut = { fg = p.tech }, - DapUIRestart = { fg = p.toxic }, + DapUIModifiedValue = { fg = p.warn, bold = true }, + DapUIStop = { fg = p.danger }, + DapUIStepOver = { fg = p.info }, + DapUIStepInto = { fg = p.info }, + DapUIStepBack = { fg = p.info }, + DapUIStepOut = { fg = p.info }, + DapUIRestart = { fg = p.ok }, DapUIUnavailable = { fg = p.stealth }, - DapUIPlayPause = { fg = p.toxic }, + DapUIPlayPause = { fg = p.ok }, -- PLUGINS: DAP VIRTUAL TEXT ----------------------------------------------- NvimDapVirtualText = { fg = p.dim, italic = true }, - NvimDapVirtualTextChanged = { fg = p.amber, italic = true }, - NvimDapVirtualTextError = { fg = p.alert, italic = true }, - NvimDapVirtualTextInfo = { fg = p.tech, italic = true }, + NvimDapVirtualTextChanged = { fg = p.warn, italic = true }, + NvimDapVirtualTextError = { fg = p.danger, italic = true }, + NvimDapVirtualTextInfo = { fg = p.info, italic = true }, -- PLUGINS: NVIM-NOTIFY ---------------------------------------------------- - NotifyERRORBorder = { fg = p.razor }, - NotifyWARNBorder = { fg = p.amber }, - NotifyINFOBorder = { fg = p.tech }, + NotifyERRORBorder = { fg = p.danger }, + NotifyWARNBorder = { fg = p.warn }, + NotifyINFOBorder = { fg = p.info }, NotifyDEBUGBorder = { fg = p.stealth }, - NotifyTRACEBorder = { fg = p.sacred }, - NotifyERRORIcon = { fg = p.razor }, - NotifyWARNIcon = { fg = p.amber }, - NotifyINFOIcon = { fg = p.tech }, + NotifyTRACEBorder = { fg = p.special }, + NotifyERRORIcon = { fg = p.danger }, + NotifyWARNIcon = { fg = p.warn }, + NotifyINFOIcon = { fg = p.info }, NotifyDEBUGIcon = { fg = p.stealth }, - NotifyTRACEIcon = { fg = p.sacred }, - NotifyERRORTitle = { fg = p.razor, bold = true }, - NotifyWARNTitle = { fg = p.amber, bold = true }, - NotifyINFOTitle = { fg = p.tech, bold = true }, + NotifyTRACEIcon = { fg = p.special }, + NotifyERRORTitle = { fg = p.danger, bold = true }, + NotifyWARNTitle = { fg = p.warn, bold = true }, + NotifyINFOTitle = { fg = p.info, bold = true }, NotifyDEBUGTitle = { fg = p.stealth, bold = true }, - NotifyTRACETitle = { fg = p.sacred, bold = true }, + NotifyTRACETitle = { fg = p.special, bold = true }, NotifyERRORBody = { fg = p.text, bg = p.panel }, NotifyWARNBody = { fg = p.text, bg = p.panel }, NotifyINFOBody = { fg = p.text, bg = p.panel }, @@ -476,68 +504,68 @@ function M.load() -- PLUGINS: SATELLITE (Scrollbar) ----------------------------------------- SatelliteBar = { bg = p.panel }, - SatelliteCursor = { fg = p.razor }, + SatelliteCursor = { fg = p.focus }, -- Cursor position = violet SatellitePosition = { fg = p.dim }, - SatelliteError = { fg = p.alert }, - SatelliteWarning = { fg = p.amber }, + SatelliteError = { fg = p.danger }, + SatelliteWarning = { fg = p.warn }, SatelliteHint = { fg = p.dim }, - SatelliteInfo = { fg = p.tech }, - SatelliteSearch = { fg = p.tech }, - SatelliteGit = { fg = p.toxic }, - SatelliteMark = { fg = p.amber }, + SatelliteInfo = { fg = p.info }, + SatelliteSearch = { fg = p.focus_active }, -- Search = violet + SatelliteGit = { fg = p.ok }, + SatelliteMark = { fg = p.warn }, -- PLUGINS: OIL.NVIM (File Explorer) -------------------------------------- - OilDir = { fg = p.tech, bold = true }, - OilDirIcon = { fg = p.tech }, - OilLink = { fg = p.sacred, italic = true }, - OilLinkTarget = { fg = p.sacred }, - OilCopy = { fg = p.amber, bold = true }, - OilMove = { fg = p.amber }, - OilChange = { fg = p.tech }, - OilCreate = { fg = p.toxic, bold = true }, - OilDelete = { fg = p.razor, bold = true }, + OilDir = { fg = p.info, bold = true }, + OilDirIcon = { fg = p.info }, + OilLink = { fg = p.flow, italic = true }, -- Symlink = structural (blue) + OilLinkTarget = { fg = p.flow }, + OilCopy = { fg = p.warn, bold = true }, + OilMove = { fg = p.warn }, + OilChange = { fg = p.info }, + OilCreate = { fg = p.ok, bold = true }, + OilDelete = { fg = p.danger, bold = true }, -- Destructive = danger OilPermissionNone = { fg = p.stealth }, - OilPermissionRead = { fg = p.tech }, - OilPermissionWrite = { fg = p.amber }, - OilPermissionExecute = { fg = p.toxic }, - OilTypeDir = { fg = p.tech }, + OilPermissionRead = { fg = p.info }, + OilPermissionWrite = { fg = p.warn }, + OilPermissionExecute = { fg = p.ok }, + OilTypeDir = { fg = p.info }, OilTypeFile = { fg = p.text }, - OilTypeLink = { fg = p.sacred }, - OilTypeSpecial = { fg = p.razor }, + OilTypeLink = { fg = p.flow }, + OilTypeSpecial = { fg = p.special }, OilSize = { fg = p.dim }, OilMtime = { fg = p.stealth }, -- PLUGINS: NEOTEST -------------------------------------------------------- - NeotestPassed = { fg = p.toxic }, - NeotestFailed = { fg = p.razor }, - NeotestRunning = { fg = p.amber }, + NeotestPassed = { fg = p.ok }, + NeotestFailed = { fg = p.danger }, + NeotestRunning = { fg = p.warn }, NeotestSkipped = { fg = p.dim }, NeotestUnknown = { fg = p.stealth }, NeotestTest = { fg = p.text }, - NeotestFile = { fg = p.tech }, - NeotestDir = { fg = p.tech, bold = true }, - NeotestNamespace = { fg = p.amber }, - NeotestMarked = { fg = p.razor, bold = true }, - NeotestTarget = { fg = p.razor }, - NeotestAdapterName = { fg = p.sacred, bold = true }, - NeotestWinSelect = { fg = p.tech, bold = true }, + NeotestFile = { fg = p.info }, + NeotestDir = { fg = p.info, bold = true }, + NeotestNamespace = { fg = p.kind }, + NeotestMarked = { fg = p.focus, bold = true }, -- Mark = attention + NeotestTarget = { fg = p.focus }, + NeotestAdapterName = { fg = p.info, bold = true }, + NeotestWinSelect = { fg = p.info, bold = true }, NeotestFocused = { bold = true }, NeotestIndent = { fg = p.border }, NeotestExpandMarker = { fg = p.dim }, - NeotestWatching = { fg = p.amber }, + NeotestWatching = { fg = p.warn }, -- PLUGINS: GRUG-FAR (Search & Replace) ----------------------------------- - GrugFarResultsHeader = { fg = p.ink, bg = p.razor, bold = true }, - GrugFarResultsMatch = { fg = p.void, bg = p.tech, bold = true }, - GrugFarResultsMatchAdded = { fg = p.toxic }, - GrugFarResultsMatchRemoved = { fg = p.razor }, + GrugFarResultsHeader = { fg = p.void, bg = p.focus, bold = true }, -- Search = violet + GrugFarResultsMatch = { fg = p.ink, bg = p.focus_field, bold = true }, + GrugFarResultsMatchAdded = { fg = p.ok }, + GrugFarResultsMatchRemoved = { fg = p.danger }, GrugFarResultsLineNo = { fg = p.dim }, - GrugFarResultsPath = { fg = p.tech, underline = true }, + GrugFarResultsPath = { fg = p.info, underline = true }, GrugFarResultsStats = { fg = p.dim }, - GrugFarInputLabel = { fg = p.amber, bold = true }, + GrugFarInputLabel = { fg = p.warn, bold = true }, GrugFarInputPlaceholder = { fg = p.stealth }, GrugFarHelpHeader = { fg = p.dim, bold = true }, - GrugFarHelpWinHeader = { fg = p.ink, bg = p.panel, bold = true }, + GrugFarHelpWinHeader = { fg = p.text, bg = p.panel, bold = true }, -- PLUGINS: TWINNY (AI Ghost Text) ---------------------------------------- TwinnyAccept = { fg = p.stealth, italic = true }, @@ -545,26 +573,27 @@ function M.load() -- PLUGINS: GITSIGNS (extended) ------------------------------------------- GitSignsCurrentLineBlame = { fg = p.stealth, italic = true }, - GitSignsAddNr = { fg = p.toxic }, - GitSignsChangeNr = { fg = p.tech }, - GitSignsDeleteNr = { fg = p.razor }, - GitSignsAddLn = { fg = p.toxic, bg = p.panel }, - GitSignsChangeLn = { fg = p.tech, bg = p.panel }, - GitSignsDeleteLn = { fg = p.razor, bg = p.panel }, - GitSignsAddPreview = { fg = p.toxic, bg = p.panel }, - GitSignsDeletePreview = { fg = p.razor, bg = p.panel }, - GitSignsAddInline = { fg = p.void, bg = p.toxic }, - GitSignsDeleteInline = { fg = p.void, bg = p.razor }, - GitSignsChangeInline = { fg = p.void, bg = p.tech }, + GitSignsAddNr = { fg = p.ok }, + GitSignsChangeNr = { fg = p.warn }, + GitSignsDeleteNr = { fg = p.danger }, + GitSignsAddLn = { fg = p.ok, bg = p.diff_add }, + GitSignsChangeLn = { fg = p.warn, bg = p.diff_chg }, + GitSignsDeleteLn = { fg = p.danger, bg = p.diff_del }, + GitSignsAddPreview = { fg = p.ok, bg = p.diff_add }, + GitSignsDeletePreview = { fg = p.danger, bg = p.diff_del }, + GitSignsAddInline = { fg = p.void, bg = p.ok }, + GitSignsDeleteInline = { fg = p.void, bg = p.danger }, + GitSignsChangeInline = { fg = p.void, bg = p.warn }, GitSignsUntracked = { fg = p.dim }, -- PLUGINS: RENDER-MARKDOWN ------------------------------------------------ - RenderMarkdownH1 = { fg = p.razor, bold = true }, - RenderMarkdownH2 = { fg = p.amber, bold = true }, - RenderMarkdownH3 = { fg = p.tech, bold = true }, - RenderMarkdownH4 = { fg = p.toxic, bold = true }, - RenderMarkdownH5 = { fg = p.sacred, bold = true }, - RenderMarkdownH6 = { fg = p.azure, bold = true }, + -- Heading ramp avoids red + violet (both reserved); uses code-safe hues only. + RenderMarkdownH1 = { fg = p.info, bold = true }, + RenderMarkdownH2 = { fg = p.flow, bold = true }, + RenderMarkdownH3 = { fg = p.kind, bold = true }, + RenderMarkdownH4 = { fg = p.ok, bold = true }, + RenderMarkdownH5 = { fg = p.warn, bold = true }, + RenderMarkdownH6 = { fg = p.dim, bold = true }, RenderMarkdownH1Bg = { bg = p.panel }, RenderMarkdownH2Bg = { bg = p.panel }, RenderMarkdownH3Bg = { bg = p.panel }, @@ -572,19 +601,19 @@ function M.load() RenderMarkdownH5Bg = { bg = p.panel }, RenderMarkdownH6Bg = { bg = p.panel }, RenderMarkdownCode = { bg = p.panel }, - RenderMarkdownCodeInline = { fg = p.toxic, bg = p.panel }, - RenderMarkdownBullet = { fg = p.razor }, - RenderMarkdownQuote = { fg = p.stealth, italic = true }, + RenderMarkdownCodeInline = { fg = p.value, bg = p.panel }, + RenderMarkdownBullet = { fg = p.info }, + RenderMarkdownQuote = { fg = p.dim, italic = true }, RenderMarkdownDash = { fg = p.border }, - RenderMarkdownLink = { fg = p.tech, underline = true }, + RenderMarkdownLink = { fg = p.info, underline = true }, RenderMarkdownSign = { bg = p.void }, - RenderMarkdownMath = { fg = p.tech }, - RenderMarkdownTableHead = { fg = p.ink, bg = p.razor, bold = true }, + RenderMarkdownMath = { fg = p.info }, + RenderMarkdownTableHead = { fg = p.void, bg = p.info, bold = true }, RenderMarkdownTableRow = { fg = p.text }, RenderMarkdownTableFill = { fg = p.border }, - RenderMarkdownTodo = { fg = p.void, bg = p.amber, bold = true }, + RenderMarkdownTodo = { fg = p.void, bg = p.warn, bold = true }, RenderMarkdownUnchecked = { fg = p.stealth }, - RenderMarkdownChecked = { fg = p.toxic }, + RenderMarkdownChecked = { fg = p.ok }, } for group, highlight in pairs(groups) do @@ -592,8 +621,8 @@ function M.load() end local links = { - ["@annotation"] = "Special", - ["@attribute"] = "Special", + ["@annotation"] = "Attribute", + ["@attribute"] = "Attribute", ["@character"] = "Character", ["@comment"] = "Comment", ["@constant"] = "Constant", @@ -603,7 +632,7 @@ function M.load() ["@debug"] = "Debug", ["@define"] = "Define", ["@exception"] = "Exception", - ["@field"] = "Identifier", + ["@field"] = "Property", ["@float"] = "Float", ["@function"] = "Function", ["@function.builtin"] = "Function", @@ -611,9 +640,12 @@ function M.load() ["@function.macro"] = "Macro", ["@include"] = "Include", ["@keyword"] = "Keyword", + ["@keyword.conditional"] = "Conditional", + ["@keyword.repeat"] = "Repeat", + ["@keyword.return"] = "Statement", ["@keyword.function"] = "Keyword", ["@keyword.operator"] = "Operator", - ["@keyword.return"] = "Keyword", + ["@keyword.exception"] = "Exception", ["@label"] = "Label", ["@method"] = "Function", ["@method.call"] = "Function", @@ -623,7 +655,7 @@ function M.load() ["@operator"] = "Operator", ["@parameter"] = "Identifier", ["@preproc"] = "PreProc", - ["@property"] = "Identifier", + ["@property"] = "Property", ["@punctuation"] = "Delimiter", ["@punctuation.bracket"] = "Delimiter", ["@punctuation.delimiter"] = "Delimiter", @@ -634,7 +666,7 @@ function M.load() ["@string.regex"] = "SpecialChar", ["@string.special"] = "SpecialChar", ["@tag"] = "Tag", - ["@tag.attribute"] = "Identifier", + ["@tag.attribute"] = "Property", ["@tag.delimiter"] = "Delimiter", ["@text"] = "Normal", ["@text.title"] = "Title", @@ -667,13 +699,15 @@ function M.load() ["@type.definition"] = "Type", ["@type.qualifier"] = "Keyword", ["@variable"] = "Identifier", - ["@variable.builtin"] = "Identifier", + ["@variable.builtin"] = "Builtin", + ["@variable.parameter"] = "Identifier", + ["@variable.member"] = "Property", ["@lsp.type.boolean"] = "Boolean", ["@lsp.type.builtinType"] = "Type", ["@lsp.type.class"] = "Type", ["@lsp.type.comment"] = "Comment", - ["@lsp.type.decorator"] = "Special", + ["@lsp.type.decorator"] = "Attribute", ["@lsp.type.enum"] = "Type", ["@lsp.type.enumMember"] = "Constant", ["@lsp.type.event"] = "Type", @@ -687,7 +721,7 @@ function M.load() ["@lsp.type.number"] = "Number", ["@lsp.type.operator"] = "Operator", ["@lsp.type.parameter"] = "Identifier", - ["@lsp.type.property"] = "Identifier", + ["@lsp.type.property"] = "Property", ["@lsp.type.regexp"] = "SpecialChar", ["@lsp.type.string"] = "String", ["@lsp.type.struct"] = "Structure", @@ -726,32 +760,34 @@ end M.load() -- PLUGINS: LUALINE -------------------------------------------------------- --- Export lualine theme from palette for use in lualine config +-- Export lualine theme from palette for use in lualine config. +-- Mode hues stay distinct: normal=violet(attention), insert=green, visual=cyan, +-- replace=amber, command=violet-deep. fg = void for contrast on bright accents. do local p = M.palette M.lualine = { normal = { - a = { fg = p.ink, bg = p.razor, gui = "bold" }, + a = { fg = p.void, bg = p.focus, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, insert = { - a = { fg = p.ink, bg = p.toxic, gui = "bold" }, + a = { fg = p.void, bg = p.ok, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, visual = { - a = { fg = p.ink, bg = p.tech, gui = "bold" }, + a = { fg = p.void, bg = p.info, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, replace = { - a = { fg = p.ink, bg = p.amber, gui = "bold" }, + a = { fg = p.void, bg = p.warn, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, command = { - a = { fg = p.ink, bg = p.sacred, gui = "bold" }, + a = { fg = p.void, bg = p.special, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, diff --git a/dot_config/nvim/colors/apex-neon.lua b/dot_config/nvim/colors/apex-neon.lua index f844803..28676b4 100644 --- a/dot_config/nvim/colors/apex-neon.lua +++ b/dot_config/nvim/colors/apex-neon.lua @@ -1,30 +1,52 @@ -- Apex Neon: Standalone Theme Engine --- Philosophy: State over Decoration. Red is Presence. Cyan is Data. +-- Philosophy: Signal over decoration. Red = danger. Violet = attention. +-- Neither red nor violet ever appears inside the code buffer (spec §1, §12). local M = {} M.palette = { - -- The Void - void = "#050505", -- Background - panel = "#141414", -- Dark Surface (Statusline/Gutter) - border = "#262626", -- Muted Border - stealth = "#404040", -- Comments / Ignored + -- NEUTRALS — the readable field -------------------------------------------- + void = "#070709", -- Background (also: ink on a bright accent fill) + panel = "#101218", -- Dark surface (statusline, floats, cursorline) + border = "#262a34", -- Borders, separators + stealth = "#383d49", -- Ignored text only (sub-threshold by design) + dim = "#8b909c", -- Comments, muted labels (ghost) + text = "#e6e8ec", -- Body text (stark / ink) + punct = "#aab0bc", -- Punctuation / delimiters (lifted neutral) + op = "#c2c8d4", -- Operators (neutral) + prop = "#cdd4e3", -- Fields / properties (dim body) - -- The Signal - text = "#ededed", -- Stark White - dim = "#737373", -- Muted Text + -- ATTENTION (violet) — cursor, search, matched pairs. NEVER syntax. -------- + focus = "#d68fff", -- Cursor — the crosshair (hottest mark) + focus_active = "#b14dff", -- Current match, matched bracket / pair + focus_field = "#3a1a4d", -- Search-set / selection background - -- The Hunter (Presence) - razor = "#ff0044", -- PRIMARY: Cursor, Current Match, Active Border - ink = "#050505", -- Text color on Razor backgrounds - alert = "#ff0044", -- Error accent text on void/panel + -- DANGER (red) — error, destructive, alarm. NEVER syntax. ------------------ + danger = "#ff0044", -- Error figure, destructive, active border + danger_field = "#1f0a12", -- Error region / delete background + danger_hot = "#ff3b3b", -- Escalation - -- The HUD (Data) - tech = "#00eaff", -- INFO: Selection, Search Match, Constants - toxic = "#00ff99", -- SUCCESS: Strings - amber = "#ffb700", -- WARNING: Types, Search - azure = "#0088cc", -- STRUCT: Functions (Deep Blue) - sacred = "#9d00ff", -- SPECIAL: Keywords, Root + -- CODE HUES (buffer-safe) -------------------------------------------------- + info = "#00eaff", -- Cyan — info / links + action = "#5af3ff", -- Cyan — functions / methods + builtin = "#8fd6ff", -- Cyan, dim — self / builtin + kind = "#7db4ff", -- Blue — types / kinds + storage = "#2e6bff", -- Blue, heavy — storage / modifier / attribute + flow = "#5b8cff", -- Bright-blue — control-flow navigation + value = "#2bffb2", -- Green — strings / values + escape = "#7dffd0", -- Green, bright — char / escape + const = "#37dba0", -- Green, cool — numbers / const + ok = "#00ff99", -- Green — success state + warn = "#ffb700", -- Amber — warning (UI only) + special = "#9d00ff", -- Violet-deep — root / special only + + -- DIFF grounds ------------------------------------------------------------- + diff_add = "#0a1f16", + diff_chg = "#1f1a0a", + diff_del = "#1f0a12", + + -- ON-ACCENT INK ------------------------------------------------------------ + ink = "#e6e8ec", -- fg on a dim violet field (search / selection) } function M.load() @@ -59,101 +81,106 @@ function M.load() WinBar = { fg = p.text, bg = p.panel }, WinBarNC = { fg = p.dim, bg = p.panel }, - -- CURSOR & NAVIGATION ("The Hunter") ------------------------------------ - Cursor = { fg = p.ink, bg = p.razor }, -- Red Beam - TermCursor = { fg = p.ink, bg = p.razor }, + -- CURSOR & NAVIGATION ("Attention" — violet) ---------------------------- + Cursor = { fg = p.void, bg = p.focus }, -- Violet crosshair + TermCursor = { fg = p.void, bg = p.focus }, CursorLine = { bg = p.panel }, CursorColumn = { bg = p.panel }, ColorColumn = { bg = p.panel }, - CursorLineNr = { fg = p.razor, bold = true }, -- Red Line Number (You are here) + CursorLineNr = { fg = p.focus, bold = true }, -- Violet line number (you are here) LineNr = { fg = p.stealth }, -- Other lines fade out - -- SELECTION & SEARCH ("Terminator Vision") ------------------------------ - Visual = { fg = p.void, bg = p.tech, bold = true }, -- Cyan (Data Lock) - VisualNOS = { fg = p.void, bg = p.border }, + -- SELECTION & SEARCH ("Region scanned" — violet field) ------------------ + Visual = { fg = p.ink, bg = p.focus_field }, -- Dim violet field, fg preserved + VisualNOS = { fg = p.ink, bg = p.focus_field }, - Search = { fg = p.void, bg = p.tech }, -- Cyan (Potential Targets) - IncSearch = { fg = p.ink, bg = p.razor }, -- Red (Acquiring...) - CurSearch = { fg = p.ink, bg = p.razor, bold = true }, -- Red (Target Locked) + Search = { fg = p.ink, bg = p.focus_field }, -- Other matches: the set + IncSearch = { fg = p.void, bg = p.focus_active }, -- Acquiring + CurSearch = { fg = p.void, bg = p.focus_active, bold = true }, -- The one you are on -- STATUS & MESSAGES ----------------------------------------------------- StatusLine = { fg = p.text, bg = p.panel }, StatusLineNC = { fg = p.dim, bg = p.void }, - WildMenu = { fg = p.void, bg = p.tech }, + WildMenu = { fg = p.void, bg = p.focus_active }, Pmenu = { fg = p.text, bg = p.panel }, - PmenuSel = { fg = p.ink, bg = p.razor, bold = true }, -- Red Menu Selection + PmenuSel = { fg = p.void, bg = p.focus, bold = true }, -- Violet menu selection PmenuKind = { fg = p.dim, bg = p.panel }, - PmenuKindSel = { fg = p.ink, bg = p.razor, bold = true }, + PmenuKindSel = { fg = p.void, bg = p.focus, bold = true }, PmenuExtra = { fg = p.dim, bg = p.panel }, - PmenuExtraSel = { fg = p.ink, bg = p.razor, bold = true }, - PmenuMatch = { fg = p.tech, bg = p.panel, bold = true }, - PmenuMatchSel = { fg = p.ink, bg = p.razor, bold = true }, + PmenuExtraSel = { fg = p.void, bg = p.focus, bold = true }, + PmenuMatch = { fg = p.info, bg = p.panel, bold = true }, + PmenuMatchSel = { fg = p.void, bg = p.focus, bold = true }, PmenuSbar = { bg = p.panel }, PmenuThumb = { bg = p.stealth }, - ErrorMsg = { fg = p.alert }, - WarningMsg = { fg = p.amber }, - MoreMsg = { fg = p.tech }, + ErrorMsg = { fg = p.danger }, + WarningMsg = { fg = p.warn }, + MoreMsg = { fg = p.info }, ModeMsg = { fg = p.text }, TabLine = { fg = p.dim, bg = p.panel }, TabLineSel = { fg = p.text, bg = p.void, bold = true }, TabLineFill = { fg = p.panel, bg = p.panel }, QuickFixLine = { fg = p.text, bg = p.panel, bold = true }, - -- SYNTAX HIGHLIGHTING --------------------------------------------------- - Comment = { fg = p.stealth, italic = true }, - Constant = { fg = p.tech }, -- Cyan (Digital values) - String = { fg = p.toxic }, -- Green (Organic strings) - Character = { fg = p.toxic }, - Number = { fg = p.tech }, - Boolean = { fg = p.tech }, - Float = { fg = p.tech }, + -- SYNTAX: typed by grammatical role (spec §7) --------------------------- + -- blue = kinds · cyan = actions · green = values · neutral = connective + Comment = { fg = p.dim, italic = true }, -- Ghost — not a target - Identifier = { fg = p.text }, -- Variables (White) - Function = { fg = p.azure }, -- Deep Blue (Structure) + Constant = { fg = p.const }, -- Green (cool) — const values + String = { fg = p.value }, -- Green — strings + Character = { fg = p.value }, + Number = { fg = p.const }, + Boolean = { fg = p.const }, + Float = { fg = p.const }, - Statement = { fg = p.sacred }, -- Purple (Keywords) - Conditional = { fg = p.sacred }, - Repeat = { fg = p.sacred }, - Label = { fg = p.sacred }, - Operator = { fg = p.text }, -- White (Neutral) - Keyword = { fg = p.sacred }, - Exception = { fg = p.razor }, -- Red (Errors) + Identifier = { fg = p.text }, -- Variables (calm body) + Property = { fg = p.prop }, -- Fields / properties (dim body) + Function = { fg = p.action }, -- Cyan — actions + Builtin = { fg = p.builtin, italic = true }, -- Cyan dim — self / builtin - PreProc = { fg = p.sacred }, - Include = { fg = p.sacred }, - Define = { fg = p.sacred }, - Macro = { fg = p.sacred }, - PreCondit = { fg = p.sacred }, + Statement = { fg = p.flow, bold = true }, -- Bright-blue — control flow + Conditional = { fg = p.flow, bold = true }, + Repeat = { fg = p.flow, bold = true }, + Label = { fg = p.flow }, + Operator = { fg = p.op }, -- Neutral + Keyword = { fg = p.storage }, -- Blue — storage / modifier + Exception = { fg = p.flow, bold = true }, -- Control flow (NOT danger — never red in code) - Type = { fg = p.amber }, -- Yellow (Types/Classes) - StorageClass = { fg = p.amber }, - Structure = { fg = p.amber }, - Typedef = { fg = p.amber }, + PreProc = { fg = p.action }, -- Cyan — preprocessor / macro ceremony + Include = { fg = p.storage }, -- Blue — declarative (use / import) + Define = { fg = p.action }, + Macro = { fg = p.action, italic = true }, -- Cyan — bang-macros (action + ceremony) + PreCondit = { fg = p.action }, - Special = { fg = p.sacred }, -- Purple (special grammar tokens) - SpecialChar = { fg = p.amber }, -- Amber (escalated string variant: escapes, regex) - Tag = { fg = p.azure }, -- Blue (structural: HTML/XML tags) - Delimiter = { fg = p.dim }, -- Subtle delimiters - Debug = { fg = p.razor }, + Type = { fg = p.kind }, -- Blue — kinds + StorageClass = { fg = p.storage, bold = true }, -- Blue heavy + Structure = { fg = p.kind }, + Typedef = { fg = p.kind }, + Attribute = { fg = p.storage, italic = true }, -- Blue declarative — #[derive], decorators - Underlined = { underline = true }, + Special = { fg = p.escape }, -- Green — special tokens (escapes-adjacent) + SpecialChar = { fg = p.escape }, -- Green bright — string escapes / regex + Tag = { fg = p.kind }, -- Blue — structural HTML/XML tags + Delimiter = { fg = p.punct }, -- Neutral, lifted + Debug = { fg = p.special }, + + Underlined = { fg = p.info, underline = true }, Ignore = { fg = p.stealth }, - Error = { fg = p.alert }, - Todo = { fg = p.void, bg = p.amber, bold = true }, - Title = { fg = p.sacred, bold = true }, + Error = { fg = p.danger }, + Todo = { fg = p.void, bg = p.warn, bold = true }, + Title = { fg = p.info, bold = true }, - MatchParen = { fg = p.void, bg = p.amber, bold = true }, + MatchParen = { fg = p.focus_active, bold = true }, -- Attention — matched pair (violet) Whitespace = { fg = p.border }, NonText = { fg = p.border }, SpecialKey = { fg = p.border }, - SpellBad = { sp = p.razor, undercurl = true }, - SpellCap = { sp = p.amber, undercurl = true }, - SpellRare = { sp = p.tech, undercurl = true }, + SpellBad = { sp = p.danger, undercurl = true }, + SpellCap = { sp = p.warn, undercurl = true }, + SpellRare = { sp = p.info, undercurl = true }, SpellLocal = { sp = p.dim, undercurl = true }, LspReferenceText = { bg = p.panel }, LspReferenceRead = { bg = p.panel }, LspReferenceWrite = { bg = p.panel, bold = true }, - LspSignatureActiveParameter = { fg = p.void, bg = p.tech, bold = true }, + LspSignatureActiveParameter = { fg = p.void, bg = p.info, bold = true }, LspInlayHint = { fg = p.dim, bg = p.panel }, LspCodeLens = { fg = p.dim }, LspCodeLensSeparator = { fg = p.stealth }, @@ -161,118 +188,119 @@ function M.load() LspInfoTitle = { fg = p.dim, bg = p.panel }, -- DIAGNOSTICS ----------------------------------------------------------- - DiagnosticError = { fg = p.alert }, - DiagnosticWarn = { fg = p.amber }, - DiagnosticInfo = { fg = p.tech }, + DiagnosticError = { fg = p.danger }, + DiagnosticWarn = { fg = p.warn }, + DiagnosticInfo = { fg = p.info }, DiagnosticHint = { fg = p.dim }, - DiagnosticOk = { fg = p.toxic }, + DiagnosticOk = { fg = p.ok }, DiagnosticDeprecated = { fg = p.dim, strikethrough = true }, DiagnosticUnnecessary = { fg = p.dim }, - DiagnosticUnderlineError = { undercurl = true, sp = p.razor }, - DiagnosticUnderlineWarn = { undercurl = true, sp = p.amber }, - DiagnosticUnderlineInfo = { undercurl = true, sp = p.tech }, + DiagnosticUnderlineError = { undercurl = true, sp = p.danger }, + DiagnosticUnderlineWarn = { undercurl = true, sp = p.warn }, + DiagnosticUnderlineInfo = { undercurl = true, sp = p.info }, DiagnosticUnderlineHint = { undercurl = true, sp = p.dim }, - DiagnosticUnderlineOk = { undercurl = true, sp = p.toxic }, - DiagnosticVirtualTextError = { fg = p.alert, bg = p.panel }, - DiagnosticVirtualTextWarn = { fg = p.amber, bg = p.panel }, - DiagnosticVirtualTextInfo = { fg = p.tech, bg = p.panel }, + DiagnosticUnderlineOk = { undercurl = true, sp = p.ok }, + DiagnosticVirtualTextError = { fg = p.danger, bg = p.panel }, + DiagnosticVirtualTextWarn = { fg = p.warn, bg = p.panel }, + DiagnosticVirtualTextInfo = { fg = p.info, bg = p.panel }, DiagnosticVirtualTextHint = { fg = p.dim, bg = p.panel }, - DiagnosticVirtualTextOk = { fg = p.toxic, bg = p.panel }, - DiagnosticVirtualLinesError = { fg = p.alert, bg = p.panel }, - DiagnosticVirtualLinesWarn = { fg = p.amber, bg = p.panel }, - DiagnosticVirtualLinesInfo = { fg = p.tech, bg = p.panel }, + DiagnosticVirtualTextOk = { fg = p.ok, bg = p.panel }, + DiagnosticVirtualLinesError = { fg = p.danger, bg = p.panel }, + DiagnosticVirtualLinesWarn = { fg = p.warn, bg = p.panel }, + DiagnosticVirtualLinesInfo = { fg = p.info, bg = p.panel }, DiagnosticVirtualLinesHint = { fg = p.dim, bg = p.panel }, - DiagnosticVirtualLinesOk = { fg = p.toxic, bg = p.panel }, - DiagnosticSignError = { fg = p.alert, bg = p.void }, - DiagnosticSignWarn = { fg = p.amber, bg = p.void }, - DiagnosticSignInfo = { fg = p.tech, bg = p.void }, + DiagnosticVirtualLinesOk = { fg = p.ok, bg = p.panel }, + DiagnosticSignError = { fg = p.danger, bg = p.void }, + DiagnosticSignWarn = { fg = p.warn, bg = p.void }, + DiagnosticSignInfo = { fg = p.info, bg = p.void }, DiagnosticSignHint = { fg = p.dim, bg = p.void }, - DiagnosticSignOk = { fg = p.toxic, bg = p.void }, - DiagnosticFloatingError = { fg = p.alert, bg = p.panel }, - DiagnosticFloatingWarn = { fg = p.amber, bg = p.panel }, - DiagnosticFloatingInfo = { fg = p.tech, bg = p.panel }, + DiagnosticSignOk = { fg = p.ok, bg = p.void }, + DiagnosticFloatingError = { fg = p.danger, bg = p.panel }, + DiagnosticFloatingWarn = { fg = p.warn, bg = p.panel }, + DiagnosticFloatingInfo = { fg = p.info, bg = p.panel }, DiagnosticFloatingHint = { fg = p.dim, bg = p.panel }, - DiagnosticFloatingOk = { fg = p.toxic, bg = p.panel }, + DiagnosticFloatingOk = { fg = p.ok, bg = p.panel }, ApexMarkupStrong = { bold = true }, ApexMarkupItalic = { italic = true }, - ApexMarkupLink = { fg = p.tech, underline = true }, + ApexMarkupLink = { fg = p.info, underline = true }, - -- DIFF ------------------------------------------------------------------ - DiffAdd = { fg = p.toxic, bg = p.panel }, - DiffChange = { fg = p.tech, bg = p.panel }, - DiffDelete = { fg = p.razor, bg = p.panel }, - DiffText = { fg = p.void, bg = p.tech, bold = true }, + -- DIFF (figure / ground — spec §8) -------------------------------------- + DiffAdd = { fg = p.ok, bg = p.diff_add }, + DiffChange = { fg = p.warn, bg = p.diff_chg }, + DiffDelete = { fg = p.danger, bg = p.diff_del }, + DiffText = { fg = p.void, bg = p.warn, bold = true }, -- PLUGINS: TELESCOPE ("The HUD") ---------------------------------------- TelescopeNormal = { bg = p.void }, - TelescopeBorder = { fg = p.razor, bg = p.void }, -- Red Border + TelescopeBorder = { fg = p.border, bg = p.void }, TelescopePromptNormal = { fg = p.text, bg = p.void }, - TelescopePromptBorder = { fg = p.tech, bg = p.void }, -- Cyan Input Border - TelescopePromptTitle = { fg = p.void, bg = p.tech }, -- Cyan Label - TelescopePreviewTitle = { fg = p.ink, bg = p.razor }, -- Red Label - TelescopeResultsTitle = { fg = p.void, bg = p.panel }, - TelescopeSelection = { fg = p.ink, bg = p.razor }, -- Red Selection + TelescopePromptBorder = { fg = p.info, bg = p.void }, -- Cyan input border + TelescopePromptTitle = { fg = p.void, bg = p.info }, -- Cyan label + TelescopePreviewTitle = { fg = p.void, bg = p.ok }, -- Green label + TelescopeResultsTitle = { fg = p.dim, bg = p.panel }, + TelescopeSelection = { fg = p.text, bg = p.focus_field, bold = true }, -- Violet field + TelescopeMatching = { fg = p.info, bold = true }, - -- PLUGINS: NEO-TREE ("Stealth") ----------------------------------------- + -- PLUGINS: NEO-TREE ----------------------------------------------------- NeoTreeNormal = { bg = p.void }, NeoTreeNormalNC = { bg = p.void }, NeoTreeVertSplit = { fg = p.panel, bg = p.void }, NeoTreeWinSeparator = { fg = p.panel, bg = p.void }, -- Fade out tree border - NeoTreeRootName = { fg = p.razor, bold = true }, -- Root is Red - NeoTreeGitAdded = { fg = p.toxic }, - NeoTreeGitConflict = { fg = p.amber }, - NeoTreeGitDeleted = { fg = p.razor }, - NeoTreeGitModified = { fg = p.tech }, + NeoTreeRootName = { fg = p.focus, bold = true }, -- Root = location (violet) + NeoTreeGitAdded = { fg = p.ok }, + NeoTreeGitConflict = { fg = p.warn }, + NeoTreeGitDeleted = { fg = p.danger }, + NeoTreeGitModified = { fg = p.info }, -- PLUGINS: GITSIGNS ----------------------------------------------------- - GitSignsAdd = { fg = p.toxic, bg = p.void }, - GitSignsChange = { fg = p.tech, bg = p.void }, - GitSignsDelete = { fg = p.razor, bg = p.void }, + GitSignsAdd = { fg = p.ok, bg = p.void }, + GitSignsChange = { fg = p.warn, bg = p.void }, + GitSignsDelete = { fg = p.danger, bg = p.void }, -- PLUGINS: CMP (Completion) --------------------------------------------- CmpItemAbbrDeprecated = { fg = p.dim, strikethrough = true }, - CmpItemAbbrMatch = { fg = p.tech, bold = true }, - CmpItemAbbrMatchFuzzy = { fg = p.tech, bold = true }, - CmpItemKindFunction = { fg = p.azure }, - CmpItemKindMethod = { fg = p.azure }, - CmpItemKindKeyword = { fg = p.sacred }, + CmpItemAbbrMatch = { fg = p.info, bold = true }, + CmpItemAbbrMatchFuzzy = { fg = p.info, bold = true }, + CmpItemKindFunction = { fg = p.action }, + CmpItemKindMethod = { fg = p.action }, + CmpItemKindKeyword = { fg = p.flow }, CmpItemKindVariable = { fg = p.text }, -- PLUGINS: BLINK.CMP (Completion) ---------------------------------------- BlinkCmpMenu = { fg = p.text, bg = p.panel }, BlinkCmpMenuBorder = { fg = p.border, bg = p.panel }, - BlinkCmpMenuSelection = { fg = p.ink, bg = p.razor, bold = true }, + BlinkCmpMenuSelection = { fg = p.void, bg = p.focus, bold = true }, BlinkCmpScrollBarThumb = { bg = p.stealth }, BlinkCmpScrollBarGutter = { bg = p.panel }, BlinkCmpLabel = { fg = p.text }, BlinkCmpLabelDeprecated = { fg = p.dim, strikethrough = true }, - BlinkCmpLabelMatch = { fg = p.tech, bold = true }, + BlinkCmpLabelMatch = { fg = p.info, bold = true }, BlinkCmpKindText = { fg = p.text }, - BlinkCmpKindMethod = { fg = p.azure }, - BlinkCmpKindFunction = { fg = p.azure }, - BlinkCmpKindConstructor = { fg = p.amber }, - BlinkCmpKindField = { fg = p.text }, + BlinkCmpKindMethod = { fg = p.action }, + BlinkCmpKindFunction = { fg = p.action }, + BlinkCmpKindConstructor = { fg = p.kind }, + BlinkCmpKindField = { fg = p.prop }, BlinkCmpKindVariable = { fg = p.text }, - BlinkCmpKindClass = { fg = p.amber }, - BlinkCmpKindInterface = { fg = p.amber }, - BlinkCmpKindModule = { fg = p.amber }, - BlinkCmpKindProperty = { fg = p.text }, - BlinkCmpKindUnit = { fg = p.tech }, - BlinkCmpKindValue = { fg = p.tech }, - BlinkCmpKindEnum = { fg = p.amber }, - BlinkCmpKindKeyword = { fg = p.sacred }, - BlinkCmpKindSnippet = { fg = p.toxic }, - BlinkCmpKindColor = { fg = p.tech }, + BlinkCmpKindClass = { fg = p.kind }, + BlinkCmpKindInterface = { fg = p.kind }, + BlinkCmpKindModule = { fg = p.kind }, + BlinkCmpKindProperty = { fg = p.prop }, + BlinkCmpKindUnit = { fg = p.const }, + BlinkCmpKindValue = { fg = p.const }, + BlinkCmpKindEnum = { fg = p.kind }, + BlinkCmpKindKeyword = { fg = p.flow }, + BlinkCmpKindSnippet = { fg = p.value }, + BlinkCmpKindColor = { fg = p.info }, BlinkCmpKindFile = { fg = p.text }, - BlinkCmpKindReference = { fg = p.tech }, - BlinkCmpKindFolder = { fg = p.text }, - BlinkCmpKindEnumMember = { fg = p.tech }, - BlinkCmpKindConstant = { fg = p.tech }, - BlinkCmpKindStruct = { fg = p.amber }, - BlinkCmpKindEvent = { fg = p.amber }, - BlinkCmpKindOperator = { fg = p.text }, - BlinkCmpKindTypeParameter = { fg = p.amber }, + BlinkCmpKindReference = { fg = p.info }, + BlinkCmpKindFolder = { fg = p.info }, + BlinkCmpKindEnumMember = { fg = p.const }, + BlinkCmpKindConstant = { fg = p.const }, + BlinkCmpKindStruct = { fg = p.kind }, + BlinkCmpKindEvent = { fg = p.kind }, + BlinkCmpKindOperator = { fg = p.op }, + BlinkCmpKindTypeParameter = { fg = p.kind }, BlinkCmpGhostText = { fg = p.stealth, italic = true }, BlinkCmpDoc = { fg = p.text, bg = p.panel }, BlinkCmpDocBorder = { fg = p.border, bg = p.panel }, @@ -280,7 +308,7 @@ function M.load() BlinkCmpDocCursorLine = { bg = p.border }, BlinkCmpSignatureHelp = { fg = p.text, bg = p.panel }, BlinkCmpSignatureHelpBorder = { fg = p.border, bg = p.panel }, - BlinkCmpSignatureHelpActiveParameter = { fg = p.ink, bg = p.tech, bold = true }, + BlinkCmpSignatureHelpActiveParameter = { fg = p.void, bg = p.info, bold = true }, BlinkCmpSource = { fg = p.dim }, -- PLUGINS: BUFFERLINE ----------------------------------------------------- @@ -291,183 +319,183 @@ function M.load() BufferLineBufferVisible = { fg = p.dim, bg = p.panel }, BufferLineTab = { fg = p.dim, bg = p.panel }, BufferLineTabSelected = { fg = p.text, bg = p.void, bold = true }, - BufferLineTabClose = { fg = p.razor, bg = p.panel }, - BufferLineModified = { fg = p.tech, bg = p.panel }, - BufferLineModifiedSelected = { fg = p.tech, bg = p.void }, - BufferLineModifiedVisible = { fg = p.tech, bg = p.panel }, + BufferLineTabClose = { fg = p.dim, bg = p.panel }, + BufferLineModified = { fg = p.info, bg = p.panel }, + BufferLineModifiedSelected = { fg = p.info, bg = p.void }, + BufferLineModifiedVisible = { fg = p.info, bg = p.panel }, BufferLineSeparator = { fg = p.border, bg = p.panel }, BufferLineSeparatorSelected = { fg = p.border, bg = p.void }, BufferLineSeparatorVisible = { fg = p.border, bg = p.panel }, - BufferLineIndicatorSelected = { fg = p.razor, bg = p.void }, + BufferLineIndicatorSelected = { fg = p.focus, bg = p.void }, -- Active = violet BufferLineCloseButton = { fg = p.dim, bg = p.panel }, - BufferLineCloseButtonSelected = { fg = p.razor, bg = p.void }, + BufferLineCloseButtonSelected = { fg = p.focus, bg = p.void }, BufferLineCloseButtonVisible = { fg = p.dim, bg = p.panel }, BufferLineDiagnostic = { fg = p.dim, bg = p.panel }, BufferLineDiagnosticSelected = { fg = p.dim, bg = p.void }, - BufferLineError = { fg = p.alert, bg = p.panel }, - BufferLineErrorSelected = { fg = p.alert, bg = p.void, bold = true }, - BufferLineWarning = { fg = p.amber, bg = p.panel }, - BufferLineWarningSelected = { fg = p.amber, bg = p.void, bold = true }, - BufferLineInfo = { fg = p.tech, bg = p.panel }, - BufferLineInfoSelected = { fg = p.tech, bg = p.void, bold = true }, + BufferLineError = { fg = p.danger, bg = p.panel }, + BufferLineErrorSelected = { fg = p.danger, bg = p.void, bold = true }, + BufferLineWarning = { fg = p.warn, bg = p.panel }, + BufferLineWarningSelected = { fg = p.warn, bg = p.void, bold = true }, + BufferLineInfo = { fg = p.info, bg = p.panel }, + BufferLineInfoSelected = { fg = p.info, bg = p.void, bold = true }, BufferLineHint = { fg = p.dim, bg = p.panel }, BufferLineHintSelected = { fg = p.dim, bg = p.void, bold = true }, - BufferLinePick = { fg = p.razor, bg = p.panel, bold = true }, - BufferLinePickSelected = { fg = p.razor, bg = p.void, bold = true }, - BufferLinePickVisible = { fg = p.razor, bg = p.panel, bold = true }, + BufferLinePick = { fg = p.focus, bg = p.panel, bold = true }, + BufferLinePickSelected = { fg = p.focus, bg = p.void, bold = true }, + BufferLinePickVisible = { fg = p.focus, bg = p.panel, bold = true }, -- PLUGINS: WHICH-KEY ------------------------------------------------------ - WhichKey = { fg = p.razor, bold = true }, + WhichKey = { fg = p.flow, bold = true }, -- The key trigger = navigation WhichKeySeparator = { fg = p.stealth }, - WhichKeyGroup = { fg = p.tech }, + WhichKeyGroup = { fg = p.info }, WhichKeyDesc = { fg = p.text }, WhichKeyFloat = { bg = p.panel }, WhichKeyBorder = { fg = p.border, bg = p.panel }, - WhichKeyTitle = { fg = p.ink, bg = p.razor, bold = true }, + WhichKeyTitle = { fg = p.void, bg = p.focus, bold = true }, WhichKeyNormal = { fg = p.text, bg = p.panel }, WhichKeyValue = { fg = p.dim }, - WhichKeyIcon = { fg = p.azure }, - WhichKeyIconAzure = { fg = p.azure }, - WhichKeyIconGreen = { fg = p.toxic }, - WhichKeyIconYellow = { fg = p.amber }, - WhichKeyIconRed = { fg = p.razor }, - WhichKeyIconPurple = { fg = p.sacred }, - WhichKeyIconCyan = { fg = p.tech }, + WhichKeyIcon = { fg = p.action }, + WhichKeyIconAzure = { fg = p.kind }, + WhichKeyIconGreen = { fg = p.ok }, + WhichKeyIconYellow = { fg = p.warn }, + WhichKeyIconRed = { fg = p.danger }, + WhichKeyIconPurple = { fg = p.special }, + WhichKeyIconCyan = { fg = p.info }, -- PLUGINS: TROUBLE -------------------------------------------------------- TroubleNormal = { fg = p.text, bg = p.void }, TroubleNormalNC = { fg = p.dim, bg = p.void }, TroubleText = { fg = p.text }, - TroubleCount = { fg = p.ink, bg = p.razor, bold = true }, - TroubleError = { fg = p.alert }, - TroubleWarning = { fg = p.amber }, + TroubleCount = { fg = p.void, bg = p.focus_active, bold = true }, + TroubleError = { fg = p.danger }, + TroubleWarning = { fg = p.warn }, TroubleHint = { fg = p.dim }, - TroubleInfo = { fg = p.tech }, + TroubleInfo = { fg = p.info }, TroubleSource = { fg = p.dim }, TroubleCode = { fg = p.stealth }, TroubleLocation = { fg = p.dim }, - TroubleFile = { fg = p.tech, bold = true }, + TroubleFile = { fg = p.info, bold = true }, TroubleIndent = { fg = p.border }, TroublePos = { fg = p.dim }, - TroubleSignError = { fg = p.alert }, - TroubleSignWarning = { fg = p.amber }, + TroubleSignError = { fg = p.danger }, + TroubleSignWarning = { fg = p.warn }, TroubleSignHint = { fg = p.dim }, - TroubleSignInfo = { fg = p.tech }, - TroublePreview = { fg = p.ink, bg = p.razor }, + TroubleSignInfo = { fg = p.info }, + TroublePreview = { fg = p.text, bg = p.focus_field }, TroubleFocusText = { fg = p.text, bold = true }, -- PLUGINS: INDENT-BLANKLINE ----------------------------------------------- IblIndent = { fg = p.border }, - IblScope = { fg = p.stealth }, + IblScope = { fg = p.flow }, -- Current scope = structural (blue) IblWhitespace = { fg = p.border }, -- PLUGINS: NEOGIT --------------------------------------------------------- - NeogitBranch = { fg = p.razor, bold = true }, - NeogitRemote = { fg = p.tech }, + NeogitBranch = { fg = p.flow, bold = true }, -- Ref / location + NeogitRemote = { fg = p.info }, NeogitHunkHeader = { fg = p.text, bg = p.panel, bold = true }, - NeogitHunkHeaderHighlight = { fg = p.ink, bg = p.tech, bold = true }, - NeogitDiffAdd = { fg = p.toxic, bg = p.void }, - NeogitDiffDelete = { fg = p.razor, bg = p.void }, + NeogitHunkHeaderHighlight = { fg = p.void, bg = p.info, bold = true }, + NeogitDiffAdd = { fg = p.ok, bg = p.void }, + NeogitDiffDelete = { fg = p.danger, bg = p.void }, NeogitDiffContext = { fg = p.dim, bg = p.void }, - NeogitDiffAddHighlight = { fg = p.toxic, bg = p.panel }, - NeogitDiffDeleteHighlight = { fg = p.razor, bg = p.panel }, + NeogitDiffAddHighlight = { fg = p.ok, bg = p.diff_add }, + NeogitDiffDeleteHighlight = { fg = p.danger, bg = p.diff_del }, NeogitDiffContextHighlight = { fg = p.text, bg = p.panel }, - NeogitCommitViewHeader = { fg = p.ink, bg = p.razor, bold = true }, - NeogitFilePath = { fg = p.tech, underline = true }, - NeogitDiffHeader = { fg = p.amber, bold = true }, - NeogitDiffHeaderHighlight = { fg = p.ink, bg = p.amber, bold = true }, + NeogitCommitViewHeader = { fg = p.void, bg = p.info, bold = true }, + NeogitFilePath = { fg = p.info, underline = true }, + NeogitDiffHeader = { fg = p.warn, bold = true }, + NeogitDiffHeaderHighlight = { fg = p.void, bg = p.warn, bold = true }, NeogitObjectId = { fg = p.dim }, - NeogitStashes = { fg = p.sacred }, - NeogitRebaseDone = { fg = p.toxic }, + NeogitStashes = { fg = p.special }, + NeogitRebaseDone = { fg = p.ok }, NeogitFold = { fg = p.stealth }, -- PLUGINS: AERIAL (Symbols Outline) -------------------------------------- - AerialLine = { fg = p.ink, bg = p.razor }, + AerialLine = { fg = p.ink, bg = p.focus_field }, AerialLineNC = { fg = p.dim, bg = p.panel }, AerialNormal = { fg = p.text, bg = p.void }, AerialGuide = { fg = p.border }, - AerialClass = { fg = p.amber }, - AerialClassIcon = { fg = p.amber }, - AerialFunction = { fg = p.azure }, - AerialFunctionIcon = { fg = p.azure }, - AerialMethod = { fg = p.azure }, - AerialMethodIcon = { fg = p.azure }, - AerialConstructor = { fg = p.amber }, - AerialField = { fg = p.text }, + AerialClass = { fg = p.kind }, + AerialClassIcon = { fg = p.kind }, + AerialFunction = { fg = p.action }, + AerialFunctionIcon = { fg = p.action }, + AerialMethod = { fg = p.action }, + AerialMethodIcon = { fg = p.action }, + AerialConstructor = { fg = p.kind }, + AerialField = { fg = p.prop }, AerialVariable = { fg = p.text }, - AerialEnum = { fg = p.amber }, - AerialEnumIcon = { fg = p.amber }, - AerialInterface = { fg = p.amber }, - AerialModule = { fg = p.amber }, - AerialNamespace = { fg = p.amber }, - AerialPackage = { fg = p.amber }, - AerialProperty = { fg = p.text }, - AerialStruct = { fg = p.amber }, - AerialType = { fg = p.amber }, - AerialTypeParameter = { fg = p.amber }, - AerialConstant = { fg = p.tech }, - AerialString = { fg = p.toxic }, - AerialNumber = { fg = p.tech }, - AerialBoolean = { fg = p.tech }, - AerialKey = { fg = p.sacred }, - AerialKeyword = { fg = p.sacred }, - AerialOperator = { fg = p.text }, + AerialEnum = { fg = p.kind }, + AerialEnumIcon = { fg = p.kind }, + AerialInterface = { fg = p.kind }, + AerialModule = { fg = p.kind }, + AerialNamespace = { fg = p.kind }, + AerialPackage = { fg = p.kind }, + AerialProperty = { fg = p.prop }, + AerialStruct = { fg = p.kind }, + AerialType = { fg = p.kind }, + AerialTypeParameter = { fg = p.kind }, + AerialConstant = { fg = p.const }, + AerialString = { fg = p.value }, + AerialNumber = { fg = p.const }, + AerialBoolean = { fg = p.const }, + AerialKey = { fg = p.flow }, + AerialKeyword = { fg = p.flow }, + AerialOperator = { fg = p.op }, AerialNull = { fg = p.dim }, - AerialArray = { fg = p.tech }, - AerialObject = { fg = p.amber }, - AerialEvent = { fg = p.amber }, + AerialArray = { fg = p.const }, + AerialObject = { fg = p.kind }, + AerialEvent = { fg = p.kind }, -- PLUGINS: DAP-UI --------------------------------------------------------- - DapUIScope = { fg = p.tech, bold = true }, - DapUIType = { fg = p.amber }, + DapUIScope = { fg = p.info, bold = true }, + DapUIType = { fg = p.kind }, DapUIDecoration = { fg = p.border }, - DapUIThread = { fg = p.toxic }, - DapUIStoppedThread = { fg = p.razor, bold = true }, - DapUICurrentFrameName = { fg = p.razor, bold = true }, + DapUIThread = { fg = p.ok }, + DapUIStoppedThread = { fg = p.danger, bold = true }, -- Halted = alarm + DapUICurrentFrameName = { fg = p.danger, bold = true }, DapUISource = { fg = p.dim }, DapUILineNumber = { fg = p.stealth }, DapUIFloatBorder = { fg = p.border, bg = p.panel }, DapUIFloatNormal = { fg = p.text, bg = p.panel }, DapUIWatchesEmpty = { fg = p.dim }, - DapUIWatchesValue = { fg = p.toxic }, - DapUIWatchesError = { fg = p.alert }, - DapUIBreakpointsPath = { fg = p.tech }, + DapUIWatchesValue = { fg = p.value }, + DapUIWatchesError = { fg = p.danger }, + DapUIBreakpointsPath = { fg = p.info }, DapUIBreakpointsInfo = { fg = p.dim }, - DapUIBreakpointsCurrentLine = { fg = p.razor, bold = true }, + DapUIBreakpointsCurrentLine = { fg = p.danger, bold = true }, DapUIBreakpointsDisabledLine = { fg = p.stealth }, DapUIEndofBuffer = { fg = p.void }, - DapUIModifiedValue = { fg = p.amber, bold = true }, - DapUIStop = { fg = p.razor }, - DapUIStepOver = { fg = p.tech }, - DapUIStepInto = { fg = p.tech }, - DapUIStepBack = { fg = p.tech }, - DapUIStepOut = { fg = p.tech }, - DapUIRestart = { fg = p.toxic }, + DapUIModifiedValue = { fg = p.warn, bold = true }, + DapUIStop = { fg = p.danger }, + DapUIStepOver = { fg = p.info }, + DapUIStepInto = { fg = p.info }, + DapUIStepBack = { fg = p.info }, + DapUIStepOut = { fg = p.info }, + DapUIRestart = { fg = p.ok }, DapUIUnavailable = { fg = p.stealth }, - DapUIPlayPause = { fg = p.toxic }, + DapUIPlayPause = { fg = p.ok }, -- PLUGINS: DAP VIRTUAL TEXT ----------------------------------------------- NvimDapVirtualText = { fg = p.dim, italic = true }, - NvimDapVirtualTextChanged = { fg = p.amber, italic = true }, - NvimDapVirtualTextError = { fg = p.alert, italic = true }, - NvimDapVirtualTextInfo = { fg = p.tech, italic = true }, + NvimDapVirtualTextChanged = { fg = p.warn, italic = true }, + NvimDapVirtualTextError = { fg = p.danger, italic = true }, + NvimDapVirtualTextInfo = { fg = p.info, italic = true }, -- PLUGINS: NVIM-NOTIFY ---------------------------------------------------- - NotifyERRORBorder = { fg = p.razor }, - NotifyWARNBorder = { fg = p.amber }, - NotifyINFOBorder = { fg = p.tech }, + NotifyERRORBorder = { fg = p.danger }, + NotifyWARNBorder = { fg = p.warn }, + NotifyINFOBorder = { fg = p.info }, NotifyDEBUGBorder = { fg = p.stealth }, - NotifyTRACEBorder = { fg = p.sacred }, - NotifyERRORIcon = { fg = p.razor }, - NotifyWARNIcon = { fg = p.amber }, - NotifyINFOIcon = { fg = p.tech }, + NotifyTRACEBorder = { fg = p.special }, + NotifyERRORIcon = { fg = p.danger }, + NotifyWARNIcon = { fg = p.warn }, + NotifyINFOIcon = { fg = p.info }, NotifyDEBUGIcon = { fg = p.stealth }, - NotifyTRACEIcon = { fg = p.sacred }, - NotifyERRORTitle = { fg = p.razor, bold = true }, - NotifyWARNTitle = { fg = p.amber, bold = true }, - NotifyINFOTitle = { fg = p.tech, bold = true }, + NotifyTRACEIcon = { fg = p.special }, + NotifyERRORTitle = { fg = p.danger, bold = true }, + NotifyWARNTitle = { fg = p.warn, bold = true }, + NotifyINFOTitle = { fg = p.info, bold = true }, NotifyDEBUGTitle = { fg = p.stealth, bold = true }, - NotifyTRACETitle = { fg = p.sacred, bold = true }, + NotifyTRACETitle = { fg = p.special, bold = true }, NotifyERRORBody = { fg = p.text, bg = p.panel }, NotifyWARNBody = { fg = p.text, bg = p.panel }, NotifyINFOBody = { fg = p.text, bg = p.panel }, @@ -476,68 +504,68 @@ function M.load() -- PLUGINS: SATELLITE (Scrollbar) ----------------------------------------- SatelliteBar = { bg = p.panel }, - SatelliteCursor = { fg = p.razor }, + SatelliteCursor = { fg = p.focus }, -- Cursor position = violet SatellitePosition = { fg = p.dim }, - SatelliteError = { fg = p.alert }, - SatelliteWarning = { fg = p.amber }, + SatelliteError = { fg = p.danger }, + SatelliteWarning = { fg = p.warn }, SatelliteHint = { fg = p.dim }, - SatelliteInfo = { fg = p.tech }, - SatelliteSearch = { fg = p.tech }, - SatelliteGit = { fg = p.toxic }, - SatelliteMark = { fg = p.amber }, + SatelliteInfo = { fg = p.info }, + SatelliteSearch = { fg = p.focus_active }, -- Search = violet + SatelliteGit = { fg = p.ok }, + SatelliteMark = { fg = p.warn }, -- PLUGINS: OIL.NVIM (File Explorer) -------------------------------------- - OilDir = { fg = p.tech, bold = true }, - OilDirIcon = { fg = p.tech }, - OilLink = { fg = p.sacred, italic = true }, - OilLinkTarget = { fg = p.sacred }, - OilCopy = { fg = p.amber, bold = true }, - OilMove = { fg = p.amber }, - OilChange = { fg = p.tech }, - OilCreate = { fg = p.toxic, bold = true }, - OilDelete = { fg = p.razor, bold = true }, + OilDir = { fg = p.info, bold = true }, + OilDirIcon = { fg = p.info }, + OilLink = { fg = p.flow, italic = true }, -- Symlink = structural (blue) + OilLinkTarget = { fg = p.flow }, + OilCopy = { fg = p.warn, bold = true }, + OilMove = { fg = p.warn }, + OilChange = { fg = p.info }, + OilCreate = { fg = p.ok, bold = true }, + OilDelete = { fg = p.danger, bold = true }, -- Destructive = danger OilPermissionNone = { fg = p.stealth }, - OilPermissionRead = { fg = p.tech }, - OilPermissionWrite = { fg = p.amber }, - OilPermissionExecute = { fg = p.toxic }, - OilTypeDir = { fg = p.tech }, + OilPermissionRead = { fg = p.info }, + OilPermissionWrite = { fg = p.warn }, + OilPermissionExecute = { fg = p.ok }, + OilTypeDir = { fg = p.info }, OilTypeFile = { fg = p.text }, - OilTypeLink = { fg = p.sacred }, - OilTypeSpecial = { fg = p.razor }, + OilTypeLink = { fg = p.flow }, + OilTypeSpecial = { fg = p.special }, OilSize = { fg = p.dim }, OilMtime = { fg = p.stealth }, -- PLUGINS: NEOTEST -------------------------------------------------------- - NeotestPassed = { fg = p.toxic }, - NeotestFailed = { fg = p.razor }, - NeotestRunning = { fg = p.amber }, + NeotestPassed = { fg = p.ok }, + NeotestFailed = { fg = p.danger }, + NeotestRunning = { fg = p.warn }, NeotestSkipped = { fg = p.dim }, NeotestUnknown = { fg = p.stealth }, NeotestTest = { fg = p.text }, - NeotestFile = { fg = p.tech }, - NeotestDir = { fg = p.tech, bold = true }, - NeotestNamespace = { fg = p.amber }, - NeotestMarked = { fg = p.razor, bold = true }, - NeotestTarget = { fg = p.razor }, - NeotestAdapterName = { fg = p.sacred, bold = true }, - NeotestWinSelect = { fg = p.tech, bold = true }, + NeotestFile = { fg = p.info }, + NeotestDir = { fg = p.info, bold = true }, + NeotestNamespace = { fg = p.kind }, + NeotestMarked = { fg = p.focus, bold = true }, -- Mark = attention + NeotestTarget = { fg = p.focus }, + NeotestAdapterName = { fg = p.info, bold = true }, + NeotestWinSelect = { fg = p.info, bold = true }, NeotestFocused = { bold = true }, NeotestIndent = { fg = p.border }, NeotestExpandMarker = { fg = p.dim }, - NeotestWatching = { fg = p.amber }, + NeotestWatching = { fg = p.warn }, -- PLUGINS: GRUG-FAR (Search & Replace) ----------------------------------- - GrugFarResultsHeader = { fg = p.ink, bg = p.razor, bold = true }, - GrugFarResultsMatch = { fg = p.void, bg = p.tech, bold = true }, - GrugFarResultsMatchAdded = { fg = p.toxic }, - GrugFarResultsMatchRemoved = { fg = p.razor }, + GrugFarResultsHeader = { fg = p.void, bg = p.focus, bold = true }, -- Search = violet + GrugFarResultsMatch = { fg = p.ink, bg = p.focus_field, bold = true }, + GrugFarResultsMatchAdded = { fg = p.ok }, + GrugFarResultsMatchRemoved = { fg = p.danger }, GrugFarResultsLineNo = { fg = p.dim }, - GrugFarResultsPath = { fg = p.tech, underline = true }, + GrugFarResultsPath = { fg = p.info, underline = true }, GrugFarResultsStats = { fg = p.dim }, - GrugFarInputLabel = { fg = p.amber, bold = true }, + GrugFarInputLabel = { fg = p.warn, bold = true }, GrugFarInputPlaceholder = { fg = p.stealth }, GrugFarHelpHeader = { fg = p.dim, bold = true }, - GrugFarHelpWinHeader = { fg = p.ink, bg = p.panel, bold = true }, + GrugFarHelpWinHeader = { fg = p.text, bg = p.panel, bold = true }, -- PLUGINS: TWINNY (AI Ghost Text) ---------------------------------------- TwinnyAccept = { fg = p.stealth, italic = true }, @@ -545,26 +573,27 @@ function M.load() -- PLUGINS: GITSIGNS (extended) ------------------------------------------- GitSignsCurrentLineBlame = { fg = p.stealth, italic = true }, - GitSignsAddNr = { fg = p.toxic }, - GitSignsChangeNr = { fg = p.tech }, - GitSignsDeleteNr = { fg = p.razor }, - GitSignsAddLn = { fg = p.toxic, bg = p.panel }, - GitSignsChangeLn = { fg = p.tech, bg = p.panel }, - GitSignsDeleteLn = { fg = p.razor, bg = p.panel }, - GitSignsAddPreview = { fg = p.toxic, bg = p.panel }, - GitSignsDeletePreview = { fg = p.razor, bg = p.panel }, - GitSignsAddInline = { fg = p.void, bg = p.toxic }, - GitSignsDeleteInline = { fg = p.void, bg = p.razor }, - GitSignsChangeInline = { fg = p.void, bg = p.tech }, + GitSignsAddNr = { fg = p.ok }, + GitSignsChangeNr = { fg = p.warn }, + GitSignsDeleteNr = { fg = p.danger }, + GitSignsAddLn = { fg = p.ok, bg = p.diff_add }, + GitSignsChangeLn = { fg = p.warn, bg = p.diff_chg }, + GitSignsDeleteLn = { fg = p.danger, bg = p.diff_del }, + GitSignsAddPreview = { fg = p.ok, bg = p.diff_add }, + GitSignsDeletePreview = { fg = p.danger, bg = p.diff_del }, + GitSignsAddInline = { fg = p.void, bg = p.ok }, + GitSignsDeleteInline = { fg = p.void, bg = p.danger }, + GitSignsChangeInline = { fg = p.void, bg = p.warn }, GitSignsUntracked = { fg = p.dim }, -- PLUGINS: RENDER-MARKDOWN ------------------------------------------------ - RenderMarkdownH1 = { fg = p.razor, bold = true }, - RenderMarkdownH2 = { fg = p.amber, bold = true }, - RenderMarkdownH3 = { fg = p.tech, bold = true }, - RenderMarkdownH4 = { fg = p.toxic, bold = true }, - RenderMarkdownH5 = { fg = p.sacred, bold = true }, - RenderMarkdownH6 = { fg = p.azure, bold = true }, + -- Heading ramp avoids red + violet (both reserved); uses code-safe hues only. + RenderMarkdownH1 = { fg = p.info, bold = true }, + RenderMarkdownH2 = { fg = p.flow, bold = true }, + RenderMarkdownH3 = { fg = p.kind, bold = true }, + RenderMarkdownH4 = { fg = p.ok, bold = true }, + RenderMarkdownH5 = { fg = p.warn, bold = true }, + RenderMarkdownH6 = { fg = p.dim, bold = true }, RenderMarkdownH1Bg = { bg = p.panel }, RenderMarkdownH2Bg = { bg = p.panel }, RenderMarkdownH3Bg = { bg = p.panel }, @@ -572,19 +601,19 @@ function M.load() RenderMarkdownH5Bg = { bg = p.panel }, RenderMarkdownH6Bg = { bg = p.panel }, RenderMarkdownCode = { bg = p.panel }, - RenderMarkdownCodeInline = { fg = p.toxic, bg = p.panel }, - RenderMarkdownBullet = { fg = p.razor }, - RenderMarkdownQuote = { fg = p.stealth, italic = true }, + RenderMarkdownCodeInline = { fg = p.value, bg = p.panel }, + RenderMarkdownBullet = { fg = p.info }, + RenderMarkdownQuote = { fg = p.dim, italic = true }, RenderMarkdownDash = { fg = p.border }, - RenderMarkdownLink = { fg = p.tech, underline = true }, + RenderMarkdownLink = { fg = p.info, underline = true }, RenderMarkdownSign = { bg = p.void }, - RenderMarkdownMath = { fg = p.tech }, - RenderMarkdownTableHead = { fg = p.ink, bg = p.razor, bold = true }, + RenderMarkdownMath = { fg = p.info }, + RenderMarkdownTableHead = { fg = p.void, bg = p.info, bold = true }, RenderMarkdownTableRow = { fg = p.text }, RenderMarkdownTableFill = { fg = p.border }, - RenderMarkdownTodo = { fg = p.void, bg = p.amber, bold = true }, + RenderMarkdownTodo = { fg = p.void, bg = p.warn, bold = true }, RenderMarkdownUnchecked = { fg = p.stealth }, - RenderMarkdownChecked = { fg = p.toxic }, + RenderMarkdownChecked = { fg = p.ok }, } for group, highlight in pairs(groups) do @@ -592,8 +621,8 @@ function M.load() end local links = { - ["@annotation"] = "Special", - ["@attribute"] = "Special", + ["@annotation"] = "Attribute", + ["@attribute"] = "Attribute", ["@character"] = "Character", ["@comment"] = "Comment", ["@constant"] = "Constant", @@ -603,7 +632,7 @@ function M.load() ["@debug"] = "Debug", ["@define"] = "Define", ["@exception"] = "Exception", - ["@field"] = "Identifier", + ["@field"] = "Property", ["@float"] = "Float", ["@function"] = "Function", ["@function.builtin"] = "Function", @@ -611,9 +640,12 @@ function M.load() ["@function.macro"] = "Macro", ["@include"] = "Include", ["@keyword"] = "Keyword", + ["@keyword.conditional"] = "Conditional", + ["@keyword.repeat"] = "Repeat", + ["@keyword.return"] = "Statement", ["@keyword.function"] = "Keyword", ["@keyword.operator"] = "Operator", - ["@keyword.return"] = "Keyword", + ["@keyword.exception"] = "Exception", ["@label"] = "Label", ["@method"] = "Function", ["@method.call"] = "Function", @@ -623,7 +655,7 @@ function M.load() ["@operator"] = "Operator", ["@parameter"] = "Identifier", ["@preproc"] = "PreProc", - ["@property"] = "Identifier", + ["@property"] = "Property", ["@punctuation"] = "Delimiter", ["@punctuation.bracket"] = "Delimiter", ["@punctuation.delimiter"] = "Delimiter", @@ -634,7 +666,7 @@ function M.load() ["@string.regex"] = "SpecialChar", ["@string.special"] = "SpecialChar", ["@tag"] = "Tag", - ["@tag.attribute"] = "Identifier", + ["@tag.attribute"] = "Property", ["@tag.delimiter"] = "Delimiter", ["@text"] = "Normal", ["@text.title"] = "Title", @@ -667,13 +699,15 @@ function M.load() ["@type.definition"] = "Type", ["@type.qualifier"] = "Keyword", ["@variable"] = "Identifier", - ["@variable.builtin"] = "Identifier", + ["@variable.builtin"] = "Builtin", + ["@variable.parameter"] = "Identifier", + ["@variable.member"] = "Property", ["@lsp.type.boolean"] = "Boolean", ["@lsp.type.builtinType"] = "Type", ["@lsp.type.class"] = "Type", ["@lsp.type.comment"] = "Comment", - ["@lsp.type.decorator"] = "Special", + ["@lsp.type.decorator"] = "Attribute", ["@lsp.type.enum"] = "Type", ["@lsp.type.enumMember"] = "Constant", ["@lsp.type.event"] = "Type", @@ -687,7 +721,7 @@ function M.load() ["@lsp.type.number"] = "Number", ["@lsp.type.operator"] = "Operator", ["@lsp.type.parameter"] = "Identifier", - ["@lsp.type.property"] = "Identifier", + ["@lsp.type.property"] = "Property", ["@lsp.type.regexp"] = "SpecialChar", ["@lsp.type.string"] = "String", ["@lsp.type.struct"] = "Structure", @@ -726,32 +760,34 @@ end M.load() -- PLUGINS: LUALINE -------------------------------------------------------- --- Export lualine theme from palette for use in lualine config +-- Export lualine theme from palette for use in lualine config. +-- Mode hues stay distinct: normal=violet(attention), insert=green, visual=cyan, +-- replace=amber, command=violet-deep. fg = void for contrast on bright accents. do local p = M.palette M.lualine = { normal = { - a = { fg = p.ink, bg = p.razor, gui = "bold" }, + a = { fg = p.void, bg = p.focus, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, insert = { - a = { fg = p.ink, bg = p.toxic, gui = "bold" }, + a = { fg = p.void, bg = p.ok, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, visual = { - a = { fg = p.ink, bg = p.tech, gui = "bold" }, + a = { fg = p.void, bg = p.info, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, replace = { - a = { fg = p.ink, bg = p.amber, gui = "bold" }, + a = { fg = p.void, bg = p.warn, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, command = { - a = { fg = p.ink, bg = p.sacred, gui = "bold" }, + a = { fg = p.void, bg = p.special, gui = "bold" }, b = { fg = p.text, bg = p.panel }, c = { fg = p.dim, bg = p.void }, }, diff --git a/dot_config/owlry/themes/apex-aeon.css b/dot_config/owlry/themes/apex-aeon.css index f6c8928..66509be 100644 --- a/dot_config/owlry/themes/apex-aeon.css +++ b/dot_config/owlry/themes/apex-aeon.css @@ -2,74 +2,74 @@ /* * Owlry - Apex Aeon Theme - * "State over Decoration." + * v2 spine: red = danger · violet = attention · cyan = info * * A high-contrast theme built for focus and clinical clarity. * Color exists to signal STATE, not to decorate space. * * Author: S0wlz (Owlibou) * - * Usage: Set theme = "apex-aeon" in config.toml + * Usage: Set theme = "apex-aeon" in config */ :root { /* Core surfaces */ - --owlry-bg: #f5f5f5; - --owlry-bg-secondary: #e8e8e8; - --owlry-border: #737373; - --owlry-text: #0a0a0a; - --owlry-text-secondary: #737373; + --owlry-bg: #f1f3f7; + --owlry-bg-secondary: #e7eaf0; + --owlry-border: #c2c8d4; + --owlry-text: #16181d; + --owlry-text-secondary: #5c6270; - /* The Predator - primary accent */ - --owlry-accent: #ff0044; - --owlry-accent-bright: #ff4d6d; + /* Attention - primary accent (caret, selection, focus) is violet */ + --owlry-accent: #7c2fd6; + --owlry-accent-bright: #8c3dd0; - /* Provider badges - mapped to Apex semantics */ - --owlry-badge-app: #007a88; /* Cyan: apps are informational */ - --owlry-badge-bookmark: #d18f00; /* Yellow: bookmarks need attention */ - --owlry-badge-calc: #ffbf40; /* Bright Yellow: calculator results */ - --owlry-badge-clip: #7a3cff; /* Purple: clipboard is special */ - --owlry-badge-cmd: #7a3cff; /* Purple: commands are elevated */ - --owlry-badge-dmenu: #00b377; /* Green: dmenu is success/pipe */ - --owlry-badge-emoji: #a680ff; /* Bright Purple: emoji is special */ - --owlry-badge-file: #33bccc; /* Bright Cyan: file search is active info */ - --owlry-badge-script: #33d6a6; /* Bright Green: scripts execute successfully */ - --owlry-badge-ssh: #007a88; /* Cyan: SSH is technical/info */ - --owlry-badge-sys: #ff0044; /* Red: system actions are critical */ - --owlry-badge-uuctl: #d18f00; /* Yellow: uuctl requires attention */ - --owlry-badge-web: #007a88; /* Cyan: web is informational */ + /* Provider badges - mapped to Apex v2 semantics */ + --owlry-badge-app: #0080a6; /* Cyan: apps are informational */ + --owlry-badge-bookmark: #a86b00; /* Amber: bookmarks need attention */ + --owlry-badge-calc: #8a5800; /* Bright amber: calculator results */ + --owlry-badge-clip: #6a1fb8; /* Purple: clipboard is special */ + --owlry-badge-cmd: #6a1fb8; /* Purple: commands are elevated */ + --owlry-badge-dmenu: #00875a; /* Green: dmenu is success/pipe */ + --owlry-badge-emoji: #6a1fb8; /* Bright purple: emoji is special */ + --owlry-badge-file: #0e6e92; /* Bright cyan: file search is active info */ + --owlry-badge-script: #006e49; /* Bright green: scripts execute successfully */ + --owlry-badge-ssh: #0080a6; /* Cyan: SSH is technical/info */ + --owlry-badge-sys: #c8003a; /* Red: system actions are critical/danger */ + --owlry-badge-uuctl: #a86b00; /* Amber: uuctl requires attention */ + --owlry-badge-web: #0080a6; /* Cyan: web is informational */ /* Widget badges */ - --owlry-badge-media: #a680ff; /* Bright Purple: media is special */ - --owlry-badge-weather: #33bccc; /* Bright Cyan: weather is active info */ - --owlry-badge-pomo: #ff4d6d; /* Alert Red: pomodoro demands attention */ + --owlry-badge-media: #6a1fb8; /* Bright purple: media is special */ + --owlry-badge-weather: #0e6e92; /* Bright cyan: weather is active info */ + --owlry-badge-pomo: #9e0030; /* Alert red: pomodoro alarm */ } .owlry-main { - background-color: rgba(245, 245, 245, 0.98); - border: 1px solid rgba(115, 115, 115, 0.8); + background-color: rgba(241, 243, 247, 0.98); + border: 1px solid rgba(194, 200, 212, 0.8); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.8), - 0 0 0 1px rgba(255, 0, 68, 0.1); + 0 0 0 1px rgba(124, 47, 214, 0.1); } .owlry-search { - background-color: rgba(232, 232, 232, 0.9); - border: 2px solid rgba(115, 115, 115, 0.8); + background-color: rgba(231, 234, 240, 0.9); + border: 2px solid rgba(194, 200, 212, 0.8); color: var(--owlry-text); caret-color: var(--owlry-accent); } .owlry-search:focus { border-color: var(--owlry-accent); - box-shadow: 0 0 0 2px rgba(255, 0, 68, 0.3); + box-shadow: 0 0 0 2px rgba(124, 47, 214, 0.3); } .owlry-result-row:hover { - background-color: rgba(232, 232, 232, 0.8); + background-color: rgba(231, 234, 240, 0.8); } .owlry-result-row:selected { - background-color: rgba(255, 0, 68, 0.15); + background-color: rgba(124, 47, 214, 0.15); border-left: 3px solid var(--owlry-accent); } @@ -81,91 +81,91 @@ color: var(--owlry-accent); } -/* Provider badges - styled per Apex semantics */ +/* Provider badges - styled per Apex v2 semantics */ .owlry-badge-app { - background-color: rgba(0, 122, 136, 0.15); + background-color: rgba(0, 128, 166, 0.15); color: var(--owlry-badge-app); } .owlry-badge-bookmark { - background-color: rgba(209, 143, 0, 0.15); + background-color: rgba(168, 107, 0, 0.15); color: var(--owlry-badge-bookmark); } .owlry-badge-calc { - background-color: rgba(255, 191, 64, 0.15); + background-color: rgba(138, 88, 0, 0.15); color: var(--owlry-badge-calc); } .owlry-badge-clip { - background-color: rgba(122, 60, 255, 0.15); + background-color: rgba(106, 31, 184, 0.15); color: var(--owlry-badge-clip); } .owlry-badge-cmd { - background-color: rgba(122, 60, 255, 0.15); + background-color: rgba(106, 31, 184, 0.15); color: var(--owlry-badge-cmd); } .owlry-badge-dmenu { - background-color: rgba(0, 179, 119, 0.15); + background-color: rgba(0, 135, 90, 0.15); color: var(--owlry-badge-dmenu); } .owlry-badge-emoji { - background-color: rgba(166, 128, 255, 0.15); + background-color: rgba(106, 31, 184, 0.15); color: var(--owlry-badge-emoji); } .owlry-badge-file { - background-color: rgba(51, 188, 204, 0.15); + background-color: rgba(14, 110, 146, 0.15); color: var(--owlry-badge-file); } .owlry-badge-script { - background-color: rgba(51, 214, 166, 0.15); + background-color: rgba(0, 110, 73, 0.15); color: var(--owlry-badge-script); } .owlry-badge-ssh { - background-color: rgba(0, 122, 136, 0.15); + background-color: rgba(0, 128, 166, 0.15); color: var(--owlry-badge-ssh); } .owlry-badge-sys { - background-color: rgba(255, 0, 68, 0.15); + background-color: rgba(200, 0, 58, 0.15); color: var(--owlry-badge-sys); } .owlry-badge-uuctl { - background-color: rgba(209, 143, 0, 0.15); + background-color: rgba(168, 107, 0, 0.15); color: var(--owlry-badge-uuctl); } .owlry-badge-web { - background-color: rgba(0, 122, 136, 0.15); + background-color: rgba(0, 128, 166, 0.15); color: var(--owlry-badge-web); } /* Widget badges */ .owlry-badge-media { - background-color: rgba(166, 128, 255, 0.15); + background-color: rgba(106, 31, 184, 0.15); color: var(--owlry-badge-media); } .owlry-badge-weather { - background-color: rgba(51, 188, 204, 0.15); + background-color: rgba(14, 110, 146, 0.15); color: var(--owlry-badge-weather); } .owlry-badge-pomo { - background-color: rgba(255, 77, 109, 0.15); + background-color: rgba(158, 0, 48, 0.15); color: var(--owlry-badge-pomo); } -/* Filter button - default uses The Predator */ +/* Filter button - default uses the violet attention accent */ .owlry-filter-button:checked { - background-color: rgba(255, 0, 68, 0.2); + background-color: rgba(124, 47, 214, 0.2); color: var(--owlry-accent); - border-color: rgba(255, 0, 68, 0.5); + border-color: rgba(124, 47, 214, 0.5); } \ No newline at end of file diff --git a/dot_config/owlry/themes/apex-neon.css b/dot_config/owlry/themes/apex-neon.css index d2d7b91..542421e 100644 --- a/dot_config/owlry/themes/apex-neon.css +++ b/dot_config/owlry/themes/apex-neon.css @@ -2,74 +2,74 @@ /* * Owlry - Apex Neon Theme - * "State over Decoration." + * v2 spine: red = danger · violet = attention · cyan = info * * A high-contrast theme built for focus and clinical clarity. * Color exists to signal STATE, not to decorate space. * * Author: S0wlz (Owlibou) * - * Usage: Set theme = "apex-neon" in config.toml + * Usage: Set theme = "apex-neon" in config */ :root { /* Core surfaces */ - --owlry-bg: #050505; - --owlry-bg-secondary: #141414; - --owlry-border: #262626; - --owlry-text: #ededed; - --owlry-text-secondary: #737373; + --owlry-bg: #070709; + --owlry-bg-secondary: #101218; + --owlry-border: #262a34; + --owlry-text: #e6e8ec; + --owlry-text-secondary: #8b909c; - /* The Predator - primary accent */ - --owlry-accent: #ff0044; - --owlry-accent-bright: #ff8899; + /* Attention - primary accent (caret, selection, focus) is violet */ + --owlry-accent: #d68fff; + --owlry-accent-bright: #b14dff; - /* Provider badges - mapped to Apex semantics */ + /* Provider badges - mapped to Apex v2 semantics */ --owlry-badge-app: #00eaff; /* Cyan: apps are informational */ - --owlry-badge-bookmark: #ffb700; /* Yellow: bookmarks need attention */ - --owlry-badge-calc: #ffd24d; /* Bright Yellow: calculator results */ + --owlry-badge-bookmark: #ffb700; /* Amber: bookmarks need attention */ + --owlry-badge-calc: #ffd24d; /* Bright amber: calculator results */ --owlry-badge-clip: #9d00ff; /* Purple: clipboard is special */ --owlry-badge-cmd: #9d00ff; /* Purple: commands are elevated */ --owlry-badge-dmenu: #00ff99; /* Green: dmenu is success/pipe */ - --owlry-badge-emoji: #c84dff; /* Bright Purple: emoji is special */ - --owlry-badge-file: #5af3ff; /* Bright Cyan: file search is active info */ - --owlry-badge-script: #2bffb2; /* Bright Green: scripts execute successfully */ + --owlry-badge-emoji: #c84dff; /* Bright purple: emoji is special */ + --owlry-badge-file: #5af3ff; /* Bright cyan: file search is active info */ + --owlry-badge-script: #2bffb2; /* Bright green: scripts execute successfully */ --owlry-badge-ssh: #00eaff; /* Cyan: SSH is technical/info */ - --owlry-badge-sys: #ff0044; /* Red: system actions are critical */ - --owlry-badge-uuctl: #ffb700; /* Yellow: uuctl requires attention */ + --owlry-badge-sys: #ff0044; /* Red: system actions are critical/danger */ + --owlry-badge-uuctl: #ffb700; /* Amber: uuctl requires attention */ --owlry-badge-web: #00eaff; /* Cyan: web is informational */ /* Widget badges */ - --owlry-badge-media: #c84dff; /* Bright Purple: media is special */ - --owlry-badge-weather: #5af3ff; /* Bright Cyan: weather is active info */ - --owlry-badge-pomo: #ff8899; /* Alert Red: pomodoro demands attention */ + --owlry-badge-media: #c84dff; /* Bright purple: media is special */ + --owlry-badge-weather: #5af3ff; /* Bright cyan: weather is active info */ + --owlry-badge-pomo: #ff3b3b; /* Alert red: pomodoro alarm */ } .owlry-main { - background-color: rgba(5, 5, 5, 0.98); - border: 1px solid rgba(38, 38, 38, 0.8); + background-color: rgba(7, 7, 9, 0.98); + border: 1px solid rgba(38, 42, 52, 0.8); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.8), - 0 0 0 1px rgba(255, 0, 68, 0.1); + 0 0 0 1px rgba(214, 143, 255, 0.1); } .owlry-search { - background-color: rgba(20, 20, 20, 0.9); - border: 2px solid rgba(38, 38, 38, 0.8); + background-color: rgba(16, 18, 24, 0.9); + border: 2px solid rgba(38, 42, 52, 0.8); color: var(--owlry-text); caret-color: var(--owlry-accent); } .owlry-search:focus { border-color: var(--owlry-accent); - box-shadow: 0 0 0 2px rgba(255, 0, 68, 0.3); + box-shadow: 0 0 0 2px rgba(214, 143, 255, 0.3); } .owlry-result-row:hover { - background-color: rgba(20, 20, 20, 0.8); + background-color: rgba(16, 18, 24, 0.8); } .owlry-result-row:selected { - background-color: rgba(255, 0, 68, 0.15); + background-color: rgba(214, 143, 255, 0.15); border-left: 3px solid var(--owlry-accent); } @@ -81,7 +81,7 @@ color: var(--owlry-accent); } -/* Provider badges - styled per Apex semantics */ +/* Provider badges - styled per Apex v2 semantics */ .owlry-badge-app { background-color: rgba(0, 234, 255, 0.15); color: var(--owlry-badge-app); @@ -159,13 +159,13 @@ } .owlry-badge-pomo { - background-color: rgba(255, 136, 153, 0.15); + background-color: rgba(255, 59, 59, 0.15); color: var(--owlry-badge-pomo); } -/* Filter button - default uses The Predator */ +/* Filter button - default uses the violet attention accent */ .owlry-filter-button:checked { - background-color: rgba(255, 0, 68, 0.2); + background-color: rgba(214, 143, 255, 0.2); color: var(--owlry-accent); - border-color: rgba(255, 0, 68, 0.5); + border-color: rgba(214, 143, 255, 0.5); } \ No newline at end of file diff --git a/dot_config/spicetify/private_Themes/apex-aeon/color.ini b/dot_config/spicetify/private_Themes/apex-aeon/color.ini index 9e82cec..6e4ee5d 100644 --- a/dot_config/spicetify/private_Themes/apex-aeon/color.ini +++ b/dot_config/spicetify/private_Themes/apex-aeon/color.ini @@ -1,17 +1,17 @@ [apex-aeon] -text = 0a0a0a -subtext = a0a0a0 -main = f5f5f5 -sidebar = f5f5f5 -player = f5f5f5 -card = e8e8e8 +text = 16181d +subtext = 5c6270 +main = f1f3f7 +sidebar = f1f3f7 +player = f1f3f7 +card = e7eaf0 shadow = 000000 -selected-row = 007a88 -button = 007a88 -button-active = ff0044 -button-disabled = a0a0a0 -tab-active = 737373 -notification = 007a88 -notification-error = ff0044 -misc = d18f00 \ No newline at end of file +selected-row = 0080a6 +button = 0080a6 +button-active = 7c2fd6 +button-disabled = c8cdd8 +tab-active = c2c8d4 +notification = 0080a6 +notification-error = c8003a +misc = a86b00 \ No newline at end of file diff --git a/dot_config/spicetify/private_Themes/apex-neon/color.ini b/dot_config/spicetify/private_Themes/apex-neon/color.ini index aabc0bf..400ce42 100644 --- a/dot_config/spicetify/private_Themes/apex-neon/color.ini +++ b/dot_config/spicetify/private_Themes/apex-neon/color.ini @@ -1,17 +1,17 @@ [apex-neon] -text = ededed -subtext = 404040 -main = 050505 -sidebar = 050505 -player = 050505 -card = 141414 +text = e6e8ec +subtext = 8b909c +main = 070709 +sidebar = 070709 +player = 070709 +card = 101218 shadow = 000000 selected-row = 00eaff button = 00eaff -button-active = ff0044 -button-disabled = 404040 -tab-active = 262626 +button-active = d68fff +button-disabled = 383d49 +tab-active = 262a34 notification = 00eaff notification-error = ff0044 misc = ffb700 \ No newline at end of file diff --git a/dot_config/zathura/themes/apex-aeon.zathurarc b/dot_config/zathura/themes/apex-aeon.zathurarc index 1bfd76f..5d367dc 100644 --- a/dot_config/zathura/themes/apex-aeon.zathurarc +++ b/dot_config/zathura/themes/apex-aeon.zathurarc @@ -1,43 +1,43 @@ # Apex Aeon — Zathura Theme -# DNA: State over Decoration +# v2 spine: red = danger · violet = attention · cyan = info # Core -set default-bg "#f5f5f5" -set default-fg "#0a0a0a" +set default-bg "#f1f3f7" +set default-fg "#16181d" # Status Bar -set statusbar-bg "#e8e8e8" -set statusbar-fg "#0a0a0a" +set statusbar-bg "#e7eaf0" +set statusbar-fg "#16181d" # Input Bar -set inputbar-bg "#e8e8e8" -set inputbar-fg "#0a0a0a" +set inputbar-bg "#e7eaf0" +set inputbar-fg "#16181d" # Completion -set completion-bg "#e8e8e8" -set completion-fg "#0a0a0a" -set completion-group-bg "#737373" -set completion-group-fg "#737373" -set completion-highlight-bg "#ff0044" -set completion-highlight-fg "#0a0a0a" +set completion-bg "#e7eaf0" +set completion-fg "#16181d" +set completion-group-bg "#c2c8d4" +set completion-group-fg "#5c6270" +set completion-highlight-bg "#efe2fb" +set completion-highlight-fg "#16181d" # Notifications -set notification-bg "#e8e8e8" -set notification-fg "#0a0a0a" -set notification-error-bg "#ff4d6d" -set notification-error-fg "#f5f5f5" -set notification-warning-bg "#d18f00" -set notification-warning-fg "#f5f5f5" +set notification-bg "#e7eaf0" +set notification-fg "#16181d" +set notification-error-bg "#c8003a" +set notification-error-fg "#f1f3f7" +set notification-warning-bg "#a86b00" +set notification-warning-fg "#f1f3f7" -# Selection & Highlight -set highlight-color "rgba(ff0044, 0.5)" -set highlight-active-color "rgba(ff0044, 0.8)" +# Search highlight — violet attention (current match brighter) +set highlight-color "rgba(8c3dd0, 0.5)" +set highlight-active-color "rgba(8c3dd0, 0.8)" # Recolor (Dark Mode for PDFs) # In Neon (Dark), we want dark paper (background) and light ink (foreground). # In Aeon (Light), we want light paper and dark ink (standard). -set recolor-lightcolor "#f5f5f5" -set recolor-darkcolor "#0a0a0a" +set recolor-lightcolor "#f1f3f7" +set recolor-darkcolor "#16181d" # Default recolor state # Ideally, only true for dark themes, but Zathura config is static. diff --git a/dot_config/zathura/themes/apex-neon.zathurarc b/dot_config/zathura/themes/apex-neon.zathurarc index e0ce10f..f5fb1be 100644 --- a/dot_config/zathura/themes/apex-neon.zathurarc +++ b/dot_config/zathura/themes/apex-neon.zathurarc @@ -1,43 +1,43 @@ # Apex Neon — Zathura Theme -# DNA: State over Decoration +# v2 spine: red = danger · violet = attention · cyan = info # Core -set default-bg "#050505" -set default-fg "#ededed" +set default-bg "#070709" +set default-fg "#e6e8ec" # Status Bar -set statusbar-bg "#141414" -set statusbar-fg "#ededed" +set statusbar-bg "#101218" +set statusbar-fg "#e6e8ec" # Input Bar -set inputbar-bg "#141414" -set inputbar-fg "#ededed" +set inputbar-bg "#101218" +set inputbar-fg "#e6e8ec" # Completion -set completion-bg "#141414" -set completion-fg "#ededed" -set completion-group-bg "#262626" -set completion-group-fg "#737373" -set completion-highlight-bg "#ff0044" -set completion-highlight-fg "#050505" +set completion-bg "#101218" +set completion-fg "#e6e8ec" +set completion-group-bg "#262a34" +set completion-group-fg "#8b909c" +set completion-highlight-bg "#3a1a4d" +set completion-highlight-fg "#e6e8ec" # Notifications -set notification-bg "#141414" -set notification-fg "#ededed" -set notification-error-bg "#ff8899" -set notification-error-fg "#050505" +set notification-bg "#101218" +set notification-fg "#e6e8ec" +set notification-error-bg "#ff0044" +set notification-error-fg "#070709" set notification-warning-bg "#ffb700" -set notification-warning-fg "#050505" +set notification-warning-fg "#070709" -# Selection & Highlight -set highlight-color "rgba(ff0044, 0.5)" -set highlight-active-color "rgba(ff0044, 0.8)" +# Search highlight — violet attention (current match brighter) +set highlight-color "rgba(b14dff, 0.5)" +set highlight-active-color "rgba(b14dff, 0.8)" # Recolor (Dark Mode for PDFs) # In Neon (Dark), we want dark paper (background) and light ink (foreground). # In Aeon (Light), we want light paper and dark ink (standard). -set recolor-lightcolor "#050505" -set recolor-darkcolor "#ededed" +set recolor-lightcolor "#070709" +set recolor-darkcolor "#e6e8ec" # Default recolor state # Ideally, only true for dark themes, but Zathura config is static. diff --git a/dot_config/zed/themes/apex.json b/dot_config/zed/themes/apex.json index 0e2cb57..7b5c67e 100644 --- a/dot_config/zed/themes/apex.json +++ b/dot_config/zed/themes/apex.json @@ -8,99 +8,99 @@ "name": "Apex Neon", "appearance": "dark", "style": { - "background": "#050505", + "background": "#070709", "background.appearance": "opaque", - "surface.background": "#141414", - "elevated_surface.background": "#141414", - "panel.background": "#141414", - "panel.focused_border": "#ff0044", - "panel.indent_guide": "#26262666", - "panel.indent_guide_active": "#737373aa", - "panel.indent_guide_hover": "#737373cc", - "tab_bar.background": "#141414", - "tab.inactive_background": "#141414", - "tab.active_background": "#050505", - "title_bar.background": "#050505", - "title_bar.inactive_background": "#141414", - "toolbar.background": "#141414", - "status_bar.background": "#141414", - "border": "#262626", - "border.variant": "#141414", - "border.focused": "#ff0044", - "border.selected": "#ff0044", - "border.disabled": "#141414", + "surface.background": "#101218", + "elevated_surface.background": "#101218", + "panel.background": "#101218", + "panel.focused_border": "#d68fff", + "panel.indent_guide": "#262a3466", + "panel.indent_guide_active": "#8b909caa", + "panel.indent_guide_hover": "#8b909ccc", + "tab_bar.background": "#101218", + "tab.inactive_background": "#101218", + "tab.active_background": "#070709", + "title_bar.background": "#070709", + "title_bar.inactive_background": "#101218", + "toolbar.background": "#101218", + "status_bar.background": "#101218", + "border": "#262a34", + "border.variant": "#101218", + "border.focused": "#d68fff", + "border.selected": "#d68fff", + "border.disabled": "#101218", "border.transparent": "transparent", - "text": "#ededed", - "text.muted": "#737373", - "text.placeholder": "#737373", - "text.disabled": "#737373", + "text": "#e6e8ec", + "text.muted": "#8b909c", + "text.placeholder": "#8b909c", + "text.disabled": "#8b909c", "text.accent": "#00eaff", - "icon": "#ededed", - "icon.muted": "#737373", - "icon.placeholder": "#737373", - "icon.disabled": "#737373", + "icon": "#e6e8ec", + "icon.muted": "#8b909c", + "icon.placeholder": "#8b909c", + "icon.disabled": "#8b909c", "icon.accent": "#00eaff", "accents": [ - "#ff0044", + "#d68fff", "#00eaff", "#9d00ff", "#00ff99", "#ffb700" ], - "element.background": "#141414", - "element.hover": "#262626", - "element.active": "#262626", - "element.selected": "#262626", - "element.disabled": "#141414", + "element.background": "#101218", + "element.hover": "#262a34", + "element.active": "#262a34", + "element.selected": "#262a34", + "element.disabled": "#101218", "ghost_element.background": null, - "ghost_element.hover": "#26262666", - "ghost_element.active": "#26262688", - "ghost_element.selected": "#26262666", + "ghost_element.hover": "#262a3466", + "ghost_element.active": "#262a3488", + "ghost_element.selected": "#262a3466", "ghost_element.disabled": null, "drop_target.background": "#00eaff22", - "editor.background": "#050505", - "editor.foreground": "#ededed", - "editor.gutter.background": "#050505", - "editor.subheader.background": "#141414", - "editor.active_line.background": "#141414", - "editor.highlighted_line.background": "#141414", - "editor.line_number": "#737373", - "editor.active_line_number": "#ff0044", - "editor.wrap_guide": "#262626", - "editor.active_wrap_guide": "#737373", - "editor.indent_guide": "#26262666", - "editor.indent_guide_active": "#737373aa", - "editor.invisible": "#26262688", + "editor.background": "#070709", + "editor.foreground": "#e6e8ec", + "editor.gutter.background": "#070709", + "editor.subheader.background": "#101218", + "editor.active_line.background": "#101218", + "editor.highlighted_line.background": "#101218", + "editor.line_number": "#8b909c", + "editor.active_line_number": "#d68fff", + "editor.wrap_guide": "#262a34", + "editor.active_wrap_guide": "#8b909c", + "editor.indent_guide": "#262a3466", + "editor.indent_guide_active": "#8b909caa", + "editor.invisible": "#262a3488", "editor.document_highlight.read_background": "#00eaff22", - "editor.document_highlight.write_background": "#ff004422", - "editor.document_highlight.bracket_background": "#26262666", - "search.match_background": "#00eaff33", - "scrollbar.track.background": "#050505", - "scrollbar.track.border": "#050505", - "scrollbar.thumb.background": "#262626aa", - "scrollbar.thumb.hover_background": "#404040", + "editor.document_highlight.write_background": "#d68fff22", + "editor.document_highlight.bracket_background": "#262a3466", + "search.match_background": "#b14dff33", + "scrollbar.track.background": "#070709", + "scrollbar.track.border": "#070709", + "scrollbar.thumb.background": "#262a34aa", + "scrollbar.thumb.hover_background": "#383d49", "scrollbar.thumb.border": "transparent", - "pane.focused_border": "#ff0044", - "pane_group.border": "#262626", - "link_text.hover": "#5af3ff", + "pane.focused_border": "#d68fff", + "pane_group.border": "#262a34", + "link_text.hover": "#5b8cff", "success": "#00ff99", "success.background": "#00ff991a", "success.border": "#00ff99", "warning": "#ffb700", "warning.background": "#ffb7001a", "warning.border": "#ffb700", - "error": "#ff8899", - "error.background": "#ff88991a", - "error.border": "#ff8899", + "error": "#ff0044", + "error.background": "#ff00441a", + "error.border": "#ff0044", "info": "#00eaff", "info.background": "#00eaff1a", "info.border": "#00eaff", - "hint": "#0088cc", - "hint.background": "#0088cc1a", - "hint.border": "#0088cc", - "predictive": "#0088cc", - "predictive.background": "#0088cc1a", - "predictive.border": "#0088cc", + "hint": "#2e6bff", + "hint.background": "#2e6bff1a", + "hint.border": "#2e6bff", + "predictive": "#8b909c", + "predictive.background": "#8b909c1a", + "predictive.border": "#8b909c", "unreachable": "#9d00ff", "unreachable.background": "#9d00ff1a", "unreachable.border": "#9d00ff", @@ -110,55 +110,55 @@ "modified": "#ffb700", "modified.background": "#ffb7001a", "modified.border": "#ffb700", - "deleted": "#ff8899", - "deleted.background": "#ff88991a", - "deleted.border": "#ff8899", + "deleted": "#ff0044", + "deleted.background": "#ff00441a", + "deleted.border": "#ff0044", "renamed": "#00eaff", "renamed.background": "#00eaff1a", "renamed.border": "#00eaff", - "conflict": "#ff8899", - "conflict.background": "#ff88991a", - "conflict.border": "#ff8899", - "ignored": "#737373", - "ignored.background": "#7373731a", - "ignored.border": "#262626", - "hidden": "#737373", - "hidden.background": "#7373731a", - "hidden.border": "#262626", - "terminal.background": "#050505", - "terminal.foreground": "#ededed", + "conflict": "#ff0044", + "conflict.background": "#ff00441a", + "conflict.border": "#ff0044", + "ignored": "#8b909c", + "ignored.background": "#8b909c1a", + "ignored.border": "#262a34", + "hidden": "#8b909c", + "hidden.background": "#8b909c1a", + "hidden.border": "#262a34", + "terminal.background": "#070709", + "terminal.foreground": "#e6e8ec", "terminal.bright_foreground": "#ffffff", - "terminal.dim_foreground": "#737373", - "terminal.ansi.background": "#050505", - "terminal.ansi.black": "#050505", + "terminal.dim_foreground": "#8b909c", + "terminal.ansi.background": "#070709", + "terminal.ansi.black": "#070709", "terminal.ansi.red": "#ff0044", "terminal.ansi.green": "#00ff99", "terminal.ansi.yellow": "#ffb700", - "terminal.ansi.blue": "#00eaff", + "terminal.ansi.blue": "#2e6bff", "terminal.ansi.magenta": "#9d00ff", "terminal.ansi.cyan": "#00eaff", - "terminal.ansi.white": "#ededed", - "terminal.ansi.bright_black": "#737373", - "terminal.ansi.bright_red": "#ff8899", + "terminal.ansi.white": "#e6e8ec", + "terminal.ansi.bright_black": "#383d49", + "terminal.ansi.bright_red": "#ff3b3b", "terminal.ansi.bright_green": "#2bffb2", "terminal.ansi.bright_yellow": "#ffd24d", - "terminal.ansi.bright_blue": "#5af3ff", + "terminal.ansi.bright_blue": "#5b8cff", "terminal.ansi.bright_magenta": "#c84dff", "terminal.ansi.bright_cyan": "#5af3ff", "terminal.ansi.bright_white": "#ffffff", - "terminal.ansi.dim_black": "#050505", + "terminal.ansi.dim_black": "#070709", "terminal.ansi.dim_red": "#ff0044", "terminal.ansi.dim_green": "#00ff99", "terminal.ansi.dim_yellow": "#ffb700", - "terminal.ansi.dim_blue": "#00eaff", + "terminal.ansi.dim_blue": "#2e6bff", "terminal.ansi.dim_magenta": "#9d00ff", "terminal.ansi.dim_cyan": "#00eaff", - "terminal.ansi.dim_white": "#ededed", + "terminal.ansi.dim_white": "#e6e8ec", "players": [ { - "cursor": "#ff0044", - "background": "#ff0044", - "selection": "#ff004433" + "cursor": "#d68fff", + "background": "#d68fff", + "selection": "#d68fff33" }, { "cursor": "#00eaff", @@ -183,103 +183,103 @@ ], "version_control.added": "#00ff99", "version_control.modified": "#ffb700", - "version_control.deleted": "#ff8899", - "version_control.conflict": "#ff8899", + "version_control.deleted": "#ff0044", + "version_control.conflict": "#ff0044", "version_control.renamed": "#00eaff", - "version_control.ignored": "#737373", + "version_control.ignored": "#8b909c", "syntax": { "comment": { - "color": "#737373", + "color": "#8b909c", "font_style": "italic" }, "comment.doc": { - "color": "#737373", + "color": "#8b909c", "font_style": "italic" }, "keyword": { - "color": "#9d00ff" + "color": "#5b8cff" }, "keyword.import": { - "color": "#9d00ff" + "color": "#5b8cff" }, "keyword.storage": { - "color": "#9d00ff" + "color": "#2e6bff" }, "function": { - "color": "#0088cc" + "color": "#5af3ff" }, "function.method": { - "color": "#0088cc" + "color": "#5af3ff" }, "function.special.definition": { - "color": "#0088cc" + "color": "#5af3ff" }, "type": { - "color": "#ffb700" + "color": "#7db4ff" }, "type.builtin": { - "color": "#ffb700" + "color": "#7db4ff" }, "string": { - "color": "#00ff99" - }, - "string.escape": { "color": "#2bffb2" }, + "string.escape": { + "color": "#7dffd0" + }, "string.regex": { - "color": "#ffb700" + "color": "#7dffd0" }, "number": { - "color": "#00eaff" + "color": "#37dba0" }, "boolean": { - "color": "#00eaff" + "color": "#37dba0" }, "constant": { - "color": "#00eaff" + "color": "#37dba0" }, "constant.builtin": { - "color": "#9d00ff" + "color": "#37dba0" }, "variable": { - "color": "#ededed" + "color": "#e6e8ec" }, "variable.special": { - "color": "#9d00ff" + "color": "#8fd6ff" }, "property": { - "color": "#ededed" + "color": "#cdd4e3" }, "attribute": { - "color": "#0088cc" + "color": "#2e6bff" }, "tag": { - "color": "#00eaff" + "color": "#7db4ff" }, "label": { - "color": "#0088cc" + "color": "#5b8cff" }, "operator": { - "color": "#ededed" + "color": "#c2c8d4" }, "punctuation": { - "color": "#737373" + "color": "#aab0bc" }, "punctuation.bracket": { - "color": "#737373" + "color": "#aab0bc" }, "punctuation.delimiter": { - "color": "#737373" + "color": "#aab0bc" }, "punctuation.list_marker": { - "color": "#737373", + "color": "#aab0bc", "font_weight": 700 }, "link_text": { "color": "#00eaff" }, "link_uri": { - "color": "#0088cc" + "color": "#2e6bff" }, "emphasis": { "font_style": "italic" @@ -288,29 +288,29 @@ "font_weight": 700 }, "title": { - "color": "#ededed", + "color": "#e6e8ec", "font_weight": 700 }, "text.literal": { - "color": "#00ff99" + "color": "#2bffb2" }, "preproc": { - "color": "#0088cc" + "color": "#5af3ff" }, "constructor": { - "color": "#0088cc" + "color": "#7db4ff" }, "enum": { - "color": "#9d00ff" + "color": "#7db4ff" }, "variant": { - "color": "#9d00ff" + "color": "#37dba0" }, "hint": { - "color": "#0088cc" + "color": "#8b909c" }, "predictive": { - "color": "#737373" + "color": "#8b909c" } } } @@ -320,278 +320,278 @@ "name": "Apex Aeon", "appearance": "light", "style": { - "background": "#f5f5f5", + "background": "#f1f3f7", "background.appearance": "opaque", - "surface.background": "#e8e8e8", + "surface.background": "#e7eaf0", "elevated_surface.background": "#ffffff", - "panel.background": "#e8e8e8", - "panel.focused_border": "#ff0044", - "panel.indent_guide": "#73737366", - "panel.indent_guide_active": "#737373aa", - "panel.indent_guide_hover": "#737373cc", - "tab_bar.background": "#e8e8e8", - "tab.inactive_background": "#e8e8e8", - "tab.active_background": "#f5f5f5", - "title_bar.background": "#f5f5f5", - "title_bar.inactive_background": "#e8e8e8", - "toolbar.background": "#e8e8e8", - "status_bar.background": "#e8e8e8", - "border": "#737373", - "border.variant": "#a0a0a0", - "border.focused": "#ff0044", - "border.selected": "#ff0044", - "border.disabled": "#a0a0a0", + "panel.background": "#e7eaf0", + "panel.focused_border": "#7c2fd6", + "panel.indent_guide": "#c2c8d466", + "panel.indent_guide_active": "#5c6270aa", + "panel.indent_guide_hover": "#5c6270cc", + "tab_bar.background": "#e7eaf0", + "tab.inactive_background": "#e7eaf0", + "tab.active_background": "#f1f3f7", + "title_bar.background": "#f1f3f7", + "title_bar.inactive_background": "#e7eaf0", + "toolbar.background": "#e7eaf0", + "status_bar.background": "#e7eaf0", + "border": "#c2c8d4", + "border.variant": "#c8cdd8", + "border.focused": "#7c2fd6", + "border.selected": "#7c2fd6", + "border.disabled": "#c8cdd8", "border.transparent": "transparent", - "text": "#0a0a0a", - "text.muted": "#737373", - "text.placeholder": "#737373", - "text.disabled": "#a0a0a0", - "text.accent": "#007a88", - "icon": "#0a0a0a", - "icon.muted": "#737373", - "icon.placeholder": "#737373", - "icon.disabled": "#a0a0a0", - "icon.accent": "#007a88", + "text": "#16181d", + "text.muted": "#5c6270", + "text.placeholder": "#5c6270", + "text.disabled": "#c8cdd8", + "text.accent": "#0080a6", + "icon": "#16181d", + "icon.muted": "#5c6270", + "icon.placeholder": "#5c6270", + "icon.disabled": "#c8cdd8", + "icon.accent": "#0080a6", "accents": [ - "#ff0044", - "#007a88", - "#7a3cff", - "#00b377", - "#d18f00" + "#7c2fd6", + "#0080a6", + "#6a1fb8", + "#00875a", + "#a86b00" ], "element.background": "#ffffff", - "element.hover": "#737373", - "element.active": "#737373", - "element.selected": "#737373", - "element.disabled": "#e8e8e8", + "element.hover": "#c2c8d4", + "element.active": "#c2c8d4", + "element.selected": "#c2c8d4", + "element.disabled": "#e7eaf0", "ghost_element.background": null, - "ghost_element.hover": "#73737366", - "ghost_element.active": "#73737388", - "ghost_element.selected": "#73737366", + "ghost_element.hover": "#c2c8d466", + "ghost_element.active": "#c2c8d488", + "ghost_element.selected": "#c2c8d466", "ghost_element.disabled": null, - "drop_target.background": "#33bccc22", - "editor.background": "#f5f5f5", - "editor.foreground": "#0a0a0a", - "editor.gutter.background": "#f5f5f5", - "editor.subheader.background": "#e8e8e8", - "editor.active_line.background": "#e8e8e8", - "editor.highlighted_line.background": "#e8e8e8", - "editor.line_number": "#737373", - "editor.active_line_number": "#ff0044", - "editor.wrap_guide": "#737373", - "editor.active_wrap_guide": "#737373", - "editor.indent_guide": "#73737366", - "editor.indent_guide_active": "#737373aa", - "editor.invisible": "#73737388", - "editor.document_highlight.read_background": "#007a881a", - "editor.document_highlight.write_background": "#ff00441a", - "editor.document_highlight.bracket_background": "#73737366", - "search.match_background": "#33bccc44", - "scrollbar.track.background": "#f5f5f5", - "scrollbar.track.border": "#f5f5f5", - "scrollbar.thumb.background": "#a0a0a0aa", - "scrollbar.thumb.hover_background": "#737373", + "drop_target.background": "#0080a622", + "editor.background": "#f1f3f7", + "editor.foreground": "#16181d", + "editor.gutter.background": "#f1f3f7", + "editor.subheader.background": "#e7eaf0", + "editor.active_line.background": "#e7eaf0", + "editor.highlighted_line.background": "#e7eaf0", + "editor.line_number": "#5c6270", + "editor.active_line_number": "#7c2fd6", + "editor.wrap_guide": "#c2c8d4", + "editor.active_wrap_guide": "#5c6270", + "editor.indent_guide": "#c2c8d466", + "editor.indent_guide_active": "#5c6270aa", + "editor.invisible": "#c2c8d488", + "editor.document_highlight.read_background": "#0080a61a", + "editor.document_highlight.write_background": "#7c2fd61a", + "editor.document_highlight.bracket_background": "#c2c8d466", + "search.match_background": "#8c3dd044", + "scrollbar.track.background": "#f1f3f7", + "scrollbar.track.border": "#f1f3f7", + "scrollbar.thumb.background": "#c8cdd8aa", + "scrollbar.thumb.hover_background": "#5c6270", "scrollbar.thumb.border": "transparent", - "pane.focused_border": "#ff0044", - "pane_group.border": "#a0a0a0", - "link_text.hover": "#33bccc", - "success": "#00b377", - "success.background": "#00b3771a", - "success.border": "#00b377", - "warning": "#d18f00", - "warning.background": "#d18f001a", - "warning.border": "#d18f00", - "error": "#ff4d6d", - "error.background": "#ff4d6d1a", - "error.border": "#ff4d6d", - "info": "#007a88", - "info.background": "#007a881a", - "info.border": "#007a88", - "hint": "#005577", - "hint.background": "#0055771a", - "hint.border": "#005577", - "predictive": "#005577", - "predictive.background": "#0055771a", - "predictive.border": "#005577", - "unreachable": "#7a3cff", - "unreachable.background": "#7a3cff1a", - "unreachable.border": "#7a3cff", - "created": "#00b377", - "created.background": "#00b3771a", - "created.border": "#00b377", - "modified": "#d18f00", - "modified.background": "#d18f001a", - "modified.border": "#d18f00", - "deleted": "#ff4d6d", - "deleted.background": "#ff4d6d1a", - "deleted.border": "#ff4d6d", - "renamed": "#007a88", - "renamed.background": "#007a881a", - "renamed.border": "#007a88", - "conflict": "#ff4d6d", - "conflict.background": "#ff4d6d1a", - "conflict.border": "#ff4d6d", - "ignored": "#737373", - "ignored.background": "#7373731a", - "ignored.border": "#737373", - "hidden": "#737373", - "hidden.background": "#7373731a", - "hidden.border": "#737373", - "terminal.background": "#f5f5f5", - "terminal.foreground": "#0a0a0a", - "terminal.bright_foreground": "#0a0a0a", - "terminal.dim_foreground": "#737373", - "terminal.ansi.background": "#f5f5f5", - "terminal.ansi.black": "#0a0a0a", - "terminal.ansi.red": "#ff0044", - "terminal.ansi.green": "#00b377", - "terminal.ansi.yellow": "#d18f00", - "terminal.ansi.blue": "#007a88", - "terminal.ansi.magenta": "#7a3cff", - "terminal.ansi.cyan": "#007a88", - "terminal.ansi.white": "#f5f5f5", - "terminal.ansi.bright_black": "#737373", - "terminal.ansi.bright_red": "#ff4d6d", - "terminal.ansi.bright_green": "#33d6a6", - "terminal.ansi.bright_yellow": "#ffbf40", - "terminal.ansi.bright_blue": "#33bccc", - "terminal.ansi.bright_magenta": "#a680ff", - "terminal.ansi.bright_cyan": "#33bccc", - "terminal.ansi.bright_white": "#ffffff", - "terminal.ansi.dim_black": "#0a0a0a", - "terminal.ansi.dim_red": "#ff0044", - "terminal.ansi.dim_green": "#00b377", - "terminal.ansi.dim_yellow": "#d18f00", - "terminal.ansi.dim_blue": "#007a88", - "terminal.ansi.dim_magenta": "#7a3cff", - "terminal.ansi.dim_cyan": "#007a88", - "terminal.ansi.dim_white": "#f5f5f5", + "pane.focused_border": "#7c2fd6", + "pane_group.border": "#c8cdd8", + "link_text.hover": "#1633a0", + "success": "#00875a", + "success.background": "#00875a1a", + "success.border": "#00875a", + "warning": "#a86b00", + "warning.background": "#a86b001a", + "warning.border": "#a86b00", + "error": "#c8003a", + "error.background": "#c8003a1a", + "error.border": "#c8003a", + "info": "#0080a6", + "info.background": "#0080a61a", + "info.border": "#0080a6", + "hint": "#2148c0", + "hint.background": "#2148c01a", + "hint.border": "#2148c0", + "predictive": "#5c6270", + "predictive.background": "#5c62701a", + "predictive.border": "#5c6270", + "unreachable": "#6a1fb8", + "unreachable.background": "#6a1fb81a", + "unreachable.border": "#6a1fb8", + "created": "#00875a", + "created.background": "#00875a1a", + "created.border": "#00875a", + "modified": "#a86b00", + "modified.background": "#a86b001a", + "modified.border": "#a86b00", + "deleted": "#c8003a", + "deleted.background": "#c8003a1a", + "deleted.border": "#c8003a", + "renamed": "#0080a6", + "renamed.background": "#0080a61a", + "renamed.border": "#0080a6", + "conflict": "#c8003a", + "conflict.background": "#c8003a1a", + "conflict.border": "#c8003a", + "ignored": "#5c6270", + "ignored.background": "#5c62701a", + "ignored.border": "#c2c8d4", + "hidden": "#5c6270", + "hidden.background": "#5c62701a", + "hidden.border": "#c2c8d4", + "terminal.background": "#f1f3f7", + "terminal.foreground": "#16181d", + "terminal.bright_foreground": "#16181d", + "terminal.dim_foreground": "#5c6270", + "terminal.ansi.background": "#f1f3f7", + "terminal.ansi.black": "#16181d", + "terminal.ansi.red": "#c8003a", + "terminal.ansi.green": "#00875a", + "terminal.ansi.yellow": "#a86b00", + "terminal.ansi.blue": "#2148c0", + "terminal.ansi.magenta": "#7c2fd6", + "terminal.ansi.cyan": "#0080a6", + "terminal.ansi.white": "#c2c8d4", + "terminal.ansi.bright_black": "#5c6270", + "terminal.ansi.bright_red": "#9e0030", + "terminal.ansi.bright_green": "#006e49", + "terminal.ansi.bright_yellow": "#8a5800", + "terminal.ansi.bright_blue": "#1633a0", + "terminal.ansi.bright_magenta": "#6a1fb8", + "terminal.ansi.bright_cyan": "#0e6e92", + "terminal.ansi.bright_white": "#f1f3f7", + "terminal.ansi.dim_black": "#16181d", + "terminal.ansi.dim_red": "#c8003a", + "terminal.ansi.dim_green": "#00875a", + "terminal.ansi.dim_yellow": "#a86b00", + "terminal.ansi.dim_blue": "#2148c0", + "terminal.ansi.dim_magenta": "#7c2fd6", + "terminal.ansi.dim_cyan": "#0080a6", + "terminal.ansi.dim_white": "#c2c8d4", "players": [ { - "cursor": "#ff0044", - "background": "#ff0044", - "selection": "#ff004433" + "cursor": "#7c2fd6", + "background": "#7c2fd6", + "selection": "#7c2fd633" }, { - "cursor": "#007a88", - "background": "#007a88", - "selection": "#007a8833" + "cursor": "#0080a6", + "background": "#0080a6", + "selection": "#0080a633" }, { - "cursor": "#7a3cff", - "background": "#7a3cff", - "selection": "#7a3cff33" + "cursor": "#6a1fb8", + "background": "#6a1fb8", + "selection": "#6a1fb833" }, { - "cursor": "#00b377", - "background": "#00b377", - "selection": "#00b37733" + "cursor": "#00875a", + "background": "#00875a", + "selection": "#00875a33" }, { - "cursor": "#d18f00", - "background": "#d18f00", - "selection": "#d18f0033" + "cursor": "#a86b00", + "background": "#a86b00", + "selection": "#a86b0033" } ], - "version_control.added": "#00b377", - "version_control.modified": "#d18f00", - "version_control.deleted": "#ff4d6d", - "version_control.conflict": "#ff4d6d", - "version_control.renamed": "#007a88", - "version_control.ignored": "#737373", + "version_control.added": "#00875a", + "version_control.modified": "#a86b00", + "version_control.deleted": "#c8003a", + "version_control.conflict": "#c8003a", + "version_control.renamed": "#0080a6", + "version_control.ignored": "#5c6270", "syntax": { "comment": { - "color": "#737373", + "color": "#5c6270", "font_style": "italic" }, "comment.doc": { - "color": "#737373", + "color": "#5c6270", "font_style": "italic" }, "keyword": { - "color": "#7a3cff" + "color": "#1633a0" }, "keyword.import": { - "color": "#7a3cff" + "color": "#1633a0" }, "keyword.storage": { - "color": "#7a3cff" + "color": "#1633a0" }, "function": { - "color": "#005577" + "color": "#0e6e92" }, "function.method": { - "color": "#005577" + "color": "#0e6e92" }, "function.special.definition": { - "color": "#005577" + "color": "#0e6e92" }, "type": { - "color": "#d18f00" + "color": "#2148c0" }, "type.builtin": { - "color": "#d18f00" + "color": "#2148c0" }, "string": { - "color": "#00b377" + "color": "#00734d" }, "string.escape": { - "color": "#33d6a6" + "color": "#2b8f63" }, "string.regex": { - "color": "#d18f00" + "color": "#2b8f63" }, "number": { - "color": "#007a88" + "color": "#00875a" }, "boolean": { - "color": "#007a88" + "color": "#00875a" }, "constant": { - "color": "#007a88" + "color": "#00875a" }, "constant.builtin": { - "color": "#7a3cff" + "color": "#00875a" }, "variable": { - "color": "#0a0a0a" + "color": "#16181d" }, "variable.special": { - "color": "#7a3cff" + "color": "#3a7d9c" }, "property": { - "color": "#0a0a0a" + "color": "#2e333d" }, "attribute": { - "color": "#005577" + "color": "#2148c0" }, "tag": { - "color": "#007a88" + "color": "#2148c0" }, "label": { - "color": "#005577" + "color": "#1633a0" }, "operator": { - "color": "#0a0a0a" + "color": "#5c6270" }, "punctuation": { - "color": "#737373" + "color": "#7d8390" }, "punctuation.bracket": { - "color": "#737373" + "color": "#7d8390" }, "punctuation.delimiter": { - "color": "#737373" + "color": "#7d8390" }, "punctuation.list_marker": { - "color": "#737373", + "color": "#7d8390", "font_weight": 700 }, "link_text": { - "color": "#007a88" + "color": "#0080a6" }, "link_uri": { - "color": "#005577" + "color": "#2148c0" }, "emphasis": { "font_style": "italic" @@ -600,33 +600,33 @@ "font_weight": 700 }, "title": { - "color": "#0a0a0a", + "color": "#16181d", "font_weight": 700 }, "text.literal": { - "color": "#00b377" + "color": "#00734d" }, "preproc": { - "color": "#005577" + "color": "#0e6e92" }, "constructor": { - "color": "#005577" + "color": "#2148c0" }, "enum": { - "color": "#7a3cff" + "color": "#2148c0" }, "variant": { - "color": "#7a3cff" + "color": "#00875a" }, "hint": { - "color": "#005577" + "color": "#5c6270" }, "predictive": { - "color": "#737373" + "color": "#5c6270" } } } } ] -} +} \ No newline at end of file diff --git a/dot_config/zsh/apex-aeon.zsh b/dot_config/zsh/apex-aeon.zsh index 479c6a0..e753228 100644 --- a/dot_config/zsh/apex-aeon.zsh +++ b/dot_config/zsh/apex-aeon.zsh @@ -1,4 +1,4 @@ -# Apex Aeon — Predator Cockpit (Zsh) — v1 +# Apex Aeon — Predator Cockpit (Zsh) — v2 # Two-bus design: # [precmd radar] -> after-action + context bursts (event-driven) # [promptline] -> LEFT: identity + territory @@ -13,25 +13,25 @@ zmodload zsh/datetime 2>/dev/null # 1) PALETTE (Apex Aeon DNA) # ----------------------------------------------------------------------------- typeset -gA C -C[VOID]="#f5f5f5" -C[WHITE]="#0a0a0a" -C[MUTED]="#737373" -C[RAZOR]="#ff0044" -C[CYAN]="#007a88" -C[GOLD]="#d18f00" -C[OK]="#00b377" -C[PURPLE]="#7a3cff" -C[ALERT]="#ff4d6d" +C[VOID]="#f1f3f7" +C[WHITE]="#16181d" +C[MUTED]="#5c6270" +C[RAZOR]="#7c2fd6" +C[CYAN]="#0080a6" +C[GOLD]="#a86b00" +C[OK]="#00875a" +C[PURPLE]="#6a1fb8" +C[ALERT]="#c8003a" # ----------------------------------------------------------------------------- # 1b) PLUGIN COLORS # ----------------------------------------------------------------------------- # zsh-autosuggestions: ghost text from history (subtle, intentionally dim) -ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=#737373" +ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=#5c6270" # zsh-history-substring-search -HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND="fg=#007a88,bold" -HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND="fg=#ff4d6d,bold" +HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND="fg=#0080a6,bold" +HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND="fg=#c8003a,bold" # ----------------------------------------------------------------------------- # 2) ICONS / GLYPHS (Nerd Font optional) diff --git a/dot_config/zsh/apex-neon.zsh b/dot_config/zsh/apex-neon.zsh index a6ea3ac..8ab90b4 100644 --- a/dot_config/zsh/apex-neon.zsh +++ b/dot_config/zsh/apex-neon.zsh @@ -1,4 +1,4 @@ -# Apex Neon — Predator Cockpit (Zsh) — v1 +# Apex Neon — Predator Cockpit (Zsh) — v2 # Two-bus design: # [precmd radar] -> after-action + context bursts (event-driven) # [promptline] -> LEFT: identity + territory @@ -13,25 +13,25 @@ zmodload zsh/datetime 2>/dev/null # 1) PALETTE (Apex Neon DNA) # ----------------------------------------------------------------------------- typeset -gA C -C[VOID]="#050505" -C[WHITE]="#ededed" -C[MUTED]="#737373" -C[RAZOR]="#ff0044" +C[VOID]="#070709" +C[WHITE]="#e6e8ec" +C[MUTED]="#8b909c" +C[RAZOR]="#d68fff" C[CYAN]="#00eaff" C[GOLD]="#ffb700" C[OK]="#00ff99" C[PURPLE]="#9d00ff" -C[ALERT]="#ff8899" +C[ALERT]="#ff0044" # ----------------------------------------------------------------------------- # 1b) PLUGIN COLORS # ----------------------------------------------------------------------------- # zsh-autosuggestions: ghost text from history (subtle, intentionally dim) -ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=#737373" +ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=#8b909c" # zsh-history-substring-search HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND="fg=#00eaff,bold" -HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND="fg=#ff8899,bold" +HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND="fg=#ff0044,bold" # ----------------------------------------------------------------------------- # 2) ICONS / GLYPHS (Nerd Font optional)