From d325dab24776e0ad10e5ce4d87ac701987e18ac3 Mon Sep 17 00:00:00 2001 From: Georgios Verigakis Date: Mon, 20 Jul 2020 12:46:43 +0300 Subject: [PATCH] Support formatted messages to remaining progress types This is a followup to the changes for #76. We can now remove the write function. --- progress/__init__.py | 7 ------- progress/counter.py | 12 +++++++++--- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/progress/__init__.py b/progress/__init__.py index a177339..dd094ba 100644 --- a/progress/__init__.py +++ b/progress/__init__.py @@ -91,13 +91,6 @@ class Infinite(object): if self.file and self.is_tty(): print('\r\x1b[K', end='', file=self.file) - def write(self, s): - if self.file and self.is_tty(): - line = self.message + s.ljust(self._width) - print('\r' + line, end='', file=self.file) - self._width = max(self._width, len(s)) - self.file.flush() - def writeln(self, line): if self.file and self.is_tty(): self.clearln() diff --git a/progress/counter.py b/progress/counter.py index d955ca4..3b41c54 100644 --- a/progress/counter.py +++ b/progress/counter.py @@ -20,12 +20,16 @@ from . import Infinite, Progress class Counter(Infinite): def update(self): - self.write(str(self.index)) + message = self.message % self + line = ''.join([message, str(self.index)]) + self.writeln(line) class Countdown(Progress): def update(self): - self.write(str(self.remaining)) + message = self.message % self + line = ''.join([message, str(self.remaining)]) + self.writeln(line) class Stack(Progress): @@ -34,7 +38,9 @@ class Stack(Progress): def update(self): nphases = len(self.phases) i = min(nphases - 1, int(self.progress * nphases)) - self.write(self.phases[i]) + message = self.message % self + line = ''.join([message, self.phases[i]]) + self.writeln(line) class Pie(Stack):