summaryrefslogtreecommitdiff
path: root/argv.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-09-09 06:16:41 -0500
committerJeff Carr <[email protected]>2025-09-09 06:16:41 -0500
commit8ab09243500576460a9e5b12cae0b997933d6577 (patch)
tree07a8b5113c812f0cc31d301f2784ef9e48b92d90 /argv.go
parent58e2a02c5bffdab2eac0da83c3810f1d808da7df (diff)
Diffstat (limited to 'argv.go')
-rw-r--r--argv.go38
1 files changed, 32 insertions, 6 deletions
diff --git a/argv.go b/argv.go
index f434ca3..deffbb2 100644
--- a/argv.go
+++ b/argv.go
@@ -9,18 +9,25 @@ package main
*/
import (
+ "fmt"
+ "os"
+
"go.wit.com/log"
)
var argv args
type args struct {
- Verbose bool `arg:"--verbose" help:"talk more"`
- Daemon bool `arg:"--daemon" default:"false" help:"run in daemon mode"`
- UseME bool `arg:"--me" help:"use /me to connect"`
- Port int `arg:"--port" default:"2522" help:"port to run on"`
- URL string `arg:"--url" help:"url to use"`
- Config string `arg:"--config" help:"config file (default is ~/.config/cloud/gus.text"`
+ Gui *EmptyCmd `arg:"subcommand:gui" help:"open the gui"`
+ Verbose bool `arg:"--verbose" help:"talk more"`
+ Daemon bool `arg:"--daemon" default:"false" help:"run in daemon mode"`
+ UseME bool `arg:"--me" help:"use /me to connect"`
+ Port int `arg:"--port" default:"2522" help:"port to run on"`
+ URL string `arg:"--url" help:"url to use"`
+ Config string `arg:"--config" help:"config file (default is ~/.config/cloud/gus.text"`
+}
+
+type EmptyCmd struct {
}
func (args) Version() string {
@@ -48,3 +55,22 @@ func init() {
INFO = log.NewFlag("INFO", false, full, short, "general gus")
WARN = log.NewFlag("WARN", true, full, short, "bad things")
}
+
+/*
+ handles shell autocomplete
+*/
+
+func (a args) DoAutoComplete(argv []string) {
+ switch argv[0] {
+ case "playback":
+ fmt.Println("long --uuid purge last submit")
+ case "clean":
+ fmt.Println("")
+ default:
+ if argv[0] == ARGNAME {
+ // list the subcommands here
+ fmt.Println("--json interact playback clean")
+ }
+ }
+ os.Exit(0)
+}