Documentation
Themes
Six palette-true flagship themes, live-reloaded from config.toml, plus how to write your own.
toowl ships sixteen themes — all originals — and
starts dark by default (toowl_ink). Every swatch below is
rendered from the
actual palette in toowl-theme — these are the real
colors, not screenshots. Set one in ~/.config/toowl/config.toml
and it applies the instant you save (no restart — the config watcher
hot-reloads in about 150 ms).
[appearance]
theme = "toowl_moonlight" The gallery
Each card shows a tiny terminal painted with that theme's background,
foreground, cursor, selection, and ANSI colors. The mono name under each is
exactly what you write after theme =.
Switching themes
- Edit the file — change
themein[appearance]and save; the live window restyles immediately. - Command palette — Cmd+Shift+P (macOS) / Ctrl+Shift+P and search the theme name.
- Settings — Cmd+, / Ctrl+, opens the visual settings panel.
by_name ignores
case and separators and accepts the short form — moonlight,
toowl_moonlight, and Toowl-Moonlight all resolve
to the same theme. Names outside the set do not resolve: toowl
logs a warning and falls back to toowl_ink rather than
silently substituting a theme you didn't pick.
Light themes
Six are light. toowl_linen is the flagship — Ink's palette at
daylight polarity — and toowl_noon is a literal white
(#ffffff) ground for projectors and screen sharing, where any
tint reads as a smudge. toowl_mist is a softer cool grey for
bright rooms without the glare, and toowl_parchment,
toowl_dawn and toowl_snowy round out the warm and
cool ends. toowl's window chrome and overlays tint to the active theme, so a
light theme reads cleanly in daylight while the dark ones stay easy at night.
Bring your own
A theme is just a foreground, background, cursor, selection, link color, and
16 ANSI colors. The built-ins live as pub static values in
crates/toowl-theme/src/lib.rs; copy one, change the hex values,
and register it. Pro builds can also register extra themes at startup via
register_extra_theme without forking. Full per-field reference is
on the Configuration page.