diff options
author | Mike Frysinger <vapier@google.com> | 2019-07-31 18:17:44 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@google.com> | 2019-08-27 07:07:24 +0000 |
commit | 898f4e6217ff6d848091f69ef64a10269c9da1cd (patch) | |
tree | 1848de79d61479bd6e4fc8749dbc2b62cea4fba9 /subcmds/help.py | |
parent | d9e5cf0ee76d55a94079c34f78ffb9dff858e93e (diff) | |
download | git-repo-898f4e6217ff6d848091f69ef64a10269c9da1cd.tar.gz |
help: add a --help-all option to show all commands at once
This is useful when you want to scan all the possibilities of repo
at once. Like when you're searching for different option names.
Change-Id: I225dfb94d2be78229905b744ecf57eb2829bb52d
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/232894
Reviewed-by: David Pursehouse <dpursehouse@collab.net>
Tested-by: Mike Frysinger <vapier@google.com>
Diffstat (limited to 'subcmds/help.py')
-rw-r--r-- | subcmds/help.py | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/subcmds/help.py b/subcmds/help.py index 90c12443..16f1f7f9 100644 --- a/subcmds/help.py +++ b/subcmds/help.py | |||
@@ -88,7 +88,7 @@ Displays detailed usage information about a command. | |||
88 | "See 'repo help <command>' for more information on a specific command.\n" | 88 | "See 'repo help <command>' for more information on a specific command.\n" |
89 | "See 'repo help --all' for a complete list of recognized commands.") | 89 | "See 'repo help --all' for a complete list of recognized commands.") |
90 | 90 | ||
91 | def _PrintCommandHelp(self, cmd): | 91 | def _PrintCommandHelp(self, cmd, header_prefix=''): |
92 | class _Out(Coloring): | 92 | class _Out(Coloring): |
93 | def __init__(self, gc): | 93 | def __init__(self, gc): |
94 | Coloring.__init__(self, gc, 'help') | 94 | Coloring.__init__(self, gc, 'help') |
@@ -106,7 +106,7 @@ Displays detailed usage information about a command. | |||
106 | 106 | ||
107 | self.nl() | 107 | self.nl() |
108 | 108 | ||
109 | self.heading('%s', heading) | 109 | self.heading('%s%s', header_prefix, heading) |
110 | self.nl() | 110 | self.nl() |
111 | self.nl() | 111 | self.nl() |
112 | 112 | ||
@@ -124,7 +124,7 @@ Displays detailed usage information about a command. | |||
124 | 124 | ||
125 | m = asciidoc_hdr.match(para) | 125 | m = asciidoc_hdr.match(para) |
126 | if m: | 126 | if m: |
127 | self.heading(m.group(1)) | 127 | self.heading('%s%s', header_prefix, m.group(1)) |
128 | self.nl() | 128 | self.nl() |
129 | self.nl() | 129 | self.nl() |
130 | continue | 130 | continue |
@@ -138,14 +138,25 @@ Displays detailed usage information about a command. | |||
138 | cmd.OptionParser.print_help() | 138 | cmd.OptionParser.print_help() |
139 | out._PrintSection('Description', 'helpDescription') | 139 | out._PrintSection('Description', 'helpDescription') |
140 | 140 | ||
141 | def _PrintAllCommandHelp(self): | ||
142 | for name in sorted(self.commands): | ||
143 | cmd = self.commands[name] | ||
144 | cmd.manifest = self.manifest | ||
145 | self._PrintCommandHelp(cmd, header_prefix='[%s] ' % (name,)) | ||
146 | |||
141 | def _Options(self, p): | 147 | def _Options(self, p): |
142 | p.add_option('-a', '--all', | 148 | p.add_option('-a', '--all', |
143 | dest='show_all', action='store_true', | 149 | dest='show_all', action='store_true', |
144 | help='show the complete list of commands') | 150 | help='show the complete list of commands') |
151 | p.add_option('--help-all', | ||
152 | dest='show_all_help', action='store_true', | ||
153 | help='show the --help of all commands') | ||
145 | 154 | ||
146 | def Execute(self, opt, args): | 155 | def Execute(self, opt, args): |
147 | if len(args) == 0: | 156 | if len(args) == 0: |
148 | if opt.show_all: | 157 | if opt.show_all_help: |
158 | self._PrintAllCommandHelp() | ||
159 | elif opt.show_all: | ||
149 | self._PrintAllCommands() | 160 | self._PrintAllCommands() |
150 | else: | 161 | else: |
151 | self._PrintCommonCommands() | 162 | self._PrintCommonCommands() |