Bug fix: ? and ! were not full aliases for `help' and `shell' as implied in
the documentation; the cases `? foo' and `! foo' failed.
diff --git a/Lib/cmd.py b/Lib/cmd.py
index d0c7498..41b2293 100644
--- a/Lib/cmd.py
+++ b/Lib/cmd.py
@@ -90,15 +90,15 @@
def onecmd(self, line):
line = string.strip(line)
- if line == '?':
- line = 'help'
- elif line == '!':
+ if not line:
+ return self.emptyline()
+ elif line[0] == '?':
+ line = 'help ' + line[1:]
+ elif line[0] == '!':
if hasattr(self, 'do_shell'):
- line = 'shell'
+ line = 'shell ' + line[1:]
else:
return self.default(line)
- elif not line:
- return self.emptyline()
self.lastcmd = line
i, n = 0, len(line)
while i < n and line[i] in self.identchars: i = i+1