diff options
Diffstat (limited to 'be')
-rwxr-xr-x | be | 20 |
1 files changed, 13 insertions, 7 deletions
@@ -7,7 +7,9 @@ be comment: append a comment to a bug be set-root: assign the root directory for bug tracking """ from libbe.cmdutil import * +from libbe.bugdir import tree_root import sys +import os def list_bugs(args): bugs = list(tree_root(os.getcwd()).list()) @@ -16,15 +18,19 @@ def list_bugs(args): for bug in bugs: print "%s: %s" % (unique_name(bug, bugs), bug.summary) - - if len(sys.argv) == 1: print __doc__ else: - { - "list": list_bugs - }[sys.argv[1]](sys.argv[2:]) - - + try: + try: + cmd = { + "list": list_bugs + }[sys.argv[1]] + except KeyError, e: + raise UserError("Unknown command \"%s\"" % e.args[0]) + cmd(sys.argv[2:]) + except UserError, e: + print e + sys.exit(1) |