diff --git a/archivebox/config.py b/archivebox/config.py index d8e01b24..7865e976 100644 --- a/archivebox/config.py +++ b/archivebox/config.py @@ -77,7 +77,7 @@ USE_WGET = FETCH_WGET or FETCH_WGET_REQUISITES or FETCH_WARC try: ### Terminal Configuration - TERM_WIDTH = shutil.get_terminal_size((100, 10)).columns + TERM_WIDTH = lambda: shutil.get_terminal_size((100, 10)).columns ANSI = { 'reset': '\033[00;00m', 'lightblue': '\033[01;30m', diff --git a/archivebox/util.py b/archivebox/util.py index 1a8a445e..1835bd16 100644 --- a/archivebox/util.py +++ b/archivebox/util.py @@ -482,16 +482,17 @@ class TimedProgress: self.p.terminate() self.p = None - sys.stdout.write('\r{}{}\r'.format((' ' * TERM_WIDTH), ANSI['reset'])) # clear whole terminal line + sys.stdout.write('\r{}{}\r'.format((' ' * TERM_WIDTH()), ANSI['reset'])) # clear whole terminal line sys.stdout.flush() def progress_bar(seconds: int, prefix: str='') -> None: """show timer in the form of progress bar, with percentage and seconds remaining""" chunk = '█' if sys.stdout.encoding == 'UTF-8' else '#' - chunks = TERM_WIDTH - len(prefix) - 20 # number of progress chunks to show (aka max bar width) + chunks = TERM_WIDTH() - len(prefix) - 20 # number of progress chunks to show (aka max bar width) try: for s in range(seconds * chunks): + chunks = TERM_WIDTH() - len(prefix) - 20 progress = s / chunks / seconds * 100 bar_width = round(progress/(100/chunks))