local lsp = require("lsp-zero").preset({}) lsp.on_attach(function(client, b) local nmap = function(keys, func, desc) vim.keymap.set("n", keys, func, { buffer = b, desc = desc }) end nmap("", vim.lsp.buf.rename, "Rename symbol") nmap("ca", vim.lsp.buf.code_action, "Code action") nmap("", vim.lsp.buf.definition, "Go to definition") nmap("fr", require("telescope.builtin").lsp_references, "Find references") nmap("", require("telescope.builtin").lsp_document_symbols, "Find document symbols") nmap("", vim.lsp.buf.hover, "Signature help") end) lsp.ensure_installed({ "clangd", }) require("lspconfig").clangd.setup({ cmd = { "C:\\Program Files\\LLVM-15\\bin\\clangd.exe" }, }) lsp.setup() require("cmp").setup({ mapping = { [''] = require("cmp").mapping.confirm({ select = true }), [''] = require("cmp").mapping.abort(), } })