2023-03-05 10:49:03 +07:00
|
|
|
local nightfox = false
|
|
|
|
|
2023-03-04 11:53:44 +07:00
|
|
|
_G.switch = function(param, case_table)
|
2024-05-24 19:20:23 +07:00
|
|
|
local case = case_table[param]
|
|
|
|
if case then
|
|
|
|
return case()
|
|
|
|
end
|
|
|
|
local def = case_table["default"]
|
|
|
|
return def and def() or nil
|
2023-03-04 11:53:44 +07:00
|
|
|
end
|
|
|
|
|
2024-05-24 23:43:38 +07:00
|
|
|
_G.substring = function(text, key)
|
|
|
|
local index, _ = string.find(text, key)
|
|
|
|
if index then
|
|
|
|
return true
|
|
|
|
else
|
|
|
|
return false
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
_G.extract = function(text)
|
|
|
|
local result = {}
|
|
|
|
for substring in string.gmatch(text, "[^_]+") do
|
|
|
|
table.insert(result, substring)
|
|
|
|
end
|
|
|
|
return result
|
|
|
|
end
|
|
|
|
|
2024-05-21 19:49:53 +07:00
|
|
|
local color = vim.g.pcode_colorscheme or "gruvbox-baby"
|
2024-05-25 09:28:49 +07:00
|
|
|
local materialstyle = extract(color)[2] or "oceanic"
|
|
|
|
local material_style = (materialstyle == "deepocean") and "deep ocean" or materialstyle
|
2024-05-24 23:43:38 +07:00
|
|
|
switch(color, {
|
2024-05-24 19:20:23 +07:00
|
|
|
["nightfox"] = function()
|
|
|
|
nightfox = true
|
|
|
|
end,
|
|
|
|
["dayfox"] = function()
|
|
|
|
nightfox = true
|
|
|
|
end,
|
|
|
|
["dawnfox"] = function()
|
|
|
|
nightfox = true
|
|
|
|
end,
|
|
|
|
["duskfox"] = function()
|
|
|
|
nightfox = true
|
|
|
|
end,
|
|
|
|
["nordfox"] = function()
|
|
|
|
nightfox = true
|
|
|
|
end,
|
|
|
|
["terafox"] = function()
|
|
|
|
nightfox = true
|
|
|
|
end,
|
|
|
|
["carbonfox"] = function()
|
|
|
|
nightfox = true
|
|
|
|
end,
|
2024-05-25 09:28:49 +07:00
|
|
|
default = function() end,
|
2024-05-21 14:20:50 +07:00
|
|
|
})
|
2023-03-04 11:53:44 +07:00
|
|
|
|
2024-05-25 09:28:49 +07:00
|
|
|
-- local transparent = false
|
2024-05-21 19:49:53 +07:00
|
|
|
local transparent_mode = vim.g.pcode_transparent_mode or 0
|
2024-05-25 09:28:49 +07:00
|
|
|
-- if transparent_mode ~= nil then
|
|
|
|
-- if transparent_mode == 1 then
|
|
|
|
-- transparent = true
|
|
|
|
-- end
|
|
|
|
-- end
|
2023-03-04 16:26:54 +07:00
|
|
|
|
2023-03-04 11:53:44 +07:00
|
|
|
return {
|
2024-05-24 19:20:23 +07:00
|
|
|
-- color scheme
|
|
|
|
{
|
|
|
|
"luisiacc/gruvbox-baby",
|
|
|
|
lazy = true,
|
2024-05-25 09:28:49 +07:00
|
|
|
enabled = (color == "gruvbox-baby") and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
config = function()
|
|
|
|
local colors = require("gruvbox-baby.colors").config()
|
|
|
|
vim.g.gruvbox_baby_highlights = {
|
|
|
|
StatusLine = { fg = colors.fg, bg = colors.bg },
|
|
|
|
WinBarNC = { fg = colors.fg, bg = colors.bg },
|
|
|
|
BufferLineFill = { bg = colors.bg },
|
|
|
|
BufferLineFillNC = { bg = colors.bg },
|
|
|
|
BufferLineUnfocusedFill = { bg = colors.bg },
|
|
|
|
TabLine = { bg = colors.bg, fg = colors.fg },
|
2024-05-25 06:14:47 +07:00
|
|
|
NvimTreeNormal = { bg = colors.bg, fg = colors.fg },
|
|
|
|
NvimTreeNormalNC = { bg = colors.bg, fg = colors.fg },
|
|
|
|
NvimTreeWinSeparator = { fg = colors.fg },
|
|
|
|
Pmenu = { fg = colors.fg, bg = colors.bg },
|
|
|
|
WhichKeyFloat = { fg = colors.fg, bg = colors.bg },
|
|
|
|
WhichKeyBorder = { fg = colors.fg, bg = colors.bg },
|
|
|
|
NormalFloat = { fg = colors.fg, bg = colors.bg },
|
|
|
|
NormalNC = { fg = colors.fg, bg = colors.bg },
|
|
|
|
FloatBorder = { fg = colors.fg, bg = colors.bg },
|
|
|
|
LspInfoBorder = { fg = colors.fg, bg = colors.bg },
|
2024-05-24 19:20:23 +07:00
|
|
|
}
|
2024-05-25 09:28:49 +07:00
|
|
|
vim.g.gruvbox_baby_transparent_mode = transparent_mode
|
2024-05-24 19:20:23 +07:00
|
|
|
end,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"Mofiqul/dracula.nvim",
|
2024-05-25 09:28:49 +07:00
|
|
|
enabled = (color == "dracula") and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
config = function()
|
|
|
|
local colors = require("dracula").colors()
|
|
|
|
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.javascript"] = { fg = colors.cyan },
|
|
|
|
["@tag.attribute"] = { fg = colors.green, italic = true },
|
|
|
|
-- ["@tag.attribute.javascript"] = { fg = colors.orange, 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" },
|
|
|
|
SpellBad = { fg = "#FF6E6E" },
|
|
|
|
illuminatedWord = { bg = "#3b4261" },
|
|
|
|
illuminatedCurWord = { bg = "#3b4261" },
|
|
|
|
IlluminatedWordText = { bg = "#3b4261" },
|
|
|
|
IlluminatedWordRead = { bg = "#3b4261" },
|
|
|
|
IlluminatedWordWrite = { bg = "#3b4261" },
|
|
|
|
DiffChange = { fg = colors.fg },
|
|
|
|
StatusLine = { fg = colors.fg, bg = colors.bg },
|
|
|
|
StatusLineTerm = { fg = colors.fg, bg = colors.bg },
|
|
|
|
BufferLineFill = { bg = colors.bg },
|
|
|
|
Pmenu = { fg = colors.fg, bg = colors.bg },
|
|
|
|
WinBarNC = { fg = colors.fg, bg = colors.bg },
|
|
|
|
LspInfoBorder = { fg = colors.fg },
|
|
|
|
},
|
2024-05-25 09:28:49 +07:00
|
|
|
transparent_bg = (transparent_mode == 1) and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
}
|
|
|
|
end,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"folke/tokyonight.nvim",
|
2024-05-25 09:28:49 +07:00
|
|
|
enabled = substring(tostring(color), "tokyonight") and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
config = function()
|
|
|
|
require "user.tokyonight"
|
|
|
|
end,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"shaunsingh/nord.nvim",
|
2024-05-25 09:28:49 +07:00
|
|
|
enabled = (color == "nord") and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
config = function()
|
2024-05-25 09:28:49 +07:00
|
|
|
vim.g.nord_disable_background = (transparent_mode == 1) and true or false
|
2024-05-24 19:20:23 +07:00
|
|
|
require("nord").set()
|
|
|
|
local nord = require "nord.colors"
|
|
|
|
vim.api.nvim_create_autocmd("ColorScheme", {
|
|
|
|
pattern = "*",
|
|
|
|
callback = function()
|
|
|
|
vim.api.nvim_set_hl(0, "StatusLine", { bg = "NONE", fg = nord.nord4_gui })
|
|
|
|
vim.api.nvim_set_hl(0, "WinBarNC", { bg = nord.nord0_gui, fg = nord.nord4_gui })
|
|
|
|
vim.api.nvim_set_hl(0, "WhichKeyFloat", { bg = nord.nord0_gui, fg = nord.nord4_gui })
|
|
|
|
-- vim.api.nvim_set_hl(0, "StatusLine", { cterm = "bold", bold = true })
|
|
|
|
end,
|
|
|
|
})
|
|
|
|
end,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"sainnhe/sonokai",
|
2024-05-25 09:28:49 +07:00
|
|
|
enabled = substring(tostring(color), "sonokai") and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
config = function()
|
|
|
|
vim.api.nvim_create_autocmd("ColorScheme", {
|
|
|
|
group = vim.api.nvim_create_augroup("custom_highlights_sonokai", {}),
|
|
|
|
pattern = "sonokai",
|
|
|
|
callback = function()
|
|
|
|
local config = vim.fn["sonokai#get_configuration"]()
|
|
|
|
local palette = vim.fn["sonokai#get_palette"](config.style, config.colors_override)
|
|
|
|
local set_hl = vim.fn["sonokai#highlight"]
|
|
|
|
|
|
|
|
set_hl("StatusLine", palette.fg, palette.none)
|
|
|
|
set_hl("StatusLineTerm", palette.fg, palette.none)
|
|
|
|
set_hl("StatusLineNC", palette.fg, palette.none)
|
|
|
|
set_hl("StatusLineTermNC", palette.fg, palette.none)
|
|
|
|
set_hl("LualineNormal", palette.fg, palette.none)
|
|
|
|
set_hl("NvimTreeNormal", palette.fg, palette.bg0)
|
|
|
|
set_hl("NvimTreeCursorLine", palette.fg, palette.bg1)
|
|
|
|
set_hl("NvimTreeEndOfBuffer", palette.fg, palette.bg0)
|
|
|
|
set_hl("Pmenu", palette.fg, palette.bg0)
|
|
|
|
set_hl("WhichKeyFloat", palette.fg, palette.bg0)
|
|
|
|
set_hl("WhichKey", palette.fg, palette.bg0)
|
|
|
|
set_hl("WhichKeyBorder", palette.fg, palette.bg0)
|
|
|
|
set_hl("NormalFloat", palette.fg, palette.bg0)
|
|
|
|
set_hl("Normal", palette.fg, palette.bg0)
|
|
|
|
set_hl("NormalNC", palette.fg, palette.bg0)
|
|
|
|
set_hl("FloatBorder", palette.fg, palette.bg0)
|
|
|
|
set_hl("LspInfoNormal", palette.fg, palette.bg0)
|
|
|
|
end,
|
|
|
|
})
|
2024-05-25 09:28:49 +07:00
|
|
|
vim.g.sonokai_style = extract(color)[2] or "default"
|
|
|
|
vim.g.sonokai_transparent_background = (transparent_mode == 1) and 2 or 0
|
2024-05-24 19:20:23 +07:00
|
|
|
end,
|
|
|
|
},
|
2024-05-25 09:28:49 +07:00
|
|
|
{ "lunarvim/lunar.nvim", enabled = (color == "lunar") and true or false },
|
2024-05-24 19:20:23 +07:00
|
|
|
{
|
|
|
|
"marko-cerovac/material.nvim",
|
2024-05-25 09:28:49 +07:00
|
|
|
enabled = substring(tostring(color), "material") and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
config = function()
|
|
|
|
local colors = require "material.colors"
|
|
|
|
vim.g.material_style = material_style
|
|
|
|
require("material").setup {
|
|
|
|
lualine_style = "stealth",
|
|
|
|
disable = {
|
2024-05-25 09:28:49 +07:00
|
|
|
background = (transparent_mode == 1) and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
},
|
|
|
|
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 },
|
|
|
|
WinBarNC = { fg = colors.fg, bg = colors.bg },
|
2024-05-25 09:28:49 +07:00
|
|
|
CursorLine = { bg = "#333842" },
|
2024-05-24 19:20:23 +07:00
|
|
|
},
|
|
|
|
}
|
|
|
|
end,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"olimorris/onedarkpro.nvim",
|
|
|
|
priority = 1000, -- Ensure it loads first
|
2024-05-25 09:28:49 +07:00
|
|
|
enabled = substring(tostring(color), "onedark") and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
config = function()
|
2024-05-25 09:28:49 +07:00
|
|
|
local is_transparent = (transparent_mode == 1) and true or false
|
2024-05-24 19:20:23 +07:00
|
|
|
require("onedarkpro").setup {
|
|
|
|
styles = {
|
|
|
|
types = "NONE",
|
|
|
|
methods = "NONE",
|
|
|
|
numbers = "NONE",
|
|
|
|
strings = "NONE",
|
|
|
|
comments = "italic",
|
|
|
|
keywords = "bold,italic",
|
|
|
|
constants = "NONE",
|
|
|
|
functions = "italic",
|
|
|
|
operators = "NONE",
|
|
|
|
variables = "NONE",
|
|
|
|
parameters = "NONE",
|
|
|
|
conditionals = "italic",
|
|
|
|
virtual_text = "NONE",
|
|
|
|
tags = "italic",
|
|
|
|
},
|
|
|
|
colors = {
|
2024-05-24 23:43:38 +07:00
|
|
|
bg_statusline = "#282c34",
|
2024-05-24 19:20:23 +07:00
|
|
|
onedark = {
|
|
|
|
green = "#99c379",
|
|
|
|
gray = "#8094b4",
|
|
|
|
red = "#e06c75",
|
|
|
|
purple = "#c678dd",
|
|
|
|
yellow = "#e5c07a",
|
|
|
|
blue = "#61afef",
|
|
|
|
cyan = "#56b6c2",
|
|
|
|
indentline = "#3b4261",
|
|
|
|
float_bg = "#282c34",
|
|
|
|
},
|
2024-05-24 23:43:38 +07:00
|
|
|
onedark_dark = {
|
|
|
|
bg_statusline = "#000",
|
|
|
|
},
|
2024-05-24 19:20:23 +07:00
|
|
|
},
|
|
|
|
options = {
|
|
|
|
cursorline = true,
|
|
|
|
transparency = is_transparent,
|
|
|
|
terminal_colors = true,
|
|
|
|
},
|
|
|
|
highlights = {
|
|
|
|
-- overide cursor line fill colors
|
|
|
|
LineNr = { fg = "#49505E" }, -- Line number for ":number" and ":#" commands, and when 'number' or 'relativenumber' option is set.
|
|
|
|
CursorLineNr = { fg = "${blue}" }, -- Like LineNr when 'cursorline' or 'relativenumber' is set for the cursor line.
|
|
|
|
CursorLine = { bg = "#333842" },
|
|
|
|
Cursor = { fg = "${bg}", bg = "${fg}" }, -- character under the cursor
|
|
|
|
lCursor = { fg = "${bg}", bg = "${fg}" }, -- the character under the cursor when |language-mapping| is used (see 'guicursor')
|
|
|
|
CursorIM = { fg = "${bg}", bg = "${fg}" }, -- like Cursor, but used when in IME mode |CursorIM|
|
|
|
|
CursorColumn = { bg = "#333842" }, -- Screen-column at the cursor, when 'cursorcolumn' is set.
|
|
|
|
-- overide nvimtree folder icon fill color
|
|
|
|
NvimTreeFolderIcon = { fg = "${gray}" },
|
|
|
|
-- overide nvimtree text fill color folder opened
|
|
|
|
NvimTreeOpenedFolderName = { fg = "${blue}" },
|
|
|
|
-- overide nvimtree text fill color root folder
|
|
|
|
NvimTreeRootFolder = { fg = "${yellow}" },
|
|
|
|
NvimTreeSpecialFile = { fg = "${orange}" },
|
|
|
|
NvimTreeWinSeparator = { fg = "#202329" },
|
|
|
|
NvimTreeIndentMarker = { fg = "#3E4450" },
|
|
|
|
-- overide indenline fill color
|
|
|
|
IblIndent = { fg = "#3E4450" },
|
|
|
|
-- overide cmp cursorline fill color with #333842
|
|
|
|
PmenuSel = { bg = "#333842" },
|
|
|
|
illuminatedWord = { bg = "#3b4261" },
|
|
|
|
illuminatedCurWord = { bg = "#3b4261" },
|
|
|
|
IlluminatedWordText = { bg = "#3b4261" },
|
|
|
|
IlluminatedWordRead = { bg = "#3b4261" },
|
|
|
|
IlluminatedWordWrite = { bg = "#3b4261" },
|
|
|
|
StatusLine = { fg = "#f8f8f2", bg = is_transparent and "NONE" or "${bg}" },
|
|
|
|
StatusLineTerm = { fg = "#f8f8f2", bg = "${bg}" },
|
|
|
|
BufferLineFill = { bg = is_transparent and "NONE" or "${bg}" },
|
|
|
|
["@string.special.url.html"] = { fg = "${green}" },
|
|
|
|
["@lsp.type.parameter"] = { fg = "${gray}" },
|
|
|
|
-- ["@text.uri.html"] = { fg = "${green}" },
|
|
|
|
-- ["@tag.javascript"] = { fg = "${red}" },
|
|
|
|
-- ["@tag.attribute"] = { fg = "${orange}", style = "italic" },
|
|
|
|
-- ["@constructor.javascript"] = { fg = "${red}" },
|
|
|
|
-- ["@variable"] = { fg = "${fg}", style = "NONE" }, -- various variable names
|
|
|
|
-- ["@variable.builtin"] = { fg = "${red}", style = "NONE" },
|
|
|
|
-- ["@variable.member"] = "${cyan}",
|
|
|
|
-- ["@variable.parameter"] = "${red}",
|
|
|
|
-- ["@property"] = { fg = "${cyan}" }, -- similar to `@field`
|
|
|
|
["@property.lua"] = { fg = "${red}", bg = "NONE" },
|
|
|
|
["@lsp.type.property.lua"] = { fg = "${cyan}", bg = "NONE" },
|
|
|
|
["@lsp.type.variable.lua"] = { fg = "${red}", bg = "NONE" },
|
|
|
|
NvimTreeGitDirty = { fg = "${yellow}" },
|
|
|
|
Pmenu = { fg = "${fg}", bg = "${bg}" },
|
|
|
|
PmenuThumb = { bg = "${gray}" }, -- Popup menu: Thumb of the scrollbar.
|
|
|
|
-- overide lualine fill color with bg color
|
|
|
|
LualineNormal = { bg = "${bg}" },
|
|
|
|
-- overide lualine_c fill color with bg color
|
|
|
|
LualineC = { bg = "${bg}" },
|
|
|
|
-- overide lualine_x fill color with bg color
|
|
|
|
LualineX = { bg = "${bg}" },
|
|
|
|
-- overide which-key fill color with bg color
|
|
|
|
-- WhichKey = { bg = "${bg}" },
|
|
|
|
-- -- overide which-key fill color with bg color
|
|
|
|
-- WhichKeySeperator = { bg = "${bg}" },
|
|
|
|
-- -- overide which-key fill color with bg color
|
|
|
|
-- WhichKeyDesc = { fg = "${red}" },
|
|
|
|
-- -- overide which-key fill color with bg color
|
|
|
|
-- WhichKeyFloat = { bg = "${bg}" },
|
|
|
|
WhichKeyFloat = { bg = is_transparent and "NONE" or "${bg}" },
|
|
|
|
-- -- overide which-key fill color with bg color
|
|
|
|
-- WhichKeyValue = { bg = "${bg}" },
|
|
|
|
-- -- overide which-key fill color with bg color
|
|
|
|
-- WhichKeyBorder = { bg = "${bg}" },
|
|
|
|
LspInfoBorder = { fg = "${fg}" },
|
2024-05-24 23:43:38 +07:00
|
|
|
NormalFloat = { fg = "${fg}", bg = is_transparent and "NONE" or "${bg}" },
|
|
|
|
Normal = { fg = "${fg}", bg = is_transparent and "NONE" or "${bg}" },
|
|
|
|
NormalNC = { fg = "${fg}", bg = is_transparent and "NONE" or "${bg}" },
|
|
|
|
FloatBorder = { fg = "${fg}", bg = is_transparent and "NONE" or "${bg}" },
|
2024-05-24 19:20:23 +07:00
|
|
|
},
|
|
|
|
}
|
|
|
|
end,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"catppuccin/nvim",
|
2024-05-25 09:28:49 +07:00
|
|
|
enabled = substring(tostring(color), "catppuccin") and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
name = "catppuccin",
|
|
|
|
priority = 1000,
|
|
|
|
config = function()
|
2024-05-25 09:28:49 +07:00
|
|
|
local transparent = (transparent_mode == 1) and true or false
|
2024-05-24 19:20:23 +07:00
|
|
|
require("catppuccin").setup {
|
|
|
|
flavour = "auto", -- latte, frappe, macchiato, mocha
|
|
|
|
background = { -- :h background
|
|
|
|
light = "latte",
|
|
|
|
dark = "mocha",
|
|
|
|
},
|
|
|
|
transparent_background = transparent, -- disables setting the background color.
|
|
|
|
show_end_of_buffer = false, -- shows the '~' characters after the end of buffers
|
|
|
|
term_colors = false, -- sets terminal colors (e.g. `g:terminal_color_0`)
|
|
|
|
dim_inactive = {
|
|
|
|
enabled = false, -- dims the background color of inactive window
|
|
|
|
shade = "dark",
|
|
|
|
percentage = 0.15, -- percentage of the shade to apply to the inactive window
|
|
|
|
},
|
|
|
|
no_italic = false, -- Force no italic
|
|
|
|
no_bold = false, -- Force no bold
|
|
|
|
no_underline = false, -- Force no underline
|
|
|
|
styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
|
|
|
|
comments = { "italic" }, -- Change the style of comments
|
|
|
|
conditionals = { "italic" },
|
|
|
|
loops = {},
|
|
|
|
functions = {},
|
|
|
|
keywords = { "italic" },
|
|
|
|
strings = {},
|
|
|
|
variables = {},
|
|
|
|
numbers = {},
|
|
|
|
booleans = {},
|
|
|
|
properties = {},
|
|
|
|
types = {},
|
|
|
|
operators = {},
|
|
|
|
-- miscs = {}, -- Uncomment to turn off hard-coded styles
|
|
|
|
},
|
|
|
|
color_overrides = {},
|
|
|
|
custom_highlights = function(colors)
|
|
|
|
return {
|
|
|
|
NvimTreeNormal = { fg = colors.text, bg = transparent and colors.none or colors.base },
|
|
|
|
NvimTreeWinSeparator = { fg = colors.mantle, bg = transparent and colors.none or colors.none },
|
|
|
|
Pmenu = { fg = colors.text, bg = transparent and colors.none or colors.base },
|
|
|
|
WhichKeyFloat = { fg = colors.text, bg = transparent and colors.none or colors.base },
|
|
|
|
WhichKey = { fg = colors.text, bg = transparent and colors.none or colors.base },
|
|
|
|
WhichKeyBorder = { fg = colors.text, bg = transparent and colors.none or colors.base },
|
|
|
|
NormalFloat = { fg = colors.text, bg = transparent and colors.none or colors.base },
|
|
|
|
Normal = { fg = colors.text, bg = transparent and colors.none or colors.base },
|
|
|
|
NormalNC = { fg = colors.text, bg = transparent and colors.none or colors.base },
|
|
|
|
StatusLine = { fg = colors.text, bg = colors.none },
|
|
|
|
}
|
|
|
|
end,
|
|
|
|
highlight_overrides = {
|
|
|
|
all = function(colors)
|
|
|
|
return {
|
|
|
|
["@markup.link.url"] = { fg = colors.rosewater, style = { "italic" } },
|
|
|
|
}
|
|
|
|
end,
|
|
|
|
},
|
|
|
|
default_integrations = true,
|
|
|
|
integrations = {
|
|
|
|
cmp = true,
|
|
|
|
gitsigns = true,
|
|
|
|
nvimtree = true,
|
|
|
|
treesitter = true,
|
|
|
|
notify = false,
|
|
|
|
mini = {
|
|
|
|
enabled = true,
|
|
|
|
indentscope_color = "",
|
|
|
|
},
|
|
|
|
-- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
|
|
|
|
},
|
|
|
|
}
|
|
|
|
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,
|
2024-05-25 09:28:49 +07:00
|
|
|
transparent = (transparent_mode == 1) and true or false,
|
2024-05-24 19:20:23 +07:00
|
|
|
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,
|
|
|
|
},
|
2023-03-04 11:53:44 +07:00
|
|
|
}
|