Appearance
Graphical colors and font are resolved once when the overlay opens. Edit $XDG_CONFIG_HOME/crabture/appearance.toml (typically ~/.config/crabture/appearance.toml) and reopen crabture to apply changes.
Capture output, mode, format and location live separately in $XDG_CONFIG_HOME/crabture/preferences and are never rewritten by appearance loading.
[appearance]theme_file = "~/themes/swatches.toml"
# Optional per-app overrides:# [colors]# accent = "#80D4FF"# [font]# family = "JetBrainsMono Nerd Font Mono"# path = "/usr/share/fonts/TTF/JetBrainsMonoNerdFont-Regular.ttf"Without that file, crabture keeps the built-in dark toolbar palette and bundled Roboto Medium. An explicit [appearance] theme_file opts into a Swatches v1 theme. Relative paths resolve against the appearance file’s directory; ~/ expands to $HOME.
Swatches role mapping
Section titled “Swatches role mapping”| Shared role | crabture mapping |
|---|---|
colors.background |
Toolbar panel RGB (native panel alpha kept) |
colors.foreground |
Inactive toolbar text/icon RGB (role alpha kept); selection border |
colors.accent |
Capture action fill, window-highlight border/fill |
colors.muted |
Secondary labels and shortcut hints |
colors.selection_background |
Active mode fill; hover wash |
colors.selection_foreground |
Active mode labels, shortcuts, and icons |
font.family |
Loaded via fc-match after an explicit [font] path; bundled Roboto if missing |
Capture label and hint colors are not a shared role. crabture picks black or white from the accent’s luminance, so the action stays readable when accent and the selection pair differ.
Precedence and errors
Section titled “Precedence and errors”- Explicit
[colors]/[font]fields always win, even when they equal an old default. - Overlay dimming, radii, and spacing stay application-owned.
- A missing or invalid
theme_fileprints a warning to stderr and is ignored; crabture still opens and keeps valid overrides. - Unknown keys in
appearance.tomlreject that file and fall back to the built-in appearance.
The same resolved font is used for toolbar measurement, drawing, and pointer hit-testing.