The two slots
The slots are independent. Dracula in dark and Solarized Light in light is a valid combination — and it is how most people end up using it.
A theme only goes into the slot for its own base. A theme with base
dark never occupies the light slot, and vice versa. If a slot points at a theme that vanished (you deleted the .json) or that has the wrong base, it falls back to the built-in for that base — TYBA Dark or TYBA Light. You are never left without a theme.The mode
Settings → Appearance → Color mode (⌘, on macOS, Ctrl+, on Windows and Linux). Three options:
On System, the switch is live: the operating system flips to light at dusk and TYBA flips with it — no restart, no reopening the window.
You can also do it from the command palette (
⌘P / Ctrl+Shift+P), under Theme: Switch theme to Dark / Light / System. The palette only offers the two modes you are not using.
Clicking a theme from another base changes the mode too
You are in dark, you click GitHub Light. TYBA writes GitHub Light into the light slot and switches the mode to Light. There is no way to “save a light theme for later” by clicking — clicking is using. This includes leaving System: if you are on System (with the OS in dark) and click a light theme, the mode stops being System and becomes a fixed Light. To follow the system again, pick System in Color mode. The other direction is painless: in dark, clicking a dark theme only swaps the slot. The mode does not move.What gets saved
The mode and both slots live in TYBA’s database (tyba.db), not in a text file. Close and reopen, and everything comes back as it was.
There is a cache in the embedded webview, but it exists only so the app doesn’t flash white for a frame at startup. The database is the authority.
What does not exist
See also
The themes
The 18 built-ins, and what changes beyond color.
Import a theme
The JSON format, the rules, and the limits.