@@ -141,6 +141,15 @@ var skipAutoStartCommands = map[string]bool{
143func (s *Manager) startServer(ctx context.Context, name, filepath string, server *powernapconfig.ServerConfig) {
143func (s *Manager) startServer(ctx context.Context, name, filepath string, server *powernapconfig.ServerConfig) {
145+ isUserConfigured = s.isUserConfigured(name)
146+ autoLSP = s.cfg.Config().Options.AutoLSP
148+ if !isUserConfigured && autoLSP != nil && !*autoLSP {
149+ slog.Debug("Auto-start LSP disabled", "name", name)
144 cfg := s.buildConfig(name, server)
153 cfg := s.buildConfig(name, server)
145 if cfg.Disabled {
154 if cfg.Disabled {
@@ -159,9 +168,7 @@ func (s *Manager) startServer(ctx context.Context, name, filepath string, server
162− userConfigured := s.isUserConfigured(name)
171+ if !isUserConfigured {
164− if !userConfigured {
165 if _, err := exec.LookPath(server.Command); err != nil {
172 if _, err := exec.LookPath(server.Command); err != nil {
166 slog.Debug("LSP server not installed, skipping", "name", name, "command", server.Command)
173 slog.Debug("LSP server not installed, skipping", "name", name, "command", server.Command)
167 unavailable.Set(name, struct{}{})
174 unavailable.Set(name, struct{}{})