diff options
author | pukkandan <pukkandan.ytdlp@gmail.com> | 2021-10-09 00:41:59 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-09 00:41:59 +0530 |
commit | 819e05319baff2d896df026f1ef905e1f21be942 (patch) | |
tree | fb3ee4df64edf3729e3cab258d4c276588e41d42 /yt_dlp/utils.py | |
parent | fee3f44f5f58274c637499f077aa0312e650f493 (diff) | |
download | hypervideo-pre-819e05319baff2d896df026f1ef905e1f21be942.tar.lz hypervideo-pre-819e05319baff2d896df026f1ef905e1f21be942.tar.xz hypervideo-pre-819e05319baff2d896df026f1ef905e1f21be942.zip |
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/utils.py')
-rw-r--r-- | yt_dlp/utils.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/yt_dlp/utils.py b/yt_dlp/utils.py index 8b5b15103..027387897 100644 --- a/yt_dlp/utils.py +++ b/yt_dlp/utils.py @@ -6440,3 +6440,26 @@ def jwt_encode_hs256(payload_data, key, headers={}): signature_b64 = base64.b64encode(h.digest()) token = header_b64 + b'.' + payload_b64 + b'.' + signature_b64 return token + + +def supports_terminal_sequences(stream): + if compat_os_name == 'nt': + if get_windows_version() < (10, ): + return False + elif not os.getenv('TERM'): + return False + try: + return stream.isatty() + except BaseException: + return False + + +TERMINAL_SEQUENCES = { + 'DOWN': '\n', + 'UP': '\x1b[A', + 'ERASE_LINE': '\x1b[K', + 'RED': '\033[0;31m', + 'YELLOW': '\033[0;33m', + 'BLUE': '\033[0;34m', + 'RESET_STYLE': '\033[0m', +} |