From 93836671c60db5c268feae67789cb2a7e433be05 Mon Sep 17 00:00:00 2001 From: vilmibm Date: Mon, 2 Sep 2024 05:16:39 +0000 Subject: [PATCH] fix ctrl+c thing --- cmd/towncon/main.go | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/cmd/towncon/main.go b/cmd/towncon/main.go index 32606b4..ac56ed2 100644 --- a/cmd/towncon/main.go +++ b/cmd/towncon/main.go @@ -360,21 +360,37 @@ func _main() error { o := opts{ Username: u.Username, + Style: darkbg, } - fmt.Printf("\t\t^_^_^_^_^_^_^ hi ~%s ^_^_^_^_^_^_^\n", o.Username) + b, err := banner() + if err != nil { + return err + } + + fmt.Println(o.Style.Render(b)) + + fmt.Print(o.Style.Render(fmt.Sprintf("\t\t^_^_^_^_^_^_^ hi ~%s ^_^_^_^_^_^_^\n", o.Username))) fmt.Println() var mode string - huh.NewSelect[string]().Title("whuddyu wanna doo?"). - Options( - huh.NewOption("Get an info dump", "info"), - huh.NewOption("RSVP", "rsvp"), - huh.NewOption("Submit or propose a work (talk, art, etc)", "submit"), - huh.NewOption("Propose a creative jam", "jam"), - huh.NewOption("Quit", "quit"), - ).Value(&mode).Run() + // NB: this could be a standalone prompt but when it is, ctrl+c behavior is goofed up. + form := huh.NewForm( + huh.NewGroup( + huh.NewSelect[string]().Title("whadduyu wanna doo?"). + Options( + huh.NewOption("Get an info dump", "info"), + huh.NewOption("RSVP", "rsvp"), + huh.NewOption("Submit or propose a work (talk, art, etc)", "submit"), + huh.NewOption("Propose a creative jam", "jam"), + huh.NewOption("Quit", "quit"), + ).Value(&mode))) + + err = form.Run() + if err != nil { + return err + } switch mode { case "info":