From 5a82232b89baea093c2956726c0e9de1184189c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Aur=C3=A9lien=20Dunand?= <aurelien.dunand@smartjog.com>
Date: Mon, 1 Aug 2011 16:31:13 +0200
Subject: [PATCH] help command can now displays subparsers' help

---
 bin/is | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/bin/is b/bin/is
index ce7cf9b..311c496 100755
--- a/bin/is
+++ b/bin/is
@@ -237,7 +237,10 @@ def c_help(parser, args):
     '''
     Show help
     '''
-    parser.print_help()
+    if args.command is None:
+        parser.print_help()
+    else:
+        args.subparser.choices[args.command].print_help()
 
 def c_version(parser, args):
     '''
@@ -358,7 +361,9 @@ p_clean.set_defaults(func=c_clean)
 
 # help command parser
 p_help = subparsers.add_parser("help", help=c_help.__doc__.lower())
-p_help.set_defaults(func=c_help)
+p_help.add_argument("command", choices=subparsers.choices, nargs="?",
+                    help="command name")
+p_help.set_defaults(func=c_help, subparser=subparsers)
 
 # version command parser
 p_version = subparsers.add_parser("version", help=c_version.__doc__.lower())
-- 
GitLab