Files
dotfiles/dot_config/nvim/lua/lsp/rust_analyzer.lua
s0wlz (Matthias Puchstein) ca2b441bb7 nvim,tmux,kitty: full config overhaul (AstroNvim → native 0.12)
Replaces AstroNvim v5 with from-scratch Neovim 0.12 config using
vim.lsp.config()/vim.lsp.enable() natively, lazy.nvim, blink.cmp,
and smart-splits tmux integration.

tmux: new C-Space prefix, hjkl pane nav, resize key table, tpm plugins.
kitty: add allow_remote_control for smart-splits.
2026-04-09 23:30:34 +02:00

41 lines
1.1 KiB
Lua

vim.lsp.config("rust_analyzer", {
settings = {
["rust-analyzer"] = {
cargo = {
allFeatures = true,
loadOutDirsFromCheck = true,
runBuildScripts = true,
},
checkOnSave = {
allFeatures = true,
command = "clippy",
extraArgs = { "--no-deps" },
},
procMacro = {
enable = true,
ignored = {
["async-trait"] = { "async_trait" },
["napi-derive"] = { "napi" },
["async-recursion"] = { "async_recursion" },
},
},
inlayHints = {
bindingModeHints = { enable = false },
closingBraceHints = { minLines = 25 },
lifetimeElisionHints = { enable = "never" },
typeHints = { enable = true },
},
},
},
})
-- Support project-local override (e.g. Tauri: root_dir = src-tauri/)
local local_cfg_path = vim.fn.getcwd() .. "/.nvim.lua"
local local_cfg = vim.secure.read(local_cfg_path)
if local_cfg then
local ok, err = pcall(loadstring(local_cfg))
if not ok then
vim.notify("rust_analyzer local config error: " .. tostring(err), vim.log.levels.WARN)
end
end