File tree 1 file changed +9
-1
lines changed
1 file changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -322,6 +322,14 @@ func (lm *newlineLimiter) Write(p []byte) (int, error) {
322
322
323
323
var usageWantsArgRe = regexp .MustCompile (`<.*>` )
324
324
325
+ type UnknownSubcommandError struct {
326
+ Args []string
327
+ }
328
+
329
+ func (e * UnknownSubcommandError ) Error () string {
330
+ return fmt .Sprintf ("unknown subcommand %q" , strings .Join (e .Args , " " ))
331
+ }
332
+
325
333
// DefaultHelpFn returns a function that generates usage (help)
326
334
// output for a given command.
327
335
func DefaultHelpFn () HandlerFunc {
@@ -352,7 +360,7 @@ func DefaultHelpFn() HandlerFunc {
352
360
if len (inv .Args ) > 0 {
353
361
// Return an error so that exit status is non-zero when
354
362
// a subcommand is not found.
355
- return fmt . Errorf ( "error: unknown subcommand %q" , strings . Join ( inv .Args , " " ))
363
+ return & UnknownSubcommandError { Args : inv .Args }
356
364
}
357
365
return nil
358
366
}
You can’t perform that action at this time.
0 commit comments