Files
dotfiles/config/nvim/lua/lsp/rust-analyzer.lua
2022-07-09 11:32:27 +05:30

44 lines
1.1 KiB
Lua

local lspconfig = require'lspconfig'
local lspstatus = require'lsp-status'
local coq = require'coq'
lspconfig.rust_analyzer.setup{
on_attach=function(client) lspstatus.on_attach(client) end,
capabilities = coq.lsp_ensure_capabilities(lspstatus.capabilities),
cmd = { "rust-analyzer" },
filetypes = { "rust" },
root_dir = lspconfig.util.root_pattern("Cargo.toml"),
settings = {
["rust-analyzer"] = {
lruCapacity = 64,
assist = {
importGranularity = "module",
importPrefix = "by_crate",
},
procMacro = {
enable = true,
},
checkOnSave = {
command = "clippy",
allTargets = false,
},
cargo = {
loadOutDirsFromCheck = true,
-- allFeatures = true,
},
completion = {
autoimport = {
enable = true,
}
},
diagnostics = {
disabled = {
"unresolved-macro-call"
}
}
}
},
}