diff options
| -rw-r--r-- | complete.go | 18 |
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 } |
