mirror of
https://github.com/pojokcodeid/nvim-lazy.git
synced 2025-06-22 00:49:01 +02:00
534 lines
14 KiB
Lua
534 lines
14 KiB
Lua
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
|
|
local nightfox = false
|
|
|
|
local sonokai_style = "default"
|
|
local material_style = "oceanic"
|
|
local onedark_style = "dark"
|
|
|
|
_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")
|
|
if data_exists then
|
|
if config.colorscheme ~= nil then
|
|
local color = config.colorscheme
|
|
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
|
|
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"
|
|
end,
|
|
["material"] = function()
|
|
gruvbox = false
|
|
material = true
|
|
end,
|
|
["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,
|
|
["onedark"] = function()
|
|
gruvbox = false
|
|
onedark = true
|
|
end,
|
|
["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,
|
|
["lunar"] = function()
|
|
gruvbox = false
|
|
lunar = true
|
|
end,
|
|
["nord"] = function()
|
|
gruvbox = false
|
|
nord = true
|
|
end,
|
|
["catppuccin"] = function()
|
|
gruvbox = false
|
|
catppuccin = true
|
|
end,
|
|
["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,
|
|
["dracula"] = function()
|
|
gruvbox = false
|
|
dracula = true
|
|
end,
|
|
["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,
|
|
["gruvbox-baby"] = function()
|
|
gruvbox = true
|
|
end,
|
|
default = function()
|
|
gruvbox = true
|
|
end,
|
|
})
|
|
end
|
|
end
|
|
|
|
local transparent = false
|
|
local transparent_mode = config.transparent_mode
|
|
if transparent_mode ~= nil then
|
|
if transparent_mode == 1 then
|
|
transparent = true
|
|
end
|
|
end
|
|
|
|
return {
|
|
-- color scheme
|
|
{
|
|
"luisiacc/gruvbox-baby",
|
|
lazy = true,
|
|
enabled = gruvbox,
|
|
config = function()
|
|
local colors = require("gruvbox-baby.colors").config()
|
|
vim.g.gruvbox_baby_highlights = {
|
|
StatusLine = { fg = colors.fg, bg = "NONE" },
|
|
}
|
|
end,
|
|
},
|
|
{
|
|
"Mofiqul/dracula.nvim",
|
|
enabled = dracula,
|
|
config = function()
|
|
local is_transparent = false
|
|
local colors = require("dracula").colors()
|
|
if is_transparent then
|
|
colors = {
|
|
bg = "none",
|
|
}
|
|
end
|
|
require("dracula").setup({
|
|
colors = {
|
|
-- purple = "#FCC76A",
|
|
menu = colors.bg,
|
|
},
|
|
italic_comment = true,
|
|
lualine_bg_color = colors.bg,
|
|
overrides = {
|
|
Keywords = { fg = colors.cyan, italic = true },
|
|
-- Function = { fg = colors.yellow, italic = true },
|
|
["@keyword"] = { fg = colors.pink, italic = true },
|
|
["@keyword.function"] = { fg = colors.cyan, italic = true },
|
|
["@function"] = { fg = colors.green, italic = true },
|
|
["@tag.attribute"] = { fg = colors.green, italic = true },
|
|
NvimTreeFolderIcon = { fg = "#6776a7" },
|
|
CmpItemAbbr = { fg = "#ABB2BF" },
|
|
CmpItemKind = { fg = "#ABB2BF" },
|
|
CmpItemAbbrDeprecated = { fg = "#ABB2BF" },
|
|
CmpItemAbbrMatch = { fg = "#8BE9FD" },
|
|
htmlLink = { fg = "#BD93F9", underline = false },
|
|
Underlined = { fg = "#8BE9FD" },
|
|
NvimTreeSpecialFile = { fg = "#FF79C6" },
|
|
MatchParen = { fg = "#F8F8F2" },
|
|
SpellBad = { fg = "#FF6E6E" },
|
|
illuminatedWord = { bg = "#3b4261" },
|
|
illuminatedCurWord = { bg = "#3b4261" },
|
|
IlluminatedWordText = { bg = "#3b4261" },
|
|
IlluminatedWordRead = { bg = "#3b4261" },
|
|
IlluminatedWordWrite = { bg = "#3b4261" },
|
|
StatusLine = { fg = "#f8f8f2", bg = colors.bg },
|
|
StatusLineTerm = { fg = "#f8f8f2", bg = colors.bg },
|
|
BufferLineFill = { bg = colors.bg },
|
|
Pmenu = { fg = colors.white, bg = colors.bg },
|
|
},
|
|
transparent_bg = transparent,
|
|
-- transparent_bg = is_transparent,
|
|
})
|
|
end,
|
|
},
|
|
{
|
|
"folke/tokyonight.nvim",
|
|
enabled = tokyonight,
|
|
config = function()
|
|
require("user.tokyonight")
|
|
end,
|
|
},
|
|
{
|
|
"shaunsingh/nord.nvim",
|
|
enabled = nord,
|
|
config = function()
|
|
vim.g.nord_disable_background = transparent
|
|
require("nord").set()
|
|
end,
|
|
},
|
|
{
|
|
"sainnhe/sonokai",
|
|
enabled = sonokai,
|
|
config = function()
|
|
vim.g.sonokai_style = sonokai_style
|
|
end,
|
|
},
|
|
{ "lunarvim/lunar.nvim", enabled = lunar },
|
|
{
|
|
"marko-cerovac/material.nvim",
|
|
enabled = material,
|
|
config = function()
|
|
local colors = require("material.colors")
|
|
vim.g.material_style = material_style
|
|
require("material").setup({
|
|
lualine_style = "stealth",
|
|
disable = {
|
|
background = transparent,
|
|
},
|
|
plugins = { -- Uncomment the plugins that you use to highlight them
|
|
-- Available plugins:
|
|
"dap",
|
|
-- "dashboard",
|
|
-- "eyeliner",
|
|
"fidget",
|
|
-- "flash",
|
|
-- "gitsigns",
|
|
-- "harpoon",
|
|
-- "hop",
|
|
"illuminate",
|
|
"indent-blankline",
|
|
-- "lspsaga",
|
|
"mini",
|
|
-- "neogit",
|
|
-- "neotest",
|
|
-- "neo-tree",
|
|
-- "neorg",
|
|
"noice",
|
|
"nvim-cmp",
|
|
"nvim-navic",
|
|
"nvim-tree",
|
|
"nvim-web-devicons",
|
|
-- "rainbow-delimiters",
|
|
-- "sneak",
|
|
"telescope",
|
|
-- "trouble",
|
|
"which-key",
|
|
"nvim-notify",
|
|
},
|
|
custom_highlights = {
|
|
BufferLineFill = { bg = colors.bg },
|
|
StatusLine = { fg = "#f8f8f2", bg = colors.bg },
|
|
StatusLineTerm = { fg = "#f8f8f2", bg = colors.bg },
|
|
},
|
|
})
|
|
end,
|
|
},
|
|
{
|
|
"navarasu/onedark.nvim",
|
|
enabled = onedark,
|
|
priority = 1000,
|
|
config = function()
|
|
-- Lua
|
|
require("onedark").setup({
|
|
term_colors = true,
|
|
style = onedark_style,
|
|
colors = {
|
|
bg0 = "#1e222a",
|
|
green = "#98c379",
|
|
gray = "#abb2bf",
|
|
red = "#e06c75",
|
|
purple = "#c678dd",
|
|
yellow = "#e5c07b",
|
|
orange = "#d19a66",
|
|
blue = "#61afef",
|
|
cyan = "#56b6c2",
|
|
bg_d = "$bg",
|
|
bg1 = "#1e222a",
|
|
},
|
|
code_style = {
|
|
comments = "italic",
|
|
keywords = "italic",
|
|
functions = "none",
|
|
strings = "none",
|
|
variables = "none",
|
|
},
|
|
highlights = {
|
|
NoiceCursor = { fg = "$bg0", bg = "$fg" },
|
|
Search = { fg = "$bg0", bg = "$bg_yellow" },
|
|
-- BorderBG = { fg = "#333842" }, -- untuk custom brder color cmp
|
|
-- overide indent line fill color
|
|
NvimTreeNormal = { fg = "$fg", bg = "$bg0" },
|
|
NvimTreeIndentMarker = { fg = "#3E4450" },
|
|
IblIndent = { fg = "#3E4450" },
|
|
-- NvimTreeFolderIcon = { bg = "NONE", fg = "$blue" },
|
|
["@markup.link.url"] = { fg = "$cyan", fmt = "italic" },
|
|
["@text.uri"] = { fg = "$cyan", fmt = "none" },
|
|
["@tag.delimiter"] = { fg = "$gray" },
|
|
["@tag.html"] = { fg = "$red" },
|
|
["@tag.attribute"] = { fg = "$orange", fmt = "italic" },
|
|
["@tag.javascript"] = { fg = "$red" },
|
|
["@constructor.javascript"] = { fg = "$red" },
|
|
["@tag.tsx"] = { fg = "$yellow" },
|
|
["@constructor.tsx"] = { fg = "$yellow" },
|
|
-- NvimTreeFolderIcon = { fg = "#FCC76A" },
|
|
NvimTreeSpecialFile = { fg = "$yellow", fmt = "italic" },
|
|
BufferLineFill = { bg = "$bg0" },
|
|
BufferLineUnfocusedFill = { bg = "$bg0" },
|
|
StatusLine = { fg = "#f8f8f2", bg = "$bg0" },
|
|
StatusLineTerm = { fg = "#f8f8f2", bg = "$bg0" },
|
|
illuminatedWord = { bg = "#3b4261" },
|
|
illuminatedCurWord = { bg = "#3b4261" },
|
|
IlluminatedWordText = { bg = "#3b4261" },
|
|
IlluminatedWordRead = { bg = "#3b4261" },
|
|
IlluminatedWordWrite = { bg = "#3b4261" },
|
|
PmenuSel = { fg = "$fg", bg = "#333842" },
|
|
-- overide lualine fill color with bg color
|
|
LualineNormal = { bg = "$bg0" },
|
|
-- overide lualine_c fill color with bg color
|
|
LualineC = { bg = "$bg0" },
|
|
-- overide lualine_x fill color with bg color
|
|
LualineX = { bg = "$bg0" },
|
|
-- overide which-key fill color with bg color
|
|
WhichKey = { bg = "$bg0" },
|
|
-- overide which-key fill color with bg color
|
|
WhichKeySeperator = { bg = "$bg0" },
|
|
-- overide which-key fill color with bg color
|
|
WhichKeyDesc = { bg = "$bg0" },
|
|
-- overide which-key fill color with bg color
|
|
WhichKeyFloat = { bg = "$bg0" },
|
|
-- overide which-key fill color with bg color
|
|
WhichKeyValue = { bg = "$bg0" },
|
|
-- overide which-key fill color with bg color
|
|
WhichKeyBorder = { bg = "$bg0" },
|
|
-- overide Lazy fill color with bg color
|
|
-- LazyNormal = { bg = "$bg0" },
|
|
-- -- overide lazy background color with bg color
|
|
-- LazyBackground = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyH1 = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyH2 = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyH3 = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyH4 = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyH5 = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyH6 = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyButton = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyButtonActive = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazySpecial = { bg = "$bg0" },
|
|
-- -- overide Lazy fill color with bg color
|
|
-- LazyProgress = { bg = "$bg0" },
|
|
-- Pmenu = { fg = "$fg", bg = "$bg0" },
|
|
CursorLine = { bg = "#333842" },
|
|
Cursor = { fg = "$bg0", bg = "$fg" }, -- character under the cursor
|
|
lCursor = { fg = "$bg0", bg = "$fg" }, -- the character under the cursor when |language-mapping| is used (see 'guicursor')
|
|
CursorIM = { fg = "$bg0", bg = "$fg" }, -- like Cursor, but used when in IME mode |CursorIM|
|
|
CursorColumn = { bg = "#333842" }, -- Screen-column at the cursor, when 'cursorcolumn' is set.
|
|
-- Visual = { bg = "$orange" },
|
|
DiffText = { bg = "$orange" },
|
|
DiffAdd = { bg = "#595d65" },
|
|
-- UfoPreviewNormal = { fg = "#373d48", bg = "$bg0" },
|
|
-- UfoPreviewBorder = { fg = "#373d48", bg = "$bg0" },
|
|
-- UfoPreviewCursorLine = { fg = "#373d48", bg = "$bg0" },
|
|
},
|
|
transparent = transparent,
|
|
lualine = {
|
|
transparent = true,
|
|
},
|
|
})
|
|
require("onedark").load()
|
|
end,
|
|
},
|
|
{
|
|
"catppuccin/nvim",
|
|
enabled = catppuccin,
|
|
name = "catppuccin",
|
|
init = function()
|
|
require("user.catppuccin")
|
|
end,
|
|
},
|
|
{
|
|
"EdenEast/nightfox.nvim",
|
|
enabled = nightfox,
|
|
config = function()
|
|
local palette = require("nightfox.palette").load("nightfox")
|
|
local Color = require("nightfox.lib.color")
|
|
local bg = Color.from_hex(palette.bg1)
|
|
require("nightfox").setup({
|
|
options = {
|
|
terminal_colors = true,
|
|
transparent = transparent,
|
|
styles = { -- Style to be applied to different syntax groups
|
|
comments = "italic", -- Value is any valid attr-list value `:help attr-list`
|
|
conditionals = "italic",
|
|
constants = "NONE",
|
|
functions = "NONE",
|
|
keywords = "italic",
|
|
numbers = "NONE",
|
|
operators = "NONE",
|
|
strings = "NONE",
|
|
types = "NONE",
|
|
variables = "NONE",
|
|
},
|
|
},
|
|
palettes = {
|
|
all = {
|
|
bg0 = palette.bg1,
|
|
bg = palette.bg1,
|
|
},
|
|
},
|
|
specs = {},
|
|
groups = {
|
|
all = {
|
|
-- overide bufferline fill color
|
|
BufferLineFill = { bg = palette.bg1 },
|
|
BufferLineUnfocusedFill = { bg = palette.bg },
|
|
-- overide nvimtree fill color with bg color
|
|
NvimTreeNormal = { bg = palette.bg },
|
|
NvimTreeWinSeparator = {
|
|
fg = palette.bg0,
|
|
},
|
|
Underlined = { style = "NONE" }, -- overide statusline fill color with bg color
|
|
StatusLine = { bg = "NONE" },
|
|
StatusLineTerm = { bg = palette.bg },
|
|
-- overide lualine fill color with bg color
|
|
LualineNormal = { bg = palette.bg },
|
|
Pmenu = { bg = "bg3" },
|
|
PmenuSel = { bg = "bg3" },
|
|
},
|
|
},
|
|
})
|
|
end,
|
|
},
|
|
}
|