From 0e640a1f32215bd9cac244ca8722febf20591709 Mon Sep 17 00:00:00 2001 From: Bruno Krugel Date: Fri, 27 Mar 2026 17:28:19 -0300 Subject: [PATCH] fix(lsp): respect lsp auto start config (#2487) --- internal/lsp/manager.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/internal/lsp/manager.go b/internal/lsp/manager.go index b564c0e602c0234462a32cfaae67c8f8179551c4..a7e497331899a1377c002f892be005c71e2e86d5 100644 --- a/internal/lsp/manager.go +++ b/internal/lsp/manager.go @@ -141,6 +141,15 @@ var skipAutoStartCommands = map[string]bool{ } func (s *Manager) startServer(ctx context.Context, name, filepath string, server *powernapconfig.ServerConfig) { + var ( + isUserConfigured = s.isUserConfigured(name) + autoLSP = s.cfg.Config().Options.AutoLSP + ) + if !isUserConfigured && autoLSP != nil && !*autoLSP { + slog.Debug("Auto-start LSP disabled", "name", name) + return + } + cfg := s.buildConfig(name, server) if cfg.Disabled { return @@ -159,9 +168,7 @@ func (s *Manager) startServer(ctx context.Context, name, filepath string, server } } - userConfigured := s.isUserConfigured(name) - - if !userConfigured { + if !isUserConfigured { if _, err := exec.LookPath(server.Command); err != nil { slog.Debug("LSP server not installed, skipping", "name", name, "command", server.Command) unavailable.Set(name, struct{}{})