aboutsummaryrefslogtreecommitdiffstats
path: root/lsp/expert.lua
diff options
context:
space:
mode:
authorMinh Khoi Do <107194093+khoido2003@users.noreply.github.com>2025-09-03 22:09:46 +0700
committerGitHub <noreply@github.com>2025-09-03 08:09:46 -0700
commit5d785f0e9fd95124fa6332ebc30d66607ea3ca76 (patch)
tree058a902972321afbe012738271233ea69701df2c /lsp/expert.lua
parentfeat(biome,eslint,svelte,ts_ls,tsgo,vtsls): add deno.lock root marker #4051 (diff)
downloadnvim-lspconfig-5d785f0e9fd95124fa6332ebc30d66607ea3ca76.tar
nvim-lspconfig-5d785f0e9fd95124fa6332ebc30d66607ea3ca76.tar.gz
nvim-lspconfig-5d785f0e9fd95124fa6332ebc30d66607ea3ca76.tar.bz2
nvim-lspconfig-5d785f0e9fd95124fa6332ebc30d66607ea3ca76.tar.lz
nvim-lspconfig-5d785f0e9fd95124fa6332ebc30d66607ea3ca76.tar.xz
nvim-lspconfig-5d785f0e9fd95124fa6332ebc30d66607ea3ca76.tar.zst
nvim-lspconfig-5d785f0e9fd95124fa6332ebc30d66607ea3ca76.zip
feat(roslyn_ls): support override completion and refresh diagnostics #4050
Problem: - Diagnostics were only refreshed for the current buffer, not all buffers managed by the client. In multi-file C# projects, this left diagnostics stale unless the user switched buffers. - Roslyn did not handle override method completion correctly. Solution: - Added `roslyn.client.completionComplexEdit` handler to apply edits for override completions. - Added `refresh_diagnostics` function, called on project initialization and on `BufWritePost` / `InsertLeave` events, to proactively pull diagnostics for all client buffers. Rationale: - Roslyn LSP primarily uses pull-based diagnostics. Neovim currently only triggers diagnostic pulls on text changes in the active buffer. This makes `debounce_text_changes` insufficient for Roslyn, as changes in one file can affect diagnostics across the entire solution. - The autocmds act as a server-specific workaround to mimic an “on-save/on-idle” pull model.
Diffstat (limited to 'lsp/expert.lua')
0 files changed, 0 insertions, 0 deletions