summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--complete.go18
1 files changed, 11 insertions, 7 deletions
diff --git a/complete.go b/complete.go
index 3854002..5002b3d 100644
--- a/complete.go
+++ b/complete.go
@@ -26,7 +26,7 @@ func (p *Parser) WriteHelpForAutocompleteArgv() error {
// same as WriteHelpForSubcommand above, but can flip to STDERR and STDOUT
// most shell autocomplete behavior usually wants things that way
-func (p *Parser) WriteHelpForAutocomplete(partial string, subcommand ...string) error {
+func (p *Parser) WriteHelpForAutocomplete(partialOld string, subcommand ...string) error {
var automatch []string
fmt.Fprintf(argvpb.Stderr, "go-args.WriteHelpForAutocomplete() sub(%v)\n", subcommand)
// return errors.New("subcommand was nil")
@@ -38,6 +38,7 @@ func (p *Parser) WriteHelpForAutocomplete(partial string, subcommand ...string)
}
cmd, err := p.lookupCommand(subcommand...)
if err != nil {
+ fmt.Fprintf(argvpb.Stderr, "go-args.WriteHelpForAutocomplete() lookupCommand failed err(%v)\n", err)
return err
}
@@ -104,9 +105,9 @@ func (p *Parser) WriteHelpForAutocomplete(partial string, subcommand ...string)
p.printOption(argvpb.Stderr, spec)
//jwc
tmp := "--" + spec.long
- if strings.HasPrefix(tmp, partial) {
- automatch = append(automatch, tmp)
- }
+ // if strings.HasPrefix(tmp, partial) {
+ automatch = append(automatch, tmp)
+ // }
}
}
@@ -149,9 +150,9 @@ func (p *Parser) WriteHelpForAutocomplete(partial string, subcommand ...string)
for _, subcmd := range cmd.subcommands {
names := append([]string{subcmd.name}, subcmd.aliases...)
print(argvpb.Stderr, strings.Join(names, ", "), subcmd.help)
- if strings.HasPrefix(subcmd.name, partial) {
- automatch = append(automatch, subcmd.name)
- }
+ // if strings.HasPrefix(subcmd.name, partial) {
+ automatch = append(automatch, subcmd.name)
+ // }
}
}
@@ -159,9 +160,12 @@ func (p *Parser) WriteHelpForAutocomplete(partial string, subcommand ...string)
fmt.Fprintln(argvpb.Stderr, "\n"+p.epilogue)
}
+ fmt.Fprintf(argvpb.Stderr, "go-args.WriteHelpForAutocomplete() got to the end automatch(%v)\n", automatch)
// writes out the shell autocomplete matches
if len(automatch) > 0 {
fmt.Fprintf(argvpb.Stdout, "%s", strings.Join(automatch, " "))
+ } else {
+ fmt.Fprintf(argvpb.Stdout, "automatchBlank")
}
return nil
}