Files
cheat/internal/completions/paths.go
Christopher Allen Lane 9b92261604 feat: migrate from docopt to cobra for CLI argument parsing
Replace docopt-go with spf13/cobra, giving cheat a built-in
`--completion` flag that dynamically generates shell completions for
bash, zsh, fish, and powershell. This replaces the manually-maintained
static completion scripts and resolves the root cause of multiple
completion issues (#768, #705, #633, #632, #476).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 18:19:20 -05:00

26 lines
480 B
Go

package completions
import (
"github.com/spf13/cobra"
)
// Paths provides completion for the --path flag.
func Paths(
_ *cobra.Command,
_ []string,
_ string,
) ([]string, cobra.ShellCompDirective) {
conf, err := loadConfig()
if err != nil {
return nil, cobra.ShellCompDirectiveNoFileComp
}
names := make([]string, 0, len(conf.Cheatpaths))
for _, cp := range conf.Cheatpaths {
names = append(names, cp.Name)
}
return names, cobra.ShellCompDirectiveNoFileComp
}