Neovim themes derived from Savitsky Museum paintings
savitsky.nvim is a Neovim theme plugin built on top of
catppuccin/nvim.
It provides curated color palettes inspired by paintings from the Savitsky Museum and allows runtime theme switching via simple Neovim commands.
This plugin does not define its own colorscheme. Instead, it dynamically configures Catppuccin using palette and highlight overrides.
{
"samesense/savitsky.nvim",
dependencies = {
"catppuccin/nvim",
},
}
use {
"samesense/savitsky.nvim",
requires = {
"catppuccin/nvim",
},
}
Plug 'catppuccin/nvim'
Plug 'samesense/savitsky.nvim'
savitsky.nvim is command-driven. No manual Lua setup is required.
:SavitskyList
Prints all registered Savitsky themes.
:SavitskyLoad bull
This command:
Tab completion is supported:
:SavitskyLoad <Tab>
Each theme corresponds to a palette inspired by a Savitsky Museum painting:
All themes currently target the Catppuccin mocha flavour with custom palette overrides.
Each theme entry defines:
mocha) When you run:
:SavitskyLoad <theme>
The plugin performs:
catppuccin.setup() with theme-specific overrides :colorscheme catppuccin-mochaNo restart is required.
If you want a default Savitsky theme when Neovim starts:
vim.cmd("SavitskyLoad forest")
Place this after plugin initialization.
savitsky.nvim
├── plugin
│ └── savitsky.lua # user commands
├── lua
│ └── savitsky
│ ├── init.lua # theme loader
│ ├── registry.lua # theme definitions
│ ├── palettes # palette files
│ └── highlights
│ └── default.lua
Contributions are welcome:
Open an issue or submit a pull request.
MIT License — see LICENSE.
Inspired by the Savitsky Museum’s collection of Central Asian and avant-garde art.