cli: Add -f colored to force colors

`-f standard` shows non-colored output,
`-f colored` shows colored output,
`-f auto` is the new default, it chooses `standard` or `colored`
depending on terminal capabilities.
This commit is contained in:
sedrubal
2018-10-18 17:02:23 +02:00
committed by Adrien Vergé
parent 3ef85739e3
commit 5062b91cac
2 changed files with 61 additions and 4 deletions

View File

@@ -96,8 +96,8 @@ def run(argv=None):
action='store',
help='custom configuration (as YAML source)')
parser.add_argument('-f', '--format',
choices=('parsable', 'standard'), default='standard',
help='format for parsing output')
choices=('parsable', 'standard', 'colored', 'auto'),
default='auto', help='format for parsing output')
parser.add_argument('-s', '--strict',
action='store_true',
help='return non-zero exit code on warnings '
@@ -143,7 +143,8 @@ def run(argv=None):
for problem in linter.run(f, conf, filepath):
if args.format == 'parsable':
print(Format.parsable(problem, file))
elif supports_color():
elif args.format == 'colored' or \
(args.format == 'auto' and supports_color()):
if first:
print('\033[4m%s\033[0m' % file)
first = False