Go to file
Anton Volnuhin 9e2667f8fe kitty: capture theme choices however the kitten was launched
Saving a theme stopped sticking: the choice was captured only by the fish
`kitten` wrapper, so `kitty +kitten themes`, a keybinding or any non-fish
shell wrote <appearance>-theme.auto.conf directly and the next regeneration
overwrote it from theme-modes. The dark slot had already lost a pick that
way -- dark-theme.auto.conf held #0d0f31 while canonical dark said #2b2c2e.

Move the capture into apply-theme-mode.sh, which every path runs. It records
a cksum of each generated file after the repair step; on the next run a file
whose checksum differs was written by something else, so it becomes canonical
for that appearance. With no state recorded yet nothing is adopted, so a
first run cannot mistake a pinned mode's duplicated files for real choices.

The fish wrapper keeps only its useful part: re-apply the mode and reload so
the change shows at once.

theme-modes/dark.conf is the recovered #0d0f31 (1984). Covered by a new case
in tests/test_theme_mode.sh that writes the theme file with no shell involved.
2026-08-06 04:42:59 +03:00
dot_1password template symlinks for portability, remove karabiner debug rule 2026-03-02 19:25:40 +03:00
dot_claude Track agent CLI configs, with codex secrets externalized 2026-08-06 02:23:49 +03:00
dot_codex Track agent CLI configs, with codex secrets externalized 2026-08-06 02:23:49 +03:00
dot_grok Track agent CLI configs, with codex secrets externalized 2026-08-06 02:23:49 +03:00
dot_kimi Track agent CLI configs, with codex secrets externalized 2026-08-06 02:23:49 +03:00
dot_kimi-code Track agent CLI configs, with codex secrets externalized 2026-08-06 02:23:49 +03:00
dot_pi/agent Track agent CLI configs, with codex secrets externalized 2026-08-06 02:23:49 +03:00
dot_reasonix Track agent CLI configs, with codex secrets externalized 2026-08-06 02:23:49 +03:00
dot_terminfo terminfo: cursor reset restores terminal default (beam), not block 2026-06-12 01:28:40 +03:00
dot_tmux/plugins nova things 2026-03-02 22:17:26 +03:00
private_dot_config kitty: capture theme choices however the kitten was launched 2026-08-06 04:42:59 +03:00
private_dot_local/bin ping: check IPv6 is actually usable, and split ping4 per platform 2026-08-06 03:38:12 +03:00
private_Library/private_Application Support/private_Arc back to kitty, uv, small changes in karabiner 2025-03-02 01:17:58 +03:00
.chezmoiexternal.toml restructure repo, fix fish config, remove vendored repos 2026-03-02 19:11:10 +03:00
.chezmoiignore kitty: capture theme choices however the kitten was launched 2026-08-06 04:42:59 +03:00
.gitignore add .gitignore to exclude nvimlog and pycache from repo 2026-03-03 23:30:32 +03:00
dot_gitconfig Small combined changes 2026-07-27 20:23:32 +03:00
dot_tmux.conf tmux: use session name as kitty tab title, with @host over SSH 2026-06-12 01:12:04 +03:00
dot_zshrc Small combined changes 2026-07-27 20:23:32 +03:00
run_after_kitty-theme-mode.sh kitty: put the grok themes in the picker, move the mode store aside 2026-08-06 03:24:48 +03:00
run_onchange_after_install_main_deps.sh.tmpl Modernize Neovim treesitter bootstrap 2026-03-31 01:45:02 +03:00
run_onchange_after_z_configure_tide.sh.tmpl add tide-reset function, fix treesitter config for stable nvim 2026-03-04 18:13:21 +03:00