From 747771e5fc476806aca035a535780a91dddc52e4 Mon Sep 17 00:00:00 2001 From: Tovi Jaeschke-Rogers Date: Thu, 19 Dec 2024 15:55:03 +1030 Subject: [PATCH] feat: change to blink --- .config/nvim/lua/plugins/cmp.lua | 22 ++++++ .config/nvim/lua/plugins/lspconfig.lua | 18 ++--- .config/nvim/lua/plugins/nvim-cmp.lua | 99 -------------------------- .tmux.conf | 1 - 4 files changed, 27 insertions(+), 113 deletions(-) create mode 100644 .config/nvim/lua/plugins/cmp.lua delete mode 100644 .config/nvim/lua/plugins/nvim-cmp.lua diff --git a/.config/nvim/lua/plugins/cmp.lua b/.config/nvim/lua/plugins/cmp.lua new file mode 100644 index 0000000..46c0b96 --- /dev/null +++ b/.config/nvim/lua/plugins/cmp.lua @@ -0,0 +1,22 @@ +return { + 'saghen/blink.cmp', + dependencies = { + 'rafamadriz/friendly-snippets', + }, + + version = 'v0.*', + opts = { + appearance = { + use_nvim_cmp_as_default = true, + nerd_font_variant = 'mono' + }, + + sources = { + default = { 'lsp', 'path', 'snippets', 'buffer' }, + }, + signature = { + enabled = true, + }, + }, + opts_extend = { "sources.default" } +} diff --git a/.config/nvim/lua/plugins/lspconfig.lua b/.config/nvim/lua/plugins/lspconfig.lua index 2a41ae1..fe89248 100644 --- a/.config/nvim/lua/plugins/lspconfig.lua +++ b/.config/nvim/lua/plugins/lspconfig.lua @@ -2,7 +2,6 @@ return { "neovim/nvim-lspconfig", event = { "BufReadPre", "BufNewFile" }, dependencies = { - { "hrsh7th/cmp-nvim-lsp" }, { "antosha417/nvim-lsp-file-operations", config = true }, { "williamboman/mason.nvim", config = true }, { "williamboman/mason-lspconfig.nvim" }, @@ -75,22 +74,15 @@ return { end, }) end - - -- The following autocommand is used to enable inlay hints in your - -- code, if the language server you are using supports them - -- - -- This may be unwanted, since they displace some of your code - if client and client.server_capabilities.inlayHintProvider and vim.lsp.inlay_hint then - opts.desc = "Toggle Inlay Hints" - keymap.set("n", "th", function() - vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled({})) - end, opts) - end end, }) local capabilities = vim.lsp.protocol.make_client_capabilities() - capabilities = vim.tbl_deep_extend("force", capabilities, require("cmp_nvim_lsp").default_capabilities()) + capabilities = vim.tbl_deep_extend( + "force", + require('blink.cmp').get_lsp_capabilities(), + capabilities + ) local base_path = "" if (vim.loop.fs_stat("/usr/lib/node_modules")) then diff --git a/.config/nvim/lua/plugins/nvim-cmp.lua b/.config/nvim/lua/plugins/nvim-cmp.lua deleted file mode 100644 index 76b2b10..0000000 --- a/.config/nvim/lua/plugins/nvim-cmp.lua +++ /dev/null @@ -1,99 +0,0 @@ -return { - "hrsh7th/nvim-cmp", - event = "InsertEnter", - dependencies = { - { - "L3MON4D3/LuaSnip", - build = (function() - if vim.fn.has("win32") == 1 or vim.fn.executable("make") == 0 then - return - end - return "make install_jsregexp" - end)(), - dependencies = { - { - "rafamadriz/friendly-snippets", - config = function() - require("luasnip.loaders.from_vscode").lazy_load() - end, - }, - }, - }, - "saadparwaiz1/cmp_luasnip", - - "onsails/lspkind.nvim", - - "hrsh7th/cmp-nvim-lsp", - "hrsh7th/cmp-buffer", - "hrsh7th/cmp-path", - "hrsh7th/cmp-nvim-lsp-signature-help", - - "Snikimonkd/cmp-go-pkgs", - }, - config = function() - local cmp = require("cmp") - local luasnip = require("luasnip") - local lspkind = require("lspkind") - luasnip.config.setup({}) - - cmp.setup({ - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) - end, - }, - completion = { - completeopt = "menu,menuone,noinsert", - }, - mapping = cmp.mapping.preset.insert({ - [""] = cmp.mapping.select_next_item(), - [""] = cmp.mapping.select_prev_item(), - [""] = cmp.mapping.scroll_docs(-4), - [""] = cmp.mapping.scroll_docs(4), - [""] = cmp.mapping.confirm({ select = true }), - [""] = cmp.mapping.complete({}), - [""] = cmp.mapping(function() - if luasnip.expand_or_locally_jumpable() then - luasnip.expand_or_jump() - end - end, { "i", "s" }), - [""] = cmp.mapping(function() - if luasnip.locally_jumpable(-1) then - luasnip.jump(-1) - end - end, { "i", "s" }), - }), - sources = { - { name = "nvim_lsp" }, - { name = "luasnip" }, - { name = "buffer" }, - { name = "path" }, - { name = "go_pkgs" }, - }, - matching = { - disallow_fullfuzzy_matching = false, - disallow_partial_fuzzy_matching = false, - disallow_fuzzy_matching = false, - disallow_partial_matching = false, - disallow_symbol_nonprefix_matching = false, - disallow_prefix_unmatching = false, - }, - formatting = { - expandable_indicator = true, - fields = { "abbr", "kind", "menu" }, - format = lspkind.cmp_format({ - with_text = true, - mode = "symbol_text", - menu = { - nvim_lua = "[API]", - nvim_lsp = "[LSP]", - luasnip = "[SNIP]", - path = "[PATH]", - buffer = "[BUFF]", - go_pkgs = "[PKGS]", - }, - }), - }, - }) - end, -} diff --git a/.tmux.conf b/.tmux.conf index 804c15e..6d5b870 100644 --- a/.tmux.conf +++ b/.tmux.conf @@ -67,7 +67,6 @@ set -g mouse on unbind -T copy-mode-vi MouseDragEnd1Pane bind S command-prompt -p "New Session:" "new-session -A -s '%%'" -bind K confirm kill-session bind-key -r f run-shell "tmux neww ~/.local/bin/tmux-sessionizer"