dotfiles/private_dot_config/kitty
Anton Volnuhin addce489b4 kitty: remember the light/dark mode across restarts
kitty gives *-theme.auto.conf priority over everything -- includes and
even --override -- and has no option to stop following the OS. So the
only way to start in a chosen mode is to control what those files
contain. Make them generated:

  themes/{light,dark,no-preference}.conf  canonical, the real themes
  theme-mode                              auto | light | dark
  apply-theme-mode.sh                      writes the three .auto.conf

Under `auto` each appearance keeps its own theme, so kitty follows the
OS as before. Pinned, all three get the pinned theme, so kitty starts in
it whatever the OS says and a config reload no longer resets it.

`theme` now records the mode and reloads instead of calling set-colors,
which is why the setting survives restarts. A bare `theme` records
`auto` rather than pinning when the toggle lands on the macOS
appearance, so nothing is pinned unless it actually differs.

The kitten shim hashes the automatic theme files before running `kitten
themes` and copies whichever changed into themes/, so picking a new
light theme while pinned to dark is kept and applied on the next switch.
Covered by tests/test_theme_mode.sh.

conf.d/kitty_theme.fish is gone: theme-mode is now the source of truth,
so the universal-variable tracker it maintained is redundant.
2026-08-06 01:49:45 +03:00
..
private_tests kitty: remember the light/dark mode across restarts 2026-08-06 01:49:45 +03:00
themes kitty: remember the light/dark mode across restarts 2026-08-06 01:49:45 +03:00
kitty.app.icns dark kitten icon for kitty 2026-04-06 14:46:04 +03:00
kitty.conf tab strategy + font size 15 2026-07-28 17:17:48 +03:00
private_current-theme.conf Initial commit 2023-04-30 01:21:51 +03:00
private_dark-theme.auto.conf Sync Kitty automatic themes from maxwell 2026-07-27 22:44:57 +03:00
private_executable_apply-theme-mode.sh kitty: remember the light/dark mode across restarts 2026-08-06 01:49:45 +03:00
private_executable_repair-auto-themes.sh fix(kitty): preserve tab styling across themes 2026-07-28 04:53:48 +03:00
private_light-theme.auto.conf fish: add theme command to toggle kitty light/dark 2026-08-06 01:15:47 +03:00
private_no-preference-theme.auto.conf Sync Kitty automatic themes from maxwell 2026-07-27 22:44:57 +03:00
symlink_theme.conf.tmpl template symlinks for portability, remove karabiner debug rule 2026-03-02 19:25:40 +03:00
tab_bar.py fix(kitty): restore per-host tab colors in the custom tab bar 2026-08-06 01:31:40 +03:00
theme-mode kitty: remember the light/dark mode across restarts 2026-08-06 01:49:45 +03:00