diff options
| author | Jeff Carr <[email protected]> | 2025-09-08 15:36:32 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-09-08 15:36:32 -0500 |
| commit | 4c5ded025f33fd19ae14362e9203e130cd0a0ee3 (patch) | |
| tree | b2676800ed895bb91b2ff66a568e8482292803e5 /argv.go | |
| parent | 192fd065ddf9cf4fffc04ca834b230280b2f5468 (diff) | |
use standard bash stuff
Diffstat (limited to 'argv.go')
| -rw-r--r-- | argv.go | 41 |
1 files changed, 41 insertions, 0 deletions
@@ -6,6 +6,9 @@ package main */ import ( + "fmt" + "os" + "go.wit.com/dev/alexflint/arg" ) @@ -35,3 +38,41 @@ func (args) Version() string { func init() { arg.MustParse(&argv) } + +// prints help to STDERR // TODO: move everything below this to go-args +func (args) doBashHelp() { + if len(argv.BashAuto) < 2 { + fmt.Fprintf(os.Stderr, "something went wrong with the GO args autocomplete in %s\n", ARGNAME) + return + } + if argv.BashAuto[1] != "''" { + // if this is not blank, then the user has typed something + return + } + if argv.BashAuto[0] != ARGNAME { + fmt.Fprintln(os.Stderr, argv.BashAuto[0]) + // if this is not the name of the command, the user already started doing something + return + } + if argv.BashAuto[0] == ARGNAME { + me.pp.WriteHelp(os.Stderr) + return + } + fmt.Fprintln(os.Stderr, "") + fmt.Fprintln(os.Stderr, "something went wrong with the GO args package") + fmt.Fprintln(os.Stderr, "") +} + +func (args) doBashAuto() { + // argv.doBashHelp() + switch argv.BashAuto[0] { + case "merge": + fmt.Println("--force") + default: + if argv.BashAuto[0] == ARGNAME { + // list the subcommands here + fmt.Println("list merge") + } + } + os.Exit(0) +} |
