fix(lsp): disable didChangeWatchedFiles on Linux

Problem:

The file watcher backends for Linux have too many limitations and
doesn't work reliably.

Solution:

disable didChangeWatchedFiles on Linux

Ref: #27807, #28058, #23291, #26520
This commit is contained in:
Lewis Russell
2024-05-10 13:47:30 +01:00
committed by Lewis Russell
parent ca735c7554
commit c1a95d9653
3 changed files with 9 additions and 6 deletions

View File

@@ -10,6 +10,8 @@ local function get_value_set(tbl)
return value_set
end
local sysname = vim.uv.os_uname().sysname
-- Protocol for the Microsoft Language Server Protocol (mslsp)
local protocol = {}
@@ -835,7 +837,10 @@ function protocol.make_client_capabilities()
refreshSupport = true,
},
didChangeWatchedFiles = {
dynamicRegistration = true,
-- TODO(lewis6991): do not advertise didChangeWatchedFiles on Linux
-- or BSD since all the current backends are too limited.
-- Ref: #27807, #28058, #23291, #26520
dynamicRegistration = sysname == 'Darwin' or sysname == 'Windows_NT',
relativePatternSupport = true,
},
inlayHint = {