diff options
| author | Jeff Carr <[email protected]> | 2025-09-18 15:27:27 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-09-18 15:27:27 -0500 |
| commit | b72816f19308d042abc92553538b91243a9c4db3 (patch) | |
| tree | 66033b12d25268594e3558ace5911d2ea38cd2c0 | |
| parent | 8ecad2c6af8d9086e9829ee6403c7fb9a084ee77 (diff) | |
add function for autocomplete
| -rw-r--r-- | Makefile | 4 | ||||
| -rw-r--r-- | parse.go | 10 |
2 files changed, 11 insertions, 3 deletions
@@ -1,6 +1,4 @@ -all: - @echo - @echo +all: goimports vet clean: rm -f go.* @@ -124,6 +124,16 @@ func Parse(dest ...interface{}) error { return p.Parse(flags()) } +// pass in a "pretend" os.Args. Used for bash autocomplete +func ParseFlags(flags []string, dest ...interface{}) (*Parser, error) { + p, err := NewParser(Config{}, dest...) + if err != nil { + return p, err + } + err = p.Parse(flags) + return p, err +} + // flags gets all command line arguments other than the first (program name) func flags() []string { if len(os.Args) == 0 { // os.Args could be empty |
