diff options
| author | Jeff Carr <[email protected]> | 2025-10-19 04:39:13 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-10-19 04:39:13 -0500 |
| commit | 7e204190a6c40815bcc37aed4ae7f473429a7c0f (patch) | |
| tree | 0b76b33104a3cf13c82dcf05c870085d9d8e83b0 /argv.custom.go | |
| parent | 6fb037663859bc50ac1d5bac1fdbfc722b1ab23d (diff) | |
new argvv0.5.29
Diffstat (limited to 'argv.custom.go')
| -rw-r--r-- | argv.custom.go | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/argv.custom.go b/argv.custom.go new file mode 100644 index 0000000..5480a34 --- /dev/null +++ b/argv.custom.go @@ -0,0 +1,48 @@ +// Copyright 2017-2025 WIT.COM Inc. All rights reserved. +// Use of this source code is governed by the GPL 3.0 + +package main + +import ( + "os" + + "go.wit.com/lib/protobuf/argvpb" +) + +// sent via -ldflags +var VERSION string +var BUILDTIME string + +var APPNAME string = "autogenpb" + +func (a args) Description() string { + return "go.wit.com/apps/autogenpb " + VERSION + " Built on " + BUILDTIME + ` + +From a .proto file, autogenpb will: + + * auto generate Sort(), Marshal() and GUI() functions in .pb.go files + * auto format the .proto file (like goimport does for .go files) + * encourages (enforces?) plural struct names (like rails) + +See the sources for an example .proto files + +Example usage: + + autogenpb --proto foo.proto --package main +` +} + +func (args) MatchClean() string { + return "foo.proto bar.proto" +} + +// sends the strings to bash or zsh that will be your options +func (a args) SendCompletionStrings(pb *argvpb.Argv) { + if pb.Cmd == "" { + base := []string{"--bash", "--proto", "--regret", "--debug", "--renumber", "--reformat", "--delete", "--dry-run"} + pb.SendStrings(base) + } else { + pb.SubCommand(pb.Goargs...) + } + os.Exit(0) +} |
