remove statuscode.RenderHelp

This commit is contained in:
Roberto Hidalgo 2024-06-19 14:16:10 -06:00
parent 035b70af70
commit 51e6c01c5a
3 changed files with 7 additions and 10 deletions

View File

@ -53,9 +53,9 @@ By default, and unless ﹅` + env.NoColor + `﹅ is set, ﹅@chinampa@ help﹅ w
if len(args) > 0 && c != nil && c.Name() != args[len(args)-1] { if len(args) > 0 && c != nil && c.Name() != args[len(args)-1] {
c, topicArgs, err := c.Root().Find(args) c, topicArgs, err := c.Root().Find(args)
if err == nil && c != nil && len(topicArgs) == 0 { if err == nil && c != nil && len(topicArgs) == 0 {
// exact command help // user requestd command help with flag command
cobra.CheckErr(c.Help()) cobra.CheckErr(c.Help())
os.Exit(statuscode.RenderHelp) os.Exit(statuscode.Ok)
return return
} }
@ -74,9 +74,12 @@ By default, and unless ﹅` + env.NoColor + `﹅ is set, ﹅@chinampa@ help﹅ w
os.Exit(statuscode.NotFound) os.Exit(statuscode.NotFound)
} }
// top-level help with no arguments called
// write to stdout
c.SetOut(os.Stdout)
c.InitDefaultHelpFlag() // make possible 'help' flag to be shown c.InitDefaultHelpFlag() // make possible 'help' flag to be shown
cobra.CheckErr(c.Help()) cobra.CheckErr(c.Help())
os.Exit(statuscode.RenderHelp) os.Exit(statuscode.Ok)
}, },
} }

View File

@ -25,12 +25,8 @@ func showHelp(cmd *cobra.Command) {
// HandleCobraExit is called when a command errors out or was not found. // HandleCobraExit is called when a command errors out or was not found.
func HandleCobraExit(cmd *cobra.Command, err error) error { func HandleCobraExit(cmd *cobra.Command, err error) error {
if err == nil { if err == nil {
ok, err := cmd.PersistentFlags().GetBool(_c.HelpCommandName)
if cmd.Name() == _c.HelpCommandName || err == nil && ok {
os.Exit(statuscode.RenderHelp)
}
os.Exit(statuscode.Ok) os.Exit(statuscode.Ok)
return nil
} }
switch err.(type) { switch err.(type) {

View File

@ -12,8 +12,6 @@ package statuscode
const ( const (
// Ok means everything is fine. // Ok means everything is fine.
Ok = 0 Ok = 0
// RenderHelp provides answers to life, the universe and everything; also, renders help.
RenderHelp = 42
// Usage means bad arguments were provided by the user. // Usage means bad arguments were provided by the user.
Usage = 64 Usage = 64
// ProgrammerError means the developer made a mistake. // ProgrammerError means the developer made a mistake.