mirror of
https://github.com/neovim/neovim.git
synced 2025-10-21 17:21:49 +00:00
fix(lsp): detach spawned LSP server processes (#18477)
LSP servers should be daemonized (detached) so that they run in a separate process group from Neovim's. Among other things, this ensures the process does not inherit Neovim's TTY (#18475). Make this configurable so that clients can explicitly opt-out of detaching from Nvim.
This commit is contained in:
@@ -319,10 +319,14 @@ local function start(cmd, cmd_args, dispatchers, extra_spawn_params)
|
||||
local spawn_params = {
|
||||
args = cmd_args;
|
||||
stdio = {stdin, stdout, stderr};
|
||||
detached = true;
|
||||
}
|
||||
if extra_spawn_params then
|
||||
spawn_params.cwd = extra_spawn_params.cwd
|
||||
spawn_params.env = env_merge(extra_spawn_params.env)
|
||||
if extra_spawn_params.detached ~= nil then
|
||||
spawn_params.detached = extra_spawn_params.detached
|
||||
end
|
||||
end
|
||||
handle, pid = uv.spawn(cmd, spawn_params, onexit)
|
||||
if handle == nil then
|
||||
|
Reference in New Issue
Block a user