diff --git a/nvim/.config/nvim/lsp/clangd.lua b/nvim/.config/nvim/lsp/clangd.lua index 59b330a..23a4898 100644 --- a/nvim/.config/nvim/lsp/clangd.lua +++ b/nvim/.config/nvim/lsp/clangd.lua @@ -1,6 +1,6 @@ ---@type vim.lsp.Config return { cmd = { 'clangd' }, - filetypes = { 'c', 'h' }, + filetypes = { 'c', 'h', 'cpp' }, root_markers = { 'Makefile', '.git' }, } diff --git a/nvim/.config/nvim/lua/keymaps.lua b/nvim/.config/nvim/lua/keymaps.lua index fb23463..4bec0f6 100644 --- a/nvim/.config/nvim/lua/keymaps.lua +++ b/nvim/.config/nvim/lua/keymaps.lua @@ -8,7 +8,9 @@ keymap("v", "J", ":m '>+1gv=gv") keymap("v", "K", ":m '<-2gv=gv") for _, k in ipairs({ "h", "j", "k", "l" }) do - keymap({ "n", "i", "v" }, "", "") + keymap({ "n", "i", "v" }, "", "") end keymap("n", "f", ":Pick files") + +keymap("n", "lf", vim.lsp.buf.format) diff --git a/nvim/.config/nvim/lua/plugins.lua b/nvim/.config/nvim/lua/plugins.lua index 2efa5b1..b5c155f 100644 --- a/nvim/.config/nvim/lua/plugins.lua +++ b/nvim/.config/nvim/lua/plugins.lua @@ -1,12 +1,57 @@ vim.g.mapleader = " " vim.pack.add { - { src = "https://github.com/mason-org/mason.nvim" }, - { src = "https://github.com/scottmckendry/cyberdream.nvim" }, - { src = "https://github.com/nvim-mini/mini.pick" }, + { src = "https://github.com/mason-org/mason.nvim" }, + { src = "https://github.com/scottmckendry/cyberdream.nvim" }, + { src = "https://github.com/nvim-mini/mini.pick" }, + { src = "https://github.com/rafamadriz/friendly-snippets" }, + { + src = "https://github.com/saghen/blink.cmp", + version = "1.*", + }, } require("mason").setup {} require("mini.pick").setup {} vim.cmd("colorscheme cyberdream") + +require('blink.cmp').setup { + fuzzy = { implementation = 'prefer_rust_with_warning' }, + signature = { enabled = true }, + keymap = { + preset = "default", + [""] = { "select_and_accept" }, + [""] = { "select_prev", "fallback" }, + [""] = { "select_next", "fallback" }, + [""] = { "scroll_documentation_down", "fallback" }, + [""] = { "scroll_documentation_up", "fallback" }, + -- [""] = { "hide" }, + }, + + appearance = { + use_nvim_cmp_as_default = true, + nerd_font_variant = "normal", + }, + + completion = { + documentation = { + auto_show = true, + auto_show_delay_ms = 200, + } + }, + + cmdline = { + keymap = { + preset = 'inherit', + [''] = { 'accept_and_enter', 'fallback' }, + }, + }, + + sources = { + default = { "lsp", "snippets" }, + providers = { + snippets = { opts = { friendly_snippets = true, } } + } + } +} diff --git a/nvim/.config/nvim/nvim-pack-lock.json b/nvim/.config/nvim/nvim-pack-lock.json index 9effd58..23626f6 100644 --- a/nvim/.config/nvim/nvim-pack-lock.json +++ b/nvim/.config/nvim/nvim-pack-lock.json @@ -1,15 +1,24 @@ { "plugins": { + "blink.cmp": { + "rev": "d0c5196dae32c53cde1208161554906f5b982de8", + "src": "https://github.com/saghen/blink.cmp", + "version": "'1.*'" + }, "cyberdream.nvim": { "rev": "a43b45423e8494898c353c0604e0b2e4e99bd056", "src": "https://github.com/scottmckendry/cyberdream.nvim" }, + "friendly-snippets": { + "rev": "572f5660cf05f8cd8834e096d7b4c921ba18e175", + "src": "https://github.com/rafamadriz/friendly-snippets" + }, "mason.nvim": { "rev": "57e5a8addb8c71fb063ee4acda466c7cf6ad2800", "src": "https://github.com/mason-org/mason.nvim" }, "mini.pick": { - "rev": "c488bbaa74b4b9e9ba49ebaffdd9f19b15b64a4f", + "rev": "0c56dc3ef9b15e9659ce09331fdc82449349701b", "src": "https://github.com/nvim-mini/mini.pick" }, "simplyfile.nvim": {