diff --git a/.config/nvim/lua/plugins/extras/ui/colorschemes/catppuccin.lua b/.config/nvim/lua/plugins/extras/ui/colorschemes/catppuccin.lua index 2df416d8..38a7ef40 100644 --- a/.config/nvim/lua/plugins/extras/ui/colorschemes/catppuccin.lua +++ b/.config/nvim/lua/plugins/extras/ui/colorschemes/catppuccin.lua @@ -1,4 +1,6 @@ -local palette = require("catppuccin.palettes").get_palette("macchiato") -- Import your favorite catppuccin colors +local palette = require("catppuccin.palettes").get_palette("macchiato") +local darken = require("catppuccin.utils.colors").darken +local transparent_bg = require("catppuccin").options.transparent_background and "NONE" or palette.mantle return { { @@ -6,6 +8,22 @@ return { lazy = false, name = "catppuccin", opts = { + custom_highlights = { + -- Blink Menu + Pmenu = { bg = darken(palette.surface0, 0.8, palette.crust) }, + PmenuSel = { bg = palette.surface1, style = { "bold" } }, + PmenuBar = { bg = palette.surface1 }, + BlinkCmpMenuBorder = { bg = darken(palette.surface0, 0.8, palette.crust) }, + + -- Snacks + SnacksNotifierInfo = { fg = palette.lavender }, + SnacksNotifierIconInfo = { fg = palette.lavender }, + SnacksNotifierTitleInfo = { fg = palette.lavender, style = { "italic" } }, + SnacksNotifierFooterInfo = { link = "DiagnosticInfo" }, + SnacksNotifierBorderInfo = { fg = palette.lavender }, + SnacksPickerPreviewTitle = { fg = palette.crust, bg = palette.lavender }, + SnacksDashboardHeader = { fg = palette.lavender }, + }, styles = { comments = { "italic" }, }, @@ -16,6 +34,12 @@ return { transparent_background = true, term_colors = true, auto_integrations = true, + integrations = { + snacks = { + enabled = true, + indent_scope_color = "lavender", + }, + }, float = { transparent = true, -- enables transparency on floating windows solid = true, -- use nvchad styling for floating windows @@ -75,4 +99,49 @@ return { }, }, }, + { + "nvim-lualine/lualine.nvim", + opts = { + options = { + theme = { + normal = { + a = { bg = palette.lavender, fg = palette.mantle, gui = "bold" }, + b = { bg = palette.surface0, fg = palette.lavender }, + c = { bg = transparent_bg, fg = palette.text }, + }, + + insert = { + a = { bg = palette.green, fg = palette.base, gui = "bold" }, + b = { bg = palette.surface0, fg = palette.green }, + }, + + terminal = { + a = { bg = palette.green, fg = palette.base, gui = "bold" }, + b = { bg = palette.surface0, fg = palette.green }, + }, + + command = { + a = { bg = palette.peach, fg = palette.base, gui = "bold" }, + b = { bg = palette.surface0, fg = palette.peach }, + }, + + visual = { + a = { bg = palette.mauve, fg = palette.base, gui = "bold" }, + b = { bg = palette.surface0, fg = palette.mauve }, + }, + + replace = { + a = { bg = palette.red, fg = palette.base, gui = "bold" }, + b = { bg = palette.surface0, fg = palette.red }, + }, + + inactive = { + a = { bg = transparent_bg, fg = palette.lavender }, + b = { bg = transparent_bg, fg = palette.surface1, gui = "bold" }, + c = { bg = transparent_bg, fg = palette.overlay0 }, + }, + }, + }, + }, + }, }