aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libbe/command/base.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/libbe/command/base.py b/libbe/command/base.py
index 4ab4a21..311791f 100644
--- a/libbe/command/base.py
+++ b/libbe/command/base.py
@@ -54,10 +54,15 @@ class UsageError (UserError):
class UnknownCommand (UsageError):
- def __init__(self, command_name):
+ def __init__(self, command_name, message=None):
+ uc_message = "Unknown command '%s'" % command_name
+ if message is None:
+ message = uc_message
+ else:
+ message = '%s\n(%s)' % (uc_message, message)
super(UnknownCommand, self).__init__(
command_name=command_name,
- message="Unknown command '%s'" % command_name)
+ message=message)
def get_command(command_name):
@@ -75,7 +80,7 @@ def get_command(command_name):
cmd = libbe.util.plugin.import_by_name(
'libbe.command.%s' % command_name.replace("-", "_"))
except ImportError, e:
- raise UnknownCommand(command_name)
+ raise UnknownCommand(command_name, message=unicode(e))
return cmd
def get_command_class(module=None, command_name=None):