Add example of multicall binary mode

main
rwxrob 2 years ago
parent 1d6f931e8a
commit e250c8b7b4
No known key found for this signature in database
GPG Key ID: 2B9111F33082AE77

20
go.go

@ -1,8 +1,10 @@
package main
import (
"fmt"
"log"
"os"
"strings"
Z "github.com/rwxrob/bonzai"
"github.com/rwxrob/bonzai/inc/help"
@ -12,8 +14,9 @@ import (
var golang = &Z.Cmd{
Name: `go`,
Summary: `go related helper actions`,
Aliases: []string{"rust"},
MinArgs: 1,
Commands: []*Z.Cmd{help.Cmd, gowork},
Commands: []*Z.Cmd{help.Cmd, gowork, genisrune},
}
var gowork = &Z.Cmd{
@ -41,3 +44,18 @@ var gowork = &Z.Cmd{
return nil
},
}
var genisrune = &Z.Cmd{
Name: `genisrune`,
Summary: `generate a performant rune check condition`,
Commands: []*Z.Cmd{help.Cmd},
MinArgs: 1,
Call: func(x *Z.Cmd, args ...string) error {
var conds []string
for _, r := range args[0] {
conds = append(conds, fmt.Sprintf("r==%q", r))
}
fmt.Println(strings.Join(conds, "||"))
return nil
},
}

@ -3,10 +3,10 @@ module github.com/rwxrob/z
go 1.18
require (
github.com/rwxrob/bonzai v0.0.37
github.com/rwxrob/bonzai v0.0.39
github.com/rwxrob/config v0.3.1
github.com/rwxrob/fs v0.4.3
github.com/rwxrob/twitch v0.2.2
github.com/rwxrob/twitch v0.2.3
github.com/rwxrob/y2j v0.3.1
github.com/rwxrob/yq v0.2.0
)
@ -25,7 +25,7 @@ require (
github.com/rwxrob/fn v0.3.0 // indirect
github.com/rwxrob/json v0.4.1 // indirect
github.com/rwxrob/structs v0.5.0 // indirect
github.com/rwxrob/term v0.1.4 // indirect
github.com/rwxrob/term v0.1.5 // indirect
github.com/rwxrob/to v0.2.1 // indirect
github.com/timtadh/data-structures v0.5.3 // indirect
github.com/timtadh/lexmachine v0.2.2 // indirect

@ -47,6 +47,10 @@ github.com/rwxrob/bonzai v0.0.36 h1:+DW6cnxM9deUBA3gj04iyM4UP3HoRduiwHFNBPPjmCA=
github.com/rwxrob/bonzai v0.0.36/go.mod h1:PyKG44H68o3DZ2Xh6ouViGW9IAbYZVw0OYqLMdCM1RI=
github.com/rwxrob/bonzai v0.0.37 h1:fRycoZEaJQIp6EfK3//97e+T2gOIWdyzOxhLeKhUc8Q=
github.com/rwxrob/bonzai v0.0.37/go.mod h1:PyKG44H68o3DZ2Xh6ouViGW9IAbYZVw0OYqLMdCM1RI=
github.com/rwxrob/bonzai v0.0.38 h1:xj6hC/2fzfizezlfoLwbMTRzCnKcqAPd5mAlwu6HTnI=
github.com/rwxrob/bonzai v0.0.38/go.mod h1:PyKG44H68o3DZ2Xh6ouViGW9IAbYZVw0OYqLMdCM1RI=
github.com/rwxrob/bonzai v0.0.39 h1:EJ1aVVVwnm4mdPKJEeCLI3wVttgbD8ulggXKZiwEO4w=
github.com/rwxrob/bonzai v0.0.39/go.mod h1:PyKG44H68o3DZ2Xh6ouViGW9IAbYZVw0OYqLMdCM1RI=
github.com/rwxrob/config v0.2.1 h1:W53hExSNj2PtRRTuRXklruzVuOZ9LB8SDo9MC0qRiXQ=
github.com/rwxrob/config v0.2.1/go.mod h1:I2Diy79ZQPlanERtvt4VCSvW3jyCHeJ0JXksJMAz8xY=
github.com/rwxrob/config v0.3.0 h1:s6YQ82+lTKzi/YZRN0PmHOGf8GQXGtGy1ZwOzcfsmyk=
@ -77,6 +81,8 @@ github.com/rwxrob/term v0.1.3 h1:B0tu8VyOq9RjSOJd7rHtCQ80E2IIWe3Gc67NJ3tIDhI=
github.com/rwxrob/term v0.1.3/go.mod h1:IVE7hG+VQlM4R+kS4pY6uhfMHoG0QECrZF7d7bKcdsk=
github.com/rwxrob/term v0.1.4 h1:E49nmDAd7rwfjhled17RapP6RJP6T3a0NGIdW44WVAU=
github.com/rwxrob/term v0.1.4/go.mod h1:IVE7hG+VQlM4R+kS4pY6uhfMHoG0QECrZF7d7bKcdsk=
github.com/rwxrob/term v0.1.5 h1:jKvNgEYlsT6sLRqIuR9ITcNNh4woGkWxcAe71pPJReQ=
github.com/rwxrob/term v0.1.5/go.mod h1:IVE7hG+VQlM4R+kS4pY6uhfMHoG0QECrZF7d7bKcdsk=
github.com/rwxrob/to v0.2.1 h1:ZYBNEa8LJT5VDQUHm2wSwiRf61xSqU87UqbYvitV3eY=
github.com/rwxrob/to v0.2.1/go.mod h1:8qdgCWkh50Avs8sRpV6/P7lAQgVf3KLRSKMZahV/W48=
github.com/rwxrob/twitch v0.1.0 h1:XT7pXdCGsxE8ndhASgTd6roGRsFjsgHsDXDDgLgfSYQ=
@ -89,6 +95,8 @@ github.com/rwxrob/twitch v0.2.1 h1:kT+eic0a/QOdvs7ByhoGEC/eJBcurgu2i5+TdCU5k5g=
github.com/rwxrob/twitch v0.2.1/go.mod h1:aqAne9uW0iuy/fJfuuZdrGMINt6dX/EyrywzH4IvSpU=
github.com/rwxrob/twitch v0.2.2 h1:b0rzpu1ySejOADZTYw8hJFtyfNtklPV7xsh+SQM/UGs=
github.com/rwxrob/twitch v0.2.2/go.mod h1:aqAne9uW0iuy/fJfuuZdrGMINt6dX/EyrywzH4IvSpU=
github.com/rwxrob/twitch v0.2.3 h1:xLdKcUqxYkUe23LS/hYlIa5CFN3K7XEk7XYwpWHqjTQ=
github.com/rwxrob/twitch v0.2.3/go.mod h1:aqAne9uW0iuy/fJfuuZdrGMINt6dX/EyrywzH4IvSpU=
github.com/rwxrob/y2j v0.3.0 h1:iaYmvRJVi9EMFlA0VSrLZiHXzUqDNOyTkGyjBqR4ZA0=
github.com/rwxrob/y2j v0.3.0/go.mod h1:/3eS+LPnOF1F2VfoqZr3Upkr8q4ByziAi3eB6FIgzoE=
github.com/rwxrob/y2j v0.3.1 h1:qOCU7J6g0Q/7KlLAabCMLx6/wG1/NelG6QTOVpESAQg=

@ -3,7 +3,6 @@ package main
import (
"log"
"github.com/rwxrob/bonzai"
Z "github.com/rwxrob/bonzai"
"github.com/rwxrob/bonzai/inc/help"
"github.com/rwxrob/config"
@ -14,14 +13,36 @@ import (
func main() {
log.SetFlags(0)
bonzai.Aliases = map[string][]string{
// can run in multicall, or monolith, not both
/*
// MULTICALL (status, afk, etc. linked)
// (no completion unless set for individual commands)
// (requires creation of hard/sym links or copies)
Z.Commands = map[string][]any{
// "config": {config.Cmd}, // bork cuz no multicall mode
"yq": {yq.Cmd},
"y2j": {y2j.Cmd},
"status": {tmux, "update"},
"afk": {twitch.Cmd, "chat", "!afk"},
}
Z.Run()
*/
// MONOLITH (z) - which I prefer
Z.Aliases = map[string][]string{
"status": {"tmux", "update"},
"project": {"twitch", "bot", "commands", "edit", "project"},
"commands": {"twitch", "bot", "commands"},
"work": {"go", "work"},
"chat": {"twitch", "chat"},
"afk": {"twitch", "chat", "!afk"},
}
Cmd.Run()
}
var Cmd = &Z.Cmd{

Loading…
Cancel
Save