// InitCommand will create a new flag set, and call the Command's SetFlags and // Init methods with the appropriate args. func InitCommand(c cmd.Command, args []string) error { f := NewFlagSet() c.SetFlags(f) if err := f.Parse(c.AllowInterspersedFlags(), args); err != nil { return err } return c.Init(f.Args()) }
func helpText(command cmd.Command, name string) string { buff := &bytes.Buffer{} info := command.Info() info.Name = name f := gnuflag.NewFlagSet(info.Name, gnuflag.ContinueOnError) command.SetFlags(f) buff.Write(info.Help(f)) return buff.String() }