diff options
author | Todd Leonhardt <todd.leonhardt@gmail.com> | 2021-02-19 21:40:15 -0500 |
---|---|---|
committer | Todd Leonhardt <todd.leonhardt@gmail.com> | 2021-02-19 21:40:15 -0500 |
commit | 486b8c726a7d657ef320e68598077c31fa664790 (patch) | |
tree | 46b53d0f530d6ae273c4379272684ee80026658a /cmd2/argparse_completer.py | |
parent | 3e180a810e9c4b9d251c135667d1d150b0bbd0dd (diff) | |
download | cmd2-git-486b8c726a7d657ef320e68598077c31fa664790.tar.gz |
Fixed black, isort, flake8, and doc8 issues
Diffstat (limited to 'cmd2/argparse_completer.py')
-rw-r--r-- | cmd2/argparse_completer.py | 43 |
1 files changed, 28 insertions, 15 deletions
diff --git a/cmd2/argparse_completer.py b/cmd2/argparse_completer.py index 99378733..f19e9e2c 100644 --- a/cmd2/argparse_completer.py +++ b/cmd2/argparse_completer.py @@ -208,8 +208,9 @@ class ArgparseCompleter: if isinstance(action, argparse._SubParsersAction): self._subcommand_action = action - def complete(self, text: str, line: str, begidx: int, endidx: int, tokens: List[str], *, - cmd_set: Optional[CommandSet] = None) -> List[str]: + def complete( + self, text: str, line: str, begidx: int, endidx: int, tokens: List[str], *, cmd_set: Optional[CommandSet] = None + ) -> List[str]: """ Complete text using argparse metadata @@ -391,10 +392,12 @@ class ArgparseCompleter: if action.dest != argparse.SUPPRESS: parent_tokens[action.dest] = [token] - completer = ArgparseCompleter(self._subcommand_action.choices[token], self._cmd2_app, - parent_tokens=parent_tokens) - return completer.complete(text, line, begidx, endidx, tokens[token_index + 1:], - cmd_set=cmd_set) + completer = ArgparseCompleter( + self._subcommand_action.choices[token], self._cmd2_app, parent_tokens=parent_tokens + ) + return completer.complete( + text, line, begidx, endidx, tokens[token_index + 1 :], cmd_set=cmd_set + ) else: # Invalid subcommand entered, so no way to complete remaining tokens return [] @@ -438,8 +441,9 @@ class ArgparseCompleter: # Check if we are completing a flag's argument if flag_arg_state is not None: - completion_results = self._complete_arg(text, line, begidx, endidx, flag_arg_state, consumed_arg_values, - cmd_set=cmd_set) + completion_results = self._complete_arg( + text, line, begidx, endidx, flag_arg_state, consumed_arg_values, cmd_set=cmd_set + ) # If we have results, then return them if completion_results: @@ -464,8 +468,9 @@ class ArgparseCompleter: action = remaining_positionals.popleft() pos_arg_state = _ArgumentState(action) - completion_results = self._complete_arg(text, line, begidx, endidx, pos_arg_state, consumed_arg_values, - cmd_set=cmd_set) + completion_results = self._complete_arg( + text, line, begidx, endidx, pos_arg_state, consumed_arg_values, cmd_set=cmd_set + ) # If we have results, then return them if completion_results: @@ -587,7 +592,7 @@ class ArgparseCompleter: for token_index, token in enumerate(tokens): if token in self._subcommand_action.choices: completer = ArgparseCompleter(self._subcommand_action.choices[token], self._cmd2_app) - return completer.complete_subcommand_help(text, line, begidx, endidx, tokens[token_index + 1:]) + return completer.complete_subcommand_help(text, line, begidx, endidx, tokens[token_index + 1 :]) elif token_index == len(tokens) - 1: # Since this is the last token, we will attempt to complete it return self._cmd2_app.basic_complete(text, line, begidx, endidx, self._subcommand_action.choices) @@ -607,14 +612,22 @@ class ArgparseCompleter: for token_index, token in enumerate(tokens): if token in self._subcommand_action.choices: completer = ArgparseCompleter(self._subcommand_action.choices[token], self._cmd2_app) - return completer.format_help(tokens[token_index + 1:]) + return completer.format_help(tokens[token_index + 1 :]) else: break return self._parser.format_help() - def _complete_arg(self, text: str, line: str, begidx: int, endidx: int, - arg_state: _ArgumentState, consumed_arg_values: Dict[str, List[str]], *, - cmd_set: Optional[CommandSet] = None) -> List[str]: + def _complete_arg( + self, + text: str, + line: str, + begidx: int, + endidx: int, + arg_state: _ArgumentState, + consumed_arg_values: Dict[str, List[str]], + *, + cmd_set: Optional[CommandSet] = None + ) -> List[str]: """ Tab completion routine for an argparse argument :return: list of completions |