summaryrefslogtreecommitdiff
path: root/cmd2.py
diff options
context:
space:
mode:
authorKevin Van Brunt <kmvanbrunt@gmail.com>2018-03-16 22:17:52 -0400
committerKevin Van Brunt <kmvanbrunt@gmail.com>2018-03-16 22:17:52 -0400
commit24fdbbce8a7bb0df3b12fc91cb53a591777f9fb0 (patch)
treeb516a76aa6f89c3d93a83999c6952bee2cf89486 /cmd2.py
parentf68023a219e4e5b0997e28d7cc4f46eb05011665 (diff)
downloadcmd2-git-24fdbbce8a7bb0df3b12fc91cb53a591777f9fb0.tar.gz
Changing how commands are parsed if default_to_shell is True
Diffstat (limited to 'cmd2.py')
-rwxr-xr-xcmd2.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/cmd2.py b/cmd2.py
index 28e22c45..d2f26166 100755
--- a/cmd2.py
+++ b/cmd2.py
@@ -1578,8 +1578,17 @@ class Cmd(cmd.Cmd):
break
i, n = 0, len(line)
- while i < n and line[i] in self.identchars:
- i += 1
+
+ # If we are allowing shell commands, then allow any character in the command
+ if self.default_to_shell:
+ while i < n and line[i] != ' ':
+ i += 1
+
+ # Otherwise only allow those in identchars
+ else:
+ while i < n and line[i] in self.identchars:
+ i += 1
+
command, arg = line[:i], line[i:].strip()
return command, arg, line