From 73b97e50f37ebdc7ad00fead0f32d26592e4118f Mon Sep 17 00:00:00 2001 From: 409 <409dev@protonmail.com> Date: Wed, 19 Feb 2025 03:08:52 +0100 Subject: [PATCH] feat(theme): switch to catppuccin mocha --- lazy-lock.json | 14 ++--- lua/409/plugins/completion.lua | 42 +-------------- lua/409/plugins/statusline.lua | 2 +- lua/409/plugins/theme.lua | 98 +++++++++++++++++++++++++++------- lua/409/plugins/util.lua | 2 +- 5 files changed, 90 insertions(+), 68 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index 6ccf452..70f18dd 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -3,13 +3,13 @@ "alpha-nvim": { "branch": "main", "commit": "de72250e054e5e691b9736ee30db72c65d560771" }, "barbecue.nvim": { "branch": "main", "commit": "cd7e7da622d68136e13721865b4d919efd6325ed" }, "blink.cmp": { "branch": "main", "commit": "18b352d12b35bca148427b607098df14b75a218f" }, + "catppuccin": { "branch": "main", "commit": "d72341852556e2dfe19f779cc682c16dd58548fc" }, "conform.nvim": { "branch": "master", "commit": "a6f5bdb78caa305496357d17e962bbc4c0b392e2" }, "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, - "dracula": { "branch": "main", "commit": "515acae4fd294fcefa5b15237a333c2606e958d1" }, "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, "flutter-tools.nvim": { "branch": "main", "commit": "d135e1d02f6a3a8808efc2b58950ab1fdd49d000" }, - "fzf-lua": { "branch": "main", "commit": "26095d98c2969730457bf5b483919280e2cfb8bb" }, - "gitsigns.nvim": { "branch": "main", "commit": "8b00147519d6f8353867d5d0b55f587306b0cfb6" }, + "fzf-lua": { "branch": "main", "commit": "4abf18b349ece55c37a7bd8504fad38f62060859" }, + "gitsigns.nvim": { "branch": "main", "commit": "6668f379ca634c36b8e11453118590b91bf8b295" }, "harpoon": { "branch": "harpoon2", "commit": "ed1f853847ffd04b2b61c314865665e1dadf22c7" }, "lazy.nvim": { "branch": "main", "commit": "e5e9bf48211a13d9ee6c1077c88327c49c1ab4a0" }, "lsp-zero.nvim": { "branch": "v2.x", "commit": "9a686513eaaa13d737d0fec8956a18268ead8b29" }, @@ -21,17 +21,17 @@ "neogen": { "branch": "main", "commit": "d633d2ef572479792f6a09665fe5e897ed49f85c" }, "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, - "nvim-lspconfig": { "branch": "master", "commit": "7af2c37192deae28d1305ae9e68544f7fb5408e1" }, + "nvim-lspconfig": { "branch": "master", "commit": "1110787f1b464888c59a044c48c5119d14078044" }, "nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" }, "nvim-spectre": { "branch": "master", "commit": "ddd7383e856a7c939cb4f5143278fe041bbb8cb9" }, "nvim-tree-docs": { "branch": "master", "commit": "5db023d783da1e55339e5e25caaf72a59597e626" }, - "nvim-treesitter": { "branch": "master", "commit": "2cade9e3d105732b794bc37e7cb2dc53b1cf99dc" }, + "nvim-treesitter": { "branch": "master", "commit": "1a6e42bb8c5c23d8e2c0acb842dcacac5ee06761" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" }, "nvim-web-devicons": { "branch": "master", "commit": "1020869742ecb191f260818234517f4a1515cfe8" }, "obsidian.nvim": { "branch": "main", "commit": "ae1f76a75c7ce36866e1d9342a8f6f5b9c2caf9b" }, "oil.nvim": { "branch": "master", "commit": "975a77cce3c8cb742bc1b3629f4328f5ca977dad" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, - "render-markdown.nvim": { "branch": "main", "commit": "f6c9e1841cf644a258eb037dae587e3cf407d696" }, + "render-markdown.nvim": { "branch": "main", "commit": "4a28c135bc3548e398ba38178fec3f705cb26fe6" }, "tailwind-tools.nvim": { "branch": "master", "commit": "abe7368392345c53174979c2cf033e832de80ef8" }, "telescope.nvim": { "branch": "master", "commit": "78857db9e8d819d3cc1a9a7bdc1d39d127a36495" }, "tiny-devicons-auto-colors.nvim": { "branch": "main", "commit": "51f548421f8a74680eff27d283c9d5ea6e8d0074" }, @@ -40,7 +40,7 @@ "tsc.nvim": { "branch": "main", "commit": "59abb6f3f24a3ca80708f694af4e2b727a1a3211" }, "undotree": { "branch": "master", "commit": "2556c6800b210b2096b55b66e74b4cc1d9ebbe4f" }, "vim-dadbod": { "branch": "master", "commit": "9f0ca8bcef704659820a95c3bbd2c262583a66a1" }, - "vim-dadbod-completion": { "branch": "master", "commit": "c7f1be21a08b8fc9d927a19db89a4aa995402787" }, + "vim-dadbod-completion": { "branch": "master", "commit": "1de1216ce0551ef8400aa9409b7803107d990be7" }, "vim-dadbod-ui": { "branch": "master", "commit": "f4d37b7312ae6489e5c04bee654ca521baac188a" }, "vim-fugitive": { "branch": "master", "commit": "b068eaf1e6cbe35d1ac100d435cd7f7b74a5c87d" }, "vim-pencil": { "branch": "master", "commit": "6d70438a8886eaf933c38a7a43a61adb0a7815ed" }, diff --git a/lua/409/plugins/completion.lua b/lua/409/plugins/completion.lua index 067bc20..dadb90f 100644 --- a/lua/409/plugins/completion.lua +++ b/lua/409/plugins/completion.lua @@ -15,6 +15,7 @@ return { [""] = { "scroll_documentation_down", "fallback" }, }, appearance = { + use_nvim_cmp_as_default = true, nerd_font_variant = "mono", kind_icons = { Text = "󰉿", @@ -109,47 +110,6 @@ return { opts_extend = { "sources.default" }, config = function(_, opts) require("blink.cmp").setup(opts) - - vim.api.nvim_set_hl(0, "BlinkCmpMenu", { fg = "#abb2bf", bg = "none" }) - - vim.api.nvim_set_hl(0, "BlinkCmpMenuBorder", { link = "FloatBorder" }) - vim.api.nvim_set_hl(0, "BlinkCmpDocBorder", { link = "FloatBorder" }) - vim.api.nvim_set_hl(0, "BlinkCmpSignatureHelpBorder", { link = "FloatBorder" }) - - vim.api.nvim_set_hl(0, "BlinkCmpLabelMatch", { fg = "#50fa7b", bg = "none" }) - vim.api.nvim_set_hl(0, "BlinkCmpLabel", { bg = "none" }) - vim.api.nvim_set_hl(0, "BlinkCmpMenuSelection", { bg = "none" }) - vim.api.nvim_set_hl(0, "BlinkCmpKind", { link = "BlinkCmpLabel" }) - - vim.api.nvim_set_hl(0, "BlinkCmpGhostText", { fg = "#abb2bf" }) - - vim.api.nvim_set_hl(0, "BlinkCmpKindTypeParameter", { link = "@variable.parameter" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindConstructor", { link = "@type" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindEnumMember", { link = "@variable.member" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindReference", { link = "@variable.parameter.reference" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindInterface", { link = "@type" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindVariable", { link = "@variable" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindProperty", { link = "@property" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindOperator", { link = "@operator" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindFunction", { link = "@function" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindConstant", { link = "@constant" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindSnippet", { link = "@markup" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindKeyword", { link = "@keyword" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindStruct", { link = "@structure" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindModule", { link = "@module" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindMethod", { link = "@function.method" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindFolder", { link = "TSURI" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindValue", { link = "@variable.member" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindField", { link = "@variable.member" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindEvent", { link = "@constant" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindColor", { link = "DevIconCss" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindClass", { link = "@type" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindUnit", { link = "@variable.member" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindText", { link = "@markup" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindFile", { link = "TSURI" }) - vim.api.nvim_set_hl(0, "BlinkCmpKindEnum", { link = "@variable.member" }) - - vim.api.nvim_set_hl(0, "SnippetTabstop", { bg = "none" }) end, }, } diff --git a/lua/409/plugins/statusline.lua b/lua/409/plugins/statusline.lua index 952d490..87b8491 100644 --- a/lua/409/plugins/statusline.lua +++ b/lua/409/plugins/statusline.lua @@ -5,7 +5,7 @@ return { opts = { options = { icons_enabled = true, - theme = "dracula-nvim", + theme = "catppuccin", component_separators = { left = "", right = "" }, section_separators = { left = "", right = "" }, disabled_filetypes = { diff --git a/lua/409/plugins/theme.lua b/lua/409/plugins/theme.lua index 2ba721f..58d9535 100644 --- a/lua/409/plugins/theme.lua +++ b/lua/409/plugins/theme.lua @@ -1,27 +1,89 @@ return { { - "Mofiqul/dracula.nvim", - name = "dracula", - lazy = false, + "catppuccin/nvim", + name = "catppuccin", priority = 1000, - config = function() - require("dracula").setup({ - transparent_bg = true, - }) - vim.cmd.colorscheme("dracula") + opts = { + flavour = "mocha", + transparent_background = true, + show_end_of_buffer = false, + integrations = { + blink_cmp = true, + treesitter = true, + gitsigns = true, + }, + no_italic = true, + no_underline = false, + highlight_overrides = { + mocha = function (mocha) + return { + Comment = { fg = mocha.overlay0 }, + } + end + }, + }, + config = function(_, opts) + require("catppuccin").setup(opts) + + vim.cmd.colorscheme("catppuccin") + + local colors = require("catppuccin.palettes").get_palette(opts.flavour) + + vim.api.nvim_set_hl(0, "LineNr", { fg = colors.surface2 }) vim.api.nvim_set_hl(0, "QuickFixLine", { link = "Visual" }) - vim.api.nvim_set_hl(0, "TelescopePromptBorder", { fg = "#44475a" }) - vim.api.nvim_set_hl(0, "TelescopePreviewBorder", { fg = "#44475a" }) - vim.api.nvim_set_hl(0, "TelescopeResultsBorder", { fg = "#44475a" }) - vim.api.nvim_set_hl(0, "TelescopePromptCounter", { fg = "#44475a" }) - vim.api.nvim_set_hl(0, "FloatBorder", { fg = "#44475a" }) - vim.api.nvim_set_hl(0, "PmenuSel", { fg = "#282a36", bg = "#50fa7b", bold = true }) + vim.api.nvim_set_hl(0, "TelescopePromptBorder", { link = "FloatBorder" }) + vim.api.nvim_set_hl(0, "TelescopePreviewBorder", { link = "FloatBorder" }) + vim.api.nvim_set_hl(0, "TelescopeResultsBorder", { link = "FloatBorder" }) + vim.api.nvim_set_hl(0, "TelescopePromptCounter", { link = "FloatBorder" }) + vim.api.nvim_set_hl(0, "FloatBorder", { fg = colors.surface2 }) + vim.api.nvim_set_hl(0, "PmenuSel", { fg = colors.crust, bg = colors.blue, bold = true }) - vim.api.nvim_set_hl(0, "TabLine", { fg = "#f8f8f2", bg = "#44475a" }) - vim.api.nvim_set_hl(0, "TabLineSel", { fg = "#282a36", bg = "#50fa7b", bold = true }) - vim.api.nvim_set_hl(0, "DashboardHeader", { fg = "#50fa7b" }) - vim.api.nvim_set_hl(0, "DashboardShortCut", { fg = "#bd93f9" }) + vim.api.nvim_set_hl(0, "TabLine", { fg = colors.text, bg = colors.mantle }) + vim.api.nvim_set_hl(0, "TabLineSel", { fg = colors.crust, bg = colors.blue, bold = true }) + vim.api.nvim_set_hl(0, "DashboardHeader", { fg = colors.blue }) + vim.api.nvim_set_hl(0, "DashboardShortCut", { fg = colors.crust }) + + vim.api.nvim_set_hl(0, "BlinkCmpMenu", { fg = colors.text, bg = "none" }) + + vim.api.nvim_set_hl(0, "BlinkCmpMenuBorder", { link = "FloatBorder" }) + vim.api.nvim_set_hl(0, "BlinkCmpDocBorder", { link = "FloatBorder" }) + vim.api.nvim_set_hl(0, "BlinkCmpSignatureHelpBorder", { link = "FloatBorder" }) + + vim.api.nvim_set_hl(0, "BlinkCmpLabelMatch", { fg = colors.blue, bg = "none" }) + vim.api.nvim_set_hl(0, "BlinkCmpLabel", { bg = "none" }) + vim.api.nvim_set_hl(0, "BlinkCmpMenuSelection", { bg = "none" }) + vim.api.nvim_set_hl(0, "BlinkCmpKind", { link = "BlinkCmpLabel" }) + + vim.api.nvim_set_hl(0, "BlinkCmpGhostText", { fg = colors.overlay0 }) + + vim.api.nvim_set_hl(0, "BlinkCmpKindTypeParameter", { link = "@variable.parameter" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindConstructor", { link = "@type" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindEnumMember", { link = "@variable.member" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindReference", { link = "@variable.parameter.reference" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindInterface", { link = "@type" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindVariable", { link = "@variable" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindProperty", { link = "@property" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindOperator", { link = "@operator" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindFunction", { link = "@function" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindConstant", { link = "@constant" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindSnippet", { link = "@markup" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindKeyword", { link = "@keyword" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindStruct", { link = "@structure" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindModule", { link = "@module" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindMethod", { link = "@function.method" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindFolder", { link = "TSURI" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindValue", { link = "@variable.member" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindField", { link = "@variable.member" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindEvent", { link = "@constant" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindColor", { link = "DevIconCss" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindClass", { link = "@type" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindUnit", { link = "@variable.member" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindText", { link = "@markup" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindFile", { link = "TSURI" }) + vim.api.nvim_set_hl(0, "BlinkCmpKindEnum", { link = "@variable.member" }) + + vim.api.nvim_set_hl(0, "SnippetTabstop", { bg = "none" }) end, }, } diff --git a/lua/409/plugins/util.lua b/lua/409/plugins/util.lua index aeff0cb..cfd8c47 100644 --- a/lua/409/plugins/util.lua +++ b/lua/409/plugins/util.lua @@ -22,7 +22,7 @@ return { dependencies = { "nvim-tree/nvim-web-devicons" }, event = "VeryLazy", config = function() - local theme_colors = require("dracula").colors() + local theme_colors = require("catppuccin.palettes").get_palette('mocha') require("tiny-devicons-auto-colors").setup({ colors = theme_colors,