vim.pack.add({ 'https://github.com/neovim/nvim-lspconfig' }) vim.pack.add({ 'https://github.com/j-hui/fidget.nvim' }) require("fidget").setup() vim.lsp.enable({ 'lua_ls' }) vim.lsp.enable({ 'clangd' }) vim.lsp.enable({ 'spade_ls' }) -- vim.lsp.enable({ 'metals' }) vim.lsp.config("rust_analyzer", { settings = { ["rust-analyzer"] = { completion = { postfix = { enable = true, }, }, check = { command = "clippy", }, } }, } ) vim.lsp.enable('rust_analyzer') vim.keymap.set("n", "t", vim.diagnostic.open_float) vim.keymap.set("n", "sr", vim.lsp.buf.rename) vim.keymap.set("n", "gD", vim.lsp.buf.declaration, opts) vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts) vim.keymap.set("n", "gi", vim.lsp.buf.implementation, opts) vim.keymap.set("n", "ca", vim.lsp.buf.code_action, opts) vim.keymap.set("v", "ca", vim.lsp.buf.code_action, opts) vim.keymap.set("n", "f", function() vim.lsp.buf.format({ async = true }) end, opts) vim.keymap.set("n", "K", vim.lsp.buf.hover, opts) vim.lsp.inlay_hint.enable(false, nil)