π― Goal
Add Everforest (Dark Medium β Sainnhe's recommended default) as a
ninth selectable theme via the theme-set <name> fish switcher.
Machinery landed in #185; Gruvbox reference implementation in #193.
Variant pick: Dark Medium. Hard / Soft contrast change bg /
bg_dim only β accents stay identical. Light variants out of scope
(parallel reasoning to #188's deferral).
π¨ Palette (Dark Medium)
- bg/surface: bg0
#2d353b, bg1 #343f44, bg2 #3d484d, bg3 #475258, bg4 #4f585e
- fg: fg
#d3c6aa, grey0 #7a8478, grey1 #859289, grey2 #9da9a0
- accents: red
#e67e80, orange #e69875, yellow #dbbc7f, green #a7c080, aqua #83c092, blue #7fbbb3, purple #d699b6
- statusline: statusline1 (green)
#a7c080, statusline2 (blue) #7fbbb3, statusline3 (red) #e67e80
π Architecture
Machinery is settled (#185). Slot in following the Gruvbox shape (#193).
π οΈ Work breakdown
βοΈ Tradeoff
Win: green-tinted warm palette, often described as "Gruvbox's
gentler cousin". Lower-contrast than Gruvbox so easier on the eyes for
long sessions; distinct identity through its green-leaning fg
(#d3c6aa).
Loss: Everforest's red #e67e80 and orange #e69875 are even
closer in hue than Gruvbox's (#cc241d red vs #d65d0e orange).
The unique-accent rule walk-through from #188 applies more sharply
here β strongly consider widening the PR chip's separation.
π¦ Open questions
- Red vs orange collision (sharper than Gruvbox's):
- Status-quo: PR chip orange
#e69875, red #e67e80 defined but
unused on the bar β no visible collision, just a tight palette.
- Alternative: repaint PR chip to aqua
#83c092 to widen the
palette spread and free up orange/red for future pins.
- Recommendation: keep PR chip orange in v1 (matches Solarized /
Mocha / Dracula / Gruvbox's positional semantic); revisit if the
visual check after merge reads as flat.
- Chip text inversion: muted warm palette β dark-on-accent
(@color_light_fg = '#2d353b' bg0). Same logic as Gruvbox.
- nvim plugin pick: `sainnhe/everforest` is the author's canonical
Vimscript port. `neanias/everforest-nvim` is a Lua reimplementation
with treesitter-native highlights β slightly faster startup, more
granular config. Default to author's canonical for fidelity; revisit
if startup time matters.
- Hard vs Medium vs Soft contrast: Medium is the author's
recommended default. Hard is most popular among Gruvbox refugees who
want more contrast; Soft for low-light workflows. Pick Medium for v1.
- Unique-accent rule mapping (clean β seven distinct hues
including aqua):
- session chip (blue): blue
#7fbbb3
- active window pin (green): green
#a7c080
- PR chip (orange): orange
#e69875 (see collision note above)
- git main chip (violet): purple
#d699b6
- git wt chip (yellow): yellow
#dbbc7f
π§ Lessons
See consolidated lessons in #188 and the Gruvbox PR (#193). The red /
orange collision walk-through from #188 applies more sharply here.
π Links
π― Goal
Add Everforest (Dark Medium β Sainnhe's recommended default) as a
ninth selectable theme via the
theme-set <name>fish switcher.Machinery landed in #185; Gruvbox reference implementation in #193.
Variant pick: Dark Medium. Hard / Soft contrast change
bg/bg_dimonly β accents stay identical. Light variants out of scope(parallel reasoning to #188's deferral).
π¨ Palette (Dark Medium)
#2d353b, bg1#343f44, bg2#3d484d, bg3#475258, bg4#4f585e#d3c6aa, grey0#7a8478, grey1#859289, grey2#9da9a0#e67e80, orange#e69875, yellow#dbbc7f, green#a7c080, aqua#83c092, blue#7fbbb3, purple#d699b6#a7c080, statusline2 (blue)#7fbbb3, statusline3 (red)#e67e80π Architecture
Machinery is settled (#185). Slot in following the Gruvbox shape (#193).
π οΈ Work breakdown
βοΈ Tradeoff
Win: green-tinted warm palette, often described as "Gruvbox's
gentler cousin". Lower-contrast than Gruvbox so easier on the eyes for
long sessions; distinct identity through its green-leaning fg
(
#d3c6aa).Loss: Everforest's red
#e67e80and orange#e69875are evencloser in hue than Gruvbox's (
#cc241dred vs#d65d0eorange).The unique-accent rule walk-through from #188 applies more sharply
here β strongly consider widening the PR chip's separation.
π¦ Open questions
#e69875, red#e67e80defined butunused on the bar β no visible collision, just a tight palette.
#83c092to widen thepalette spread and free up orange/red for future pins.
Mocha / Dracula / Gruvbox's positional semantic); revisit if the
visual check after merge reads as flat.
(
@color_light_fg = '#2d353b'bg0). Same logic as Gruvbox.Vimscript port. `neanias/everforest-nvim` is a Lua reimplementation
with treesitter-native highlights β slightly faster startup, more
granular config. Default to author's canonical for fidelity; revisit
if startup time matters.
recommended default. Hard is most popular among Gruvbox refugees who
want more contrast; Soft for low-light workflows. Pick Medium for v1.
including aqua):
#7fbbb3#a7c080#e69875(see collision note above)#d699b6#dbbc7fπ§ Lessons
See consolidated lessons in #188 and the Gruvbox PR (#193). The red /
orange collision walk-through from #188 applies more sharply here.
π Links