diff options
author | W. Trevor King <wking@drexel.edu> | 2009-07-21 15:14:59 -0400 |
---|---|---|
committer | W. Trevor King <wking@drexel.edu> | 2009-07-21 15:14:59 -0400 |
commit | 949b17853e384d4bce85a2ab0b29cf28375465aa (patch) | |
tree | 6aa8810f10897046f8a6d666c043ce5585d434a7 /becommands/show.py | |
parent | b6f34db0ce3b5d93ecb740bae064342f7eb05587 (diff) | |
download | bugseverywhere-949b17853e384d4bce85a2ab0b29cf28375465aa.tar.gz |
Added "--no-comments" to "be show".
Also moved the XML-header line to the top of the argument loop, since
there should only be one. We're still missing global tags wrapping the
whole thing though...
Also set options.XML default to False. It had been defaulting to
None, which was breaking the non-XML newline-adding check.
Diffstat (limited to 'becommands/show.py')
-rw-r--r-- | becommands/show.py | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/becommands/show.py b/becommands/show.py index d053cc3..e43cfb9 100644 --- a/becommands/show.py +++ b/becommands/show.py @@ -58,6 +58,8 @@ def execute(args, test=False): if len(args) == 0: raise cmdutil.UsageError bd = bugdir.BugDir(from_disk=True, manipulate_encodings=not test) + if options.XML: + print '<?xml version="1.0" encoding="%s" ?>' % bd.encoding for shortname in args: if shortname.count(':') > 1: raise cmdutil.UserError("Invalid id '%s'." % shortname) @@ -68,32 +70,37 @@ def execute(args, test=False): else: bugname = shortname is_comment = False + if is_comment == True and options.comments == False: + continue bug = bd.bug_from_shortname(bugname) if is_comment == False: - if options.dumpXML: - print '<?xml version="1.0" encoding="%s" ?>' % bd.encoding - print bug.xml(show_comments=True) + if options.XML: + print bug.xml(show_comments=options.comments) else: - print bug.string(show_comments=True) + print bug.string(show_comments=options.comments) else: comment = bug.comment_root.comment_from_shortname( shortname, bug_shortname=bugname) - if options.dumpXML: + if options.XML: print comment.xml(shortname=shortname) else: if len(args) == 1 and options.only_raw_body == True: sys.__stdout__.write(comment.body) else: print comment.string(shortname=shortname) - if shortname != args[-1] and options.dumpXML == False: + if shortname != args[-1] and options.XML == False: print "" # add a blank line between bugs/comments def get_parser(): parser = cmdutil.CmdOptionParser("be show [options] ID [ID ...]") - parser.add_option("-x", "--xml", action="store_true", - dest='dumpXML', help="Dump as XML") + parser.add_option("-x", "--xml", action="store_true", default=False, + dest='XML', help="Dump as XML") parser.add_option("--only-raw-body", action="store_true", - dest='only_raw_body', help="When printing only a single comment, just print it's body. This allows extraction of non-text content types.") + dest='only_raw_body', + help="When printing only a single comment, just print it's body. This allows extraction of non-text content types.") + parser.add_option("-c", "--no-comments", dest="comments", + action="store_false", default=True, + help="Disable comment output. This is useful if you just want more details on a bug's current status.") return parser longhelp=""" |