pojokcodeid.nvim-lazy/lua/plugins/colorscheme.lua

304 lines
6 KiB
Lua
Raw Normal View History

2023-03-04 11:53:44 +07:00
local gruvbox = true
local dracula = false
local tokyonight = false
local nord = false
local sonokai = false
local lunar = false
local material = false
local onedark = false
local catppuccin = false
2023-03-05 10:49:03 +07:00
local nightfox = false
local sonokai_style = "default"
local material_style = "oceanic"
local onedark_style = "dark"
2023-03-04 11:53:44 +07:00
_G.switch = function(param, case_table)
local case = case_table[param]
if case then
return case()
end
local def = case_table["default"]
return def and def() or nil
end
local data_exists, config = pcall(require, "core.config")
2023-03-04 11:53:44 +07:00
if data_exists then
if config.colorscheme ~= nil then
local color = config.colorscheme
2023-03-04 11:53:44 +07:00
switch(color, {
["tokyonight"] = function()
gruvbox = false
tokyonight = true
end,
["tokyonight-night"] = function()
gruvbox = false
tokyonight = true
end,
["tokyonight-storm"] = function()
gruvbox = false
tokyonight = true
end,
["tokyonight-day"] = function()
gruvbox = false
tokyonight = true
end,
["tokyonight-moon"] = function()
gruvbox = false
tokyonight = true
end,
["sonokai"] = function()
gruvbox = false
sonokai = true
2023-03-05 10:49:03 +07:00
sonokai_style = "default"
end,
["sonokai_atlantis"] = function()
gruvbox = false
sonokai = true
sonokai_style = "atlantis"
end,
["sonokai_andromeda"] = function()
gruvbox = false
sonokai = true
sonokai_style = "andromeda"
end,
["sonokai_shusia"] = function()
gruvbox = false
sonokai = true
sonokai_style = "shusia"
end,
["sonokai_maia"] = function()
gruvbox = false
sonokai = true
sonokai_style = "maia"
end,
["sonokai_espresso"] = function()
gruvbox = false
sonokai = true
sonokai_style = "espresso"
2023-03-04 11:53:44 +07:00
end,
["material"] = function()
gruvbox = false
material = true
end,
2023-03-05 10:49:03 +07:00
["material_deepocean"] = function()
gruvbox = false
material = true
material_style = "deep ocean"
end,
["material_palenight"] = function()
gruvbox = false
material = true
material_style = "palenight"
end,
["material_lighter"] = function()
gruvbox = false
material = true
material_style = "lighter"
end,
["material_darker"] = function()
gruvbox = false
material = true
material_style = "darker"
end,
2023-03-04 11:53:44 +07:00
["onedark"] = function()
gruvbox = false
onedark = true
end,
2023-03-05 10:49:03 +07:00
["onedark_darker"] = function()
gruvbox = false
onedark = true
onedark_style = "darker"
end,
["onedark_cool"] = function()
gruvbox = false
onedark = true
onedark_style = "cool"
end,
["onedark_deep"] = function()
gruvbox = false
onedark = true
onedark_style = "deep"
end,
["onedark_warm"] = function()
gruvbox = false
onedark = true
onedark_style = "warm"
end,
["onedark_warmer"] = function()
gruvbox = false
onedark = true
onedark_style = "warmer"
end,
["onedark_light"] = function()
gruvbox = false
onedark = true
onedark_style = "light"
end,
2023-03-04 11:53:44 +07:00
["lunar"] = function()
gruvbox = false
lunar = true
end,
["nord"] = function()
gruvbox = false
nord = true
end,
["catppuccin"] = function()
gruvbox = false
catppuccin = true
end,
2023-03-05 10:49:03 +07:00
["catppuccin-latte"] = function()
gruvbox = false
catppuccin = true
end,
["catppuccin-frappe"] = function()
gruvbox = false
catppuccin = true
end,
["catppuccin-macchiato"] = function()
gruvbox = false
catppuccin = true
end,
["catppuccin-mocha"] = function()
gruvbox = false
catppuccin = true
end,
2023-03-04 11:53:44 +07:00
["dracula"] = function()
gruvbox = false
dracula = true
end,
2023-03-05 10:49:03 +07:00
["nightfox"] = function()
gruvbox = false
nightfox = true
end,
["dayfox"] = function()
gruvbox = false
nightfox = true
end,
["dawnfox"] = function()
gruvbox = false
nightfox = true
end,
["duskfox"] = function()
gruvbox = false
nightfox = true
end,
["nordfox"] = function()
gruvbox = false
nightfox = true
end,
["terafox"] = function()
gruvbox = false
nightfox = true
end,
["carbonfox"] = function()
gruvbox = false
nightfox = true
end,
2023-03-04 11:53:44 +07:00
["gruvbox-baby"] = function()
gruvbox = true
end,
default = function()
gruvbox = true
end,
})
end
end
2023-03-04 16:26:54 +07:00
local transparent = false
local transparent_mode = config.transparent_mode
2023-03-04 16:26:54 +07:00
if transparent_mode ~= nil then
if transparent_mode == 1 then
transparent = true
end
end
2023-03-04 11:53:44 +07:00
return {
-- color scheme
{ "luisiacc/gruvbox-baby", lazy = true, enabled = gruvbox },
2023-03-04 18:36:14 +07:00
{
"Mofiqul/dracula.nvim",
enabled = dracula,
config = function()
require("dracula").setup({
colors = {
2023-03-04 18:47:58 +07:00
purple = "#FCC76A",
2023-03-04 19:40:13 +07:00
menu = "#282A36",
2023-03-04 18:36:14 +07:00
},
transparent_bg = transparent,
})
end,
},
2023-03-04 12:30:04 +07:00
{
"folke/tokyonight.nvim",
enabled = tokyonight,
config = function()
require("user.tokyonight")
end,
},
2023-03-04 18:36:14 +07:00
{
"shaunsingh/nord.nvim",
enabled = nord,
config = function()
vim.g.nord_disable_background = transparent
require("nord").set()
end,
},
2023-03-05 10:49:03 +07:00
{
"sainnhe/sonokai",
enabled = sonokai,
config = function()
vim.g.sonokai_style = sonokai_style
end,
},
2023-03-04 11:53:44 +07:00
{ "lunarvim/lunar.nvim", enabled = lunar },
{
"marko-cerovac/material.nvim",
enabled = material,
config = function()
2023-03-05 10:49:03 +07:00
vim.g.material_style = material_style
2023-03-04 11:53:44 +07:00
require("material").setup({
lualine_style = "stealth",
2023-03-04 16:26:54 +07:00
disable = {
background = transparent,
},
2023-03-04 11:53:44 +07:00
})
end,
},
{
"navarasu/onedark.nvim",
enabled = onedark,
priority = 1000,
config = function()
-- Lua
require("onedark").setup({
2023-03-05 10:49:03 +07:00
style = onedark_style,
2023-03-04 16:26:54 +07:00
transparent = transparent,
lualine = {
transparent = transparent,
},
2023-03-04 11:53:44 +07:00
})
require("onedark").load()
end,
},
{
"catppuccin/nvim",
enabled = catppuccin,
name = "catppuccin",
init = function()
require("user.catppuccin")
end,
},
2023-03-05 10:49:03 +07:00
{
"EdenEast/nightfox.nvim",
enabled = nightfox,
config = function()
require("nightfox").setup({
options = {
transparent = transparent,
},
})
end,
},
2023-03-04 11:53:44 +07:00
}