[options] Add --no-color

This commit is contained in:
Philipp Hagemeister 2015-02-10 04:22:10 +01:00
parent f7a211dcc8
commit 7e5db8c930
4 changed files with 10 additions and 3 deletions

View file

@ -233,6 +233,7 @@ class YoutubeDL(object):
If it returns a message, the video is ignored.
If it returns None, the video is downloaded.
match_filter_func in utils.py is one example for this.
no_color: Do not emit color codes in output.
The following parameters are not used by YoutubeDL itself, they are used by
@ -490,7 +491,7 @@ def report_warning(self, message):
else:
if self.params.get('no_warnings'):
return
if self._err_file.isatty() and os.name != 'nt':
if not self.params.get('no_color') and self._err_file.isatty() and os.name != 'nt':
_msg_header = '\033[0;33mWARNING:\033[0m'
else:
_msg_header = 'WARNING:'
@ -502,7 +503,7 @@ def report_error(self, message, tb=None):
Do the same as trouble, but prefixes the message with 'ERROR:', colored
in red if stderr is a tty file.
'''
if self._err_file.isatty() and os.name != 'nt':
if not self.params.get('no_color') and self._err_file.isatty() and os.name != 'nt':
_msg_header = '\033[0;31mERROR:\033[0m'
else:
_msg_header = 'ERROR:'

View file

@ -349,6 +349,7 @@ def _real_main(argv=None):
'playlist_items': opts.playlist_items,
'xattr_set_filesize': opts.xattr_set_filesize,
'match_filter': match_filter,
'no_color': opts.no_color,
}
with YoutubeDL(ydl_opts) as ydl:

View file

@ -514,7 +514,7 @@ def _search_regex(self, pattern, string, name, default=_NO_DEFAULT, fatal=True,
if mobj:
break
if os.name != 'nt' and sys.stderr.isatty():
if not self._downloader.params.get('no_color') and os.name != 'nt' and sys.stderr.isatty():
_name = '\033[0;34m%s\033[0m' % name
else:
_name = name

View file

@ -165,6 +165,11 @@ def _hide_login_info(opts):
action='store_const', dest='extract_flat', const='in_playlist',
default=False,
help='Do not extract the videos of a playlist, only list them.')
general.add_option(
'--no-color', '--no-colors',
action='store_true', dest='no_color',
default=False,
help='Do not emit color codes in output.')
network = optparse.OptionGroup(parser, 'Network Options')
network.add_option(