diff --git a/command_setup.go b/command_setup.go index 69b3ca198c..060b9ba9ba 100644 --- a/command_setup.go +++ b/command_setup.go @@ -88,7 +88,7 @@ func (cmd *Command) setupDefaults(osArgs []string) { cmd.SuggestCommandFunc = suggestCommand } - if cmd.EnableShellCompletion || cmd.Root().shellCompletion { + if isRoot && cmd.EnableShellCompletion { completionCommand := buildCompletionCommand(cmd.Name) if cmd.ShellCompletionCommandName != "" { diff --git a/completion.go b/completion.go index d778380474..789c9d0a7a 100644 --- a/completion.go +++ b/completion.go @@ -30,7 +30,7 @@ var ( return fmt.Sprintf(string(b), appName), err }, "fish": func(c *Command, appName string) (string, error) { - return c.ToFishCompletion() + return c.Root().ToFishCompletion() }, "pwsh": func(c *Command, appName string) (string, error) { b, err := autoCompleteFS.ReadFile("autocomplete/powershell_autocomplete.ps1")