🎨 Automatic Colorscheme

- Store/restore the colorscheme when changed
- Falls back on $KITTY_THEME and then the default catppuccin-frappe
This commit is contained in:
2024-07-14 00:38:52 -04:00
parent 803b2712bf
commit bf1be126fa
3 changed files with 26 additions and 6 deletions
+2 -1
View File
@@ -2,4 +2,5 @@ lazy-lock.json
.luarc.json
.neoconf.json
lazyvim.json
debug/
.colorscheme
debug/
+13
View File
@@ -9,6 +9,19 @@ vim.api.nvim_create_user_command("Q", function()
vim.cmd.qall()
end, { force = true })
-- ------------------------------ Auto-Commands --------------------------------
-- Autosave Colorscheme
vim.api.nvim_create_autocmd("ColorScheme", {
desc = "Store colorscheme name",
callback = function()
print("colorscheme:", vim.g.colors_name)
vim.fn.writefile(
{ vim.g.colors_name },
vim.fn.stdpath("config") .. "/.colorscheme"
)
end,
})
-- --------------------------------- Keymaps -----------------------------------
local wk = require("which-key")
wk.add({
+11 -5
View File
@@ -2,14 +2,20 @@
-- ---------------------------------- Style ------------------------------------
-- -----------------------------------------------------------------------------
-- Get the kitty theme
if os.getenv("KITTY_THEME") then
KITTY_THEME = os.getenv("KITTY_THEME")
-- Restore Colorscheme
if vim.fn.filereadable(vim.fn.stdpath("config") .. "/.colorscheme") == 1 then
-- Load the stored colorscheme
STORED_THEME = vim.fn.readfile(vim.fn.stdpath("config") .. "/.colorscheme")[1]
else
-- Get the kitty theme
if os.getenv("KITTY_THEME") then
KITTY_THEME = os.getenv("KITTY_THEME")
end
end
-- Apply the colorscheme
vim.cmd.colorscheme(KITTY_THEME or "catppuccin-frappe")
vim.cmd.colorscheme(STORED_THEME or KITTY_THEME or "catppuccin-frappe")
-- Set GUI font
vim.opt.guifont = "Iosevka:#e-subpixelantialias:h12"
vim.g.have_nerd_font = true
vim.g.have_nerd_font = true