A colorscheme manager and switcher designed for Neovim written in Lua. Inspired by Themery.nvim and Lazy.nvim.
Use the package manager of your choice to install Theminify:
{
'lmantw/themify.nvim',
lazy = false,
priority = 999,
config = {}
}
use {
'lmantw/themify.nvim',
config = {}
}
local themify_path = vim.fs.joinpath(vim.fn.stdpath('data'), 'themify')
if not vim.loop.fs_stat(themify_path) then
vim.fn.system({
'git', 'clone',
'https://github.com/LmanTW/themify.nvim.git',
themify_path,
})
end
vim.opt.rtp:prepend(themify_path)
require('themify').setup()
The configuration for Themify is really easy and stright forward, just call the setup
function (or use the config
option in your package manager) and add the colorschemes you want to install / manage:
require('themery').setup({
-- Your list of colorschemes.
'folke/tokyonight.nvim',
'Yazeed1s/minimal.nvim',
{
'sho-87/kanagawa-paper.nvim',
branch = 'master'
},
-- Built-in colorschemes are also supported.
-- (Also works with any colorschemes that are installed via other plugin manager, just make sure the colorscheme is loaded before Themify is loaded.)
'default'
})
[!IMPORTANT] The colorschemes will not be installed automatically, please use the command
:Themify
to open the interface, then pressI
to install all the colorschemes.
{
async = false,
-- Enable this would load the colorscheme asynchronously, which might improve your startup time.
{
'folke/tokyonight.nvim',
branch = 'main',
before = function()
-- The function run before the colorscheme is loaded.
end,
after = function()
-- The function run after the colorscheme is loaded.
end,
-- A colorscheme can have multiple themes, you can use the options below to only show the themes you want.
whitelist = {'tokyonight-night', 'tokyonight-day'},
blacklist = {}
}
}
Themify has a colorscheme database that can be access through the Explore page, you can search through the themes by using the brightness
and temperature
options.
[!TIP] You can add a colorscheme to the database by opening an issue.