Sway appearance
Window borders, gaps and the focus color ramp.
Borders and gaps
- Border style:
default_border pixel 5— a frame only, no titlebar - Inner gaps: 5px, outer gaps: 5px
smart_gaps on— a lone window on a workspace gets no gaps- Exceptions: the
yadMic Gain / Out Gain sliders pinborder pixel 2
Gaps show the wallpaper, so every border is drawn against wall_light.png
(average #547A7F, range #356E7B…#6E9AA1). Border colors have to clear
that range to be visible.
Focus color ramp
Perceived lightness (L) rises monotonically with focus, so the brightest frame on the desktop is always the focused window:
class frame L meaning
---------------------------------------------------------------
focused #cbdcdb 215 the one window you are in
focused_inactive #4F7A84 110 last focus on another output
unfocused #0f1c1f 24 everything else
urgent #8BB2B5 167 demanding attention
focused is near-white because it is the only palette color that clears the
wallpaper. focused_inactive sits on the wallpaper tone deliberately — the
demoted tier should blend into the gaps.
The five color fields
client.<class> <border> <background> <text> <indicator> <child_border>
child_border— the visible frame underdefault_border pixel. This is the field that does the work. Omit it and it silently inheritsbackground.text/background— only render on tabbed and stacked titlebars ($mod+w/$mod+s). Invisible withpixelborders.border— the 1px outline around a titlebar. Also invisible withpixel.indicator— marks the edge where the next split will open, on the focused container only. Set to#8BB2B5, a teal notch on the near-white frame.
Tuning
- Frame too loud:
default_border pixel 5→pixel 3 - Focus still ambiguous: set
focused_inactiveidentical tounfocused, so the desktop has two states instead of three - Need a much stronger cue:
default_border normal 3turns on titlebars everywhere — a filled colored bar with text, at ~25px per window
Palette
There is no shared colorscheme file. The palette is hand-duplicated across
.config/sway/config, .config/waybar/style.css, .config/mako/config and
.config/fuzzel/fuzzel.ini. The nearest thing to a canonical definition is
the @define-color block at the top of waybar’s style.css:
bg-dark #0f1c1f background
fg-light #ffffff foreground text
primary #4F7A84 primary accent
secondary #669299 secondary accent
tertiary #8BB2B5 tertiary / highlight
muted #8e9a99 muted / disabled
#cbdcdb is sway-only. #669299 is not used by sway. Changing a color means
editing all four files.