diff options
-rw-r--r-- | CHANGELOG.md | 4 | ||||
-rw-r--r-- | cmd2/argparse_completer.py | 18 | ||||
-rw-r--r-- | cmd2/argparse_custom.py | 6 | ||||
-rw-r--r-- | examples/custom_parser.py | 4 |
4 files changed, 18 insertions, 14 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 09884b22..db23d03d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.9.22 (TBD, 2019) +* Bug Fixes + * Fixed bug where a redefined `ansi.style_error` was not being used in all `cmd2` files + ## 0.9.21 (November 26, 2019) * Bug Fixes * Fixed bug where pipe processes were not being stopped by Ctrl-C diff --git a/cmd2/argparse_completer.py b/cmd2/argparse_completer.py index 7e876258..a2690dd0 100644 --- a/cmd2/argparse_completer.py +++ b/cmd2/argparse_completer.py @@ -14,9 +14,9 @@ import textwrap from collections import deque from typing import Dict, List, Optional, Union +from . import ansi from . import cmd2 from . import utils -from .ansi import ansi_aware_write, ansi_safe_wcswidth, style_error from .argparse_custom import ATTR_CHOICES_CALLABLE, INFINITY, generate_range_error from .argparse_custom import ATTR_SUPPRESS_TAB_HINT, ATTR_DESCRIPTIVE_COMPLETION_HEADER, ATTR_NARGS_RANGE from .argparse_custom import ChoicesCallable, CompletionError, CompletionItem @@ -193,9 +193,9 @@ class AutoCompleter(object): if arg_action == completer_action: return True - error = style_error("\nError: argument {}: not allowed with argument {}\n". - format(argparse._get_action_name(arg_action), - argparse._get_action_name(completer_action))) + error = ansi.style_error("\nError: argument {}: not allowed with argument {}\n". + format(argparse._get_action_name(arg_action), + argparse._get_action_name(completer_action))) self._print_message(error) return False @@ -444,11 +444,11 @@ class AutoCompleter(object): completions.sort(key=self._cmd2_app.default_sort_key) self._cmd2_app.matches_sorted = True - token_width = ansi_safe_wcswidth(action.dest) + token_width = ansi.ansi_safe_wcswidth(action.dest) completions_with_desc = [] for item in completions: - item_width = ansi_safe_wcswidth(item) + item_width = ansi.ansi_safe_wcswidth(item) if item_width > token_width: token_width = item_width @@ -585,7 +585,7 @@ class AutoCompleter(object): def _print_message(msg: str) -> None: """Print a message instead of tab completions and redraw the prompt and input line""" import sys - ansi_aware_write(sys.stdout, msg + '\n') + ansi.ansi_aware_write(sys.stdout, msg + '\n') rl_force_redisplay() def _print_arg_hint(self, arg_action: argparse.Action) -> None: @@ -615,7 +615,7 @@ class AutoCompleter(object): format(argparse._get_action_name(flag_arg_state.action), generate_range_error(flag_arg_state.min, flag_arg_state.max), flag_arg_state.count) - self._print_message(style_error('{}'.format(error))) + self._print_message(ansi.style_error('{}'.format(error))) def _print_completion_error(self, arg_action: argparse.Action, completion_error: CompletionError) -> None: """ @@ -628,4 +628,4 @@ class AutoCompleter(object): error = ("\nError tab completing {}:\n" "{}\n".format(argparse._get_action_name(arg_action), indented_error)) - self._print_message(style_error('{}'.format(error))) + self._print_message(ansi.style_error('{}'.format(error))) diff --git a/cmd2/argparse_custom.py b/cmd2/argparse_custom.py index f8a9ec60..cfe9ea5e 100644 --- a/cmd2/argparse_custom.py +++ b/cmd2/argparse_custom.py @@ -185,7 +185,7 @@ import sys from argparse import ZERO_OR_MORE, ONE_OR_MORE, ArgumentError, _ from typing import Callable, Optional, Tuple, Type, Union -from .ansi import ansi_aware_write, style_error +from . import ansi # Used in nargs ranges to signify there is no maximum INFINITY = float('inf') @@ -747,7 +747,7 @@ class Cmd2ArgumentParser(argparse.ArgumentParser): linum += 1 self.print_usage(sys.stderr) - formatted_message = style_error(formatted_message) + formatted_message = ansi.style_error(formatted_message) self.exit(2, '{}\n\n'.format(formatted_message)) # noinspection PyProtectedMember @@ -806,7 +806,7 @@ class Cmd2ArgumentParser(argparse.ArgumentParser): if message: if file is None: file = sys.stderr - ansi_aware_write(file, message) + ansi.ansi_aware_write(file, message) # The default ArgumentParser class for a cmd2 app diff --git a/examples/custom_parser.py b/examples/custom_parser.py index efeb362e..7c154176 100644 --- a/examples/custom_parser.py +++ b/examples/custom_parser.py @@ -5,7 +5,7 @@ Defines the CustomParser used with override_parser.py example import sys from cmd2 import Cmd2ArgumentParser, set_default_argument_parser -from cmd2.ansi import style_warning +from cmd2 import ansi # First define the parser @@ -27,7 +27,7 @@ class CustomParser(Cmd2ArgumentParser): linum += 1 self.print_usage(sys.stderr) - formatted_message = style_warning(formatted_message) + formatted_message = ansi.style_warning(formatted_message) self.exit(2, '{}\n\n'.format(formatted_message)) |