@@ -351,10 +351,13 @@ func (c *Config) applyLSPDefaults() {
352 // Apply defaults to each LSP configuration
352 // Apply defaults to each LSP configuration
353 for name, cfg := range c.LSP {
353 for name, cfg := range c.LSP {
354− // Try to get defaults from powernap based on command name
354+ // Try to get defaults from powernap based on name or command name.
355 base, ok := configManager.GetServer(name)
355 base, ok := configManager.GetServer(name)
357+ base, ok = configManager.GetServer(cfg.Command)
357− continue
359+ continue
359 if cfg.Options == nil {
362 if cfg.Options == nil {
360 cfg.Options = base.Settings
363 cfg.Options = base.Settings
@@ -368,6 +371,12 @@ func (c *Config) applyLSPDefaults() {
368 if len(cfg.RootMarkers) == 0 {
371 if len(cfg.RootMarkers) == 0 {
369 cfg.RootMarkers = base.RootMarkers
372 cfg.RootMarkers = base.RootMarkers
374+ if len(cfg.Args) == 0 {
375+ cfg.Args = base.Args
377+ if len(cfg.Env) == 0 {
378+ cfg.Env = base.Environment
371 // Update the config in the map
380 // Update the config in the map
372 c.LSP[name] = cfg
381 c.LSP[name] = cfg