summaryrefslogtreecommitdiff
path: root/cmd2/pyscript_bridge.py
diff options
context:
space:
mode:
authorKevin Van Brunt <kmvanbrunt@gmail.com>2018-10-10 19:40:18 -0400
committerKevin Van Brunt <kmvanbrunt@gmail.com>2018-10-10 19:40:18 -0400
commit1824a4e841d3480b0ae819c448b38f983297bdd9 (patch)
tree77acb096e03b3ef846e5ff1b2fd668caed49fc3b /cmd2/pyscript_bridge.py
parentebd6668db1a4a1dfcf2937559f2fbe5a4f58dc48 (diff)
downloadcmd2-git-1824a4e841d3480b0ae819c448b38f983297bdd9.tar.gz
Fixed ArgparseFunctor to allow flag looking tokens in REMAINDER sections
Diffstat (limited to 'cmd2/pyscript_bridge.py')
-rw-r--r--cmd2/pyscript_bridge.py6
1 files changed, 4 insertions, 2 deletions
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)