From: W. Trevor King Date: Thu, 27 Nov 2008 16:12:26 +0000 (-0500) Subject: Completion support added to becommands/help X-Git-Tag: 1.0.0~98 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=7603adce0d52e387b8d0e14d881c1a7749a5f9e5;p=be.git Completion support added to becommands/help --- diff --git a/becommands/help.py b/becommands/help.py index e228eed..7e0209d 100644 --- a/becommands/help.py +++ b/becommands/help.py @@ -33,7 +33,7 @@ def execute(args): """ parser = get_parser() options, args = parser.parse_args(args) - cmdutil.default_complete(options, args, parser) + complete(options, args, parser) if len(args) > 1: raise cmdutil.UsageError("Too many arguments.") if len(args) == 0: @@ -54,3 +54,12 @@ Print help for specified command or list of all commands. def help(): return get_parser().help_str() + longhelp + +def complete(options, args, parser): + for option, value in cmdutil.option_value_pairs(options, parser): + if value == "--complete": + # no argument-options at the moment, so this is future-proofing + raise cmdutil.GetCompletions() + if "--complete" in args: + cmds = [command for command,module in cmdutil.iter_commands()] + raise cmdutil.GetCompletions(cmds)