- // Parse args; omit the first arg which is the command name
- err := flags.Parse(os.Args[1:])
- if err == flag.ErrHelp {
- return nil
- } else if err != nil {
- return err
- } else if flags.NArg() != 0 {
- return fmt.Errorf("unrecognized command line arguments: %v", flags.Args())
+ if ok, code := cmd.ParseFlags(flags, os.Args[0], os.Args[1:], "", os.Stderr); !ok {
+ os.Exit(code)