ZenGarden is a color scheme for neovim that tries to be calm and relaxing, while still retaining some important properties from color theory (contrast, uniform lightness, uniform chromma).
This colorscheme is created with lush, and therefore depends on it.
use { "tobi-wan-kenobi/zengarden",
requires = "rktjmp/lush.nvim",
config = function()
vim.cmd [[ colorscheme zengarden ]]
end
}
Optionally, you can call setup()
on the module to set parameters:
use { "tobi-wan-kenobi/zengarden",
requires = "rktjmp/lush.nvim",
config = function()
require("zengarden").setup({
variant = "yellow"
})
vim.cmd [[ colorscheme zengarden ]]
end
}
Currently, you can set the following parameters:
variant
: sets highlight colors for float, menu, etc. to one of:yellow
(the default),cyan
,orange
,magenta
,green
italics
: whether italics should be used (default) or not, boolean value
- Chroma = 0.1
- Lightness = 65 (73 for light)
- Chroma = 0.1
- Lightness = 50 (60 for light)
My attempt was to create a colorscheme by following color theory (to the extent I understand it).
After some research, I settled on OKLCH, which defines "perceived" lightness and chroma (roughly saturation). Keeping lightness and chroma consistent across accent colors should result in a harmonous over appearance.
Additionally, care was taken to keep contrast above the WCAG recommendation of 4.5:1 (except for the light colors of the light color theme, where contrast is a bit lower than that).