aboutsummaryrefslogtreecommitdiff
path: root/yt_dlp/options.py
diff options
context:
space:
mode:
authorpukkandan <pukkandan.ytdlp@gmail.com>2021-10-09 00:41:59 +0530
committerGitHub <noreply@github.com>2021-10-09 00:41:59 +0530
commit819e05319baff2d896df026f1ef905e1f21be942 (patch)
treefb3ee4df64edf3729e3cab258d4c276588e41d42 /yt_dlp/options.py
parentfee3f44f5f58274c637499f077aa0312e650f493 (diff)
Improved progress reporting (See desc) (#1125)
* Separate `--console-title` and `--no-progress` * Add option `--progress` to show progress-bar even in quiet mode * Fix and refactor `minicurses` * Use `minicurses` for all progress reporting * Standardize use of terminal sequences and enable color support for windows 10 * Add option `--progress-template` to customize progress-bar and console-title * Add postprocessor hooks and progress reporting Closes: #906, #901, #1085, #1170
Diffstat (limited to 'yt_dlp/options.py')
-rw-r--r--yt_dlp/options.py20
1 files changed, 19 insertions, 1 deletions
diff --git a/yt_dlp/options.py b/yt_dlp/options.py
index be43f37ee..4652e8c58 100644
--- a/yt_dlp/options.py
+++ b/yt_dlp/options.py
@@ -910,13 +910,31 @@ def parseOpts(overrideArguments=None):
help='Output progress bar as new lines')
verbosity.add_option(
'--no-progress',
- action='store_true', dest='noprogress', default=False,
+ action='store_true', dest='noprogress', default=None,
help='Do not print progress bar')
verbosity.add_option(
+ '--progress',
+ action='store_false', dest='noprogress',
+ help='Show progress bar, even if in quiet mode')
+ verbosity.add_option(
'--console-title',
action='store_true', dest='consoletitle', default=False,
help='Display progress in console titlebar')
verbosity.add_option(
+ '--progress-template',
+ metavar='[TYPES:]TEMPLATE', dest='progress_template', default={}, type='str',
+ action='callback', callback=_dict_from_options_callback,
+ callback_kwargs={
+ 'allowed_keys': '(download|postprocess)(-title)?',
+ 'default_key': 'download'
+ }, help=(
+ 'Template for progress outputs, optionally prefixed with one of "download:" (default), '
+ '"download-title:" (the console title), "postprocess:", or "postprocess-title:". '
+ 'The video\'s fields are accessible under the "info" key and '
+ 'the progress attributes are accessible under "progress" key. Eg: '
+ # TODO: Document the fields inside "progress"
+ '--console-title --progress-template "download-title:%(info.id)s-%(progress.eta)s"'))
+ verbosity.add_option(
'-v', '--verbose',
action='store_true', dest='verbose', default=False,
help='Print various debugging information')