Cleaner progress bar

This commit is contained in:
Celine Mercier
2019-03-13 18:36:05 +01:00
parent d88390c6d8
commit e3c565d6be

View File

@ -68,7 +68,7 @@ cdef class ProgressBar:
'##########' '##########'
def __call__(self, object pos): def __call__(self, object pos, bint force=False):
cdef off_t ipos cdef off_t ipos
cdef clock_t elapsed cdef clock_t elapsed
cdef clock_t newtime cdef clock_t newtime
@ -82,7 +82,7 @@ cdef class ProgressBar:
self.cycle+=1 self.cycle+=1
if self.cycle % self.freq == 0: if self.cycle % self.freq == 0 or force:
self.cycle=1 self.cycle=1
newtime = self.clock() newtime = self.clock()
delta = newtime - self.lasttime delta = newtime - self.lasttime
@ -117,7 +117,7 @@ cdef class ProgressBar:
self.arrow=(self.arrow+1) % 4 self.arrow=(self.arrow+1) % 4
if days: if days:
<void>fprintf(stderr,b'\r%s %5.1f %% |%.*s%c%.*s] remain : %d days %02d:%02d:%02d\t', <void>fprintf(stderr,b'\r%s %5.1f %% |%.*s%c%.*s] remain : %d days %02d:%02d:%02d\033[K',
self.chead, self.chead,
percent*100, percent*100,
fraction,self.diese, fraction,self.diese,
@ -125,7 +125,7 @@ cdef class ProgressBar:
50-fraction,self.spaces, 50-fraction,self.spaces,
days,hour,minu,sec) days,hour,minu,sec)
else: else:
<void>fprintf(stderr,b'\r%s %5.1f %% |%.*s%c%.*s] remain : %02d:%02d:%02d\t', <void>fprintf(stderr,b'\r%s %5.1f %% |%.*s%c%.*s] remain : %02d:%02d:%02d\033[K',
self.chead, self.chead,
percent*100., percent*100.,
fraction,self.diese, fraction,self.diese,
@ -140,7 +140,7 @@ cdef class ProgressBar:
if self.ontty: if self.ontty:
<void>fputs(b'\n',stderr) <void>fputs(b'\n',stderr)
self.logger.info('%s %5.1f %% remain : %02d:%02d:%02d' % ( self.logger.info('%s %5.1f %% remain : %02d:%02d:%02d\033[K' % (
bytes2str(self._head), bytes2str(self._head),
percent*100., percent*100.,
hour,minu,sec)) hour,minu,sec))