From 1824a4e841d3480b0ae819c448b38f983297bdd9 Mon Sep 17 00:00:00 2001 From: Kevin Van Brunt Date: Wed, 10 Oct 2018 19:40:18 -0400 Subject: Fixed ArgparseFunctor to allow flag looking tokens in REMAINDER sections --- cmd2/pyscript_bridge.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'cmd2/pyscript_bridge.py') diff --git a/cmd2/pyscript_bridge.py b/cmd2/pyscript_bridge.py index 3292976e..3c5c61f2 100644 --- a/cmd2/pyscript_bridge.py +++ b/cmd2/pyscript_bridge.py @@ -222,10 +222,12 @@ class ArgparseFunctor: if action.option_strings: cmd_str[0] += '{} '.format(action.option_strings[0]) + is_remainder_arg = action.dest == self._remainder_arg + if isinstance(value, List) or isinstance(value, tuple): for item in value: item = str(item).strip() - if is_potential_flag(item, self._parser): + if not is_remainder_arg and is_potential_flag(item, self._parser): raise ValueError('{} appears to be a flag and should be supplied as a keyword argument ' 'to the function.'.format(item)) item = quote_string_if_needed(item) @@ -240,7 +242,7 @@ class ArgparseFunctor: else: value = str(value).strip() - if is_potential_flag(value, self._parser): + if not is_remainder_arg and is_potential_flag(value, self._parser): raise ValueError('{} appears to be a flag and should be supplied as a keyword argument ' 'to the function.'.format(value)) value = quote_string_if_needed(value) -- cgit v1.2.1