on main help sign in
fix(lsp): improve auto discovery (#2086)
46068b8Carlos Alexandro Becker
internal/lsp/client.go+10−5
@@ -591,12 +591,17 @@ func FilterMatching(dir string, servers map[string]*powernapconfig.ServerConfig)
591 }
591 }
592 normalized := make(map[string]serverPatterns, len(servers))
592 normalized := make(map[string]serverPatterns, len(servers))
593 for name, server := range servers {
593 for name, server := range servers {
594+ var patterns []string
594− if len(server.RootMarkers) == 0 {
595+ for _, p := range server.RootMarkers {
596+ if p == ".git" {
597+ // ignore .git for discovery
595− continue
598+ continue
599+ }
600+ patterns = append(patterns, filepath.ToSlash(p))
596 }
601 }
597− patterns := make([]string, len(server.RootMarkers))
602+ if len(patterns) == 0 {
598− for i, p := range server.RootMarkers {
603+ slog.Debug("ignoring lsp with no root markers", "name", name)
599− patterns[i] = filepath.ToSlash(p)
604+ continue
600 }
605 }
601 normalized[name] = serverPatterns{server: server, patterns: patterns}
606 normalized[name] = serverPatterns{server: server, patterns: patterns}
602 }
607 }