fix(nixvim): eliminate per-keystroke LSP completion latency

- drop lsp-lines (redundant with tiny-inline-diagnostic; double diagnostic virtual-text redraw per keystroke)
- drop nvim_lsp_signature_help cmp source (extra server request per keystroke; <C-k> keymap covers it)
- remove cmp-nvim-lsp-signature-help plugin (now unused)
- disable LSP client file logging (nixd/svelte stderr spam was writing 5MB+ logs on the main loop)
- disable rust-analyzer semantic tokens (ContentModified retry loop while typing)
This commit is contained in:
2026-08-09 00:23:11 +01:00
parent d6ae3a5d1b
commit 9a77bf305e
+7 -6
View File
@@ -123,6 +123,11 @@
};
lsp = {
enable = true;
onAttach = ''
if client.name == "rust-analyzer" then
client.server_capabilities.semanticTokensProvider = nil
end
'';
servers = {
# qmlls = {
# enable = true;
@@ -224,7 +229,6 @@
};
};
};
lsp-lines.enable = true;
trouble = {
enable = true;
settings = {
@@ -257,10 +261,6 @@
name = "nvim_lsp";
priority = 100;
}
{
name = "nvim_lsp_signature_help";
priority = 90;
}
{
name = "luasnip";
priority = 75;
@@ -340,7 +340,6 @@
};
};
extraPlugins = with pkgs; [
vimPlugins.cmp-nvim-lsp-signature-help
tiny-code-action
];
opts = {
@@ -355,6 +354,8 @@
mapleader = " ";
};
extraConfigLua = ''
-- LSP client writes server stderr + errors to disk on the main loop; nixd spams info logs -> 5MB+ logs. Kill it.
vim.lsp.set_log_level("off")
-- tree-sitter-nix uses (#is-not? local) which the new nvim-treesitter main branch no longer registers
vim.treesitter.query.add_predicate("is-not?", function() return true end, { force = true })