31a32
> import traceflags
42a44,56
> def print_list(items, indent=4):
> line = ' ' * indent
> for i,item in enumerate(items):
> if len(line) + len(item) > 76:
> print line
> line = ' ' * indent
>
> if i < len(items) - 1:
> line += '%s, ' % item
> else:
> line += item
> print line
>
137a152,153
> add_option("--trace-help", action='store_true',
> help="Print help on trace flags")
139c155
< help="Sets the flags for tracing")
---
> help="Sets the flags for tracing (-FLAG disables a flag)")
233a250,262
> if options.trace_help:
> done = True
> print "Base Flags:"
> print_list(traceflags.baseFlags, indent=4)
> print
> print "Compound Flags:"
> for flag in traceflags.compoundFlags:
> if flag == 'All':
> continue
> print " %s:" % flag
> print_list(traceflags.compoundFlagMap[flag], indent=8)
> print
>
252a282
>
269a300,301
> on_flags = []
> off_flags = []
270a303,316
> off = False
> if flag.startswith('-'):
> flag = flag[1:]
> off = True
> if flag not in traceflags.allFlags:
> print >>sys.stderr, "invalid trace flag '%s'" % flag
> sys.exit(1)
>
> if off:
> off_flags.append(flag)
> else:
> on_flags.append(flag)
>
> for flag in on_flags:
272a319,321
> for flag in off_flags:
> internal.trace.clear(flag)
>