mirror of
https://github.com/verigak/progress.git
synced 2025-12-08 19:33:24 +00:00
Merge pull request #38 from moreati/pixels
PixelBar and PixelSpinner, based on Braille characters
This commit is contained in:
@@ -12,13 +12,14 @@ Easy progress reporting for Python
|
||||
Bars
|
||||
----
|
||||
|
||||
There are 6 progress bars to choose from:
|
||||
There are 7 progress bars to choose from:
|
||||
|
||||
- ``Bar``
|
||||
- ``ChargingBar``
|
||||
- ``FillingSquaresBar``
|
||||
- ``FillingCirclesBar``
|
||||
- ``IncrementalBar``
|
||||
- ``PixelBar``
|
||||
- ``ShadyBar``
|
||||
|
||||
To use them, just call ``next`` to advance and ``finish`` to finish:
|
||||
@@ -108,12 +109,13 @@ For actions with an unknown number of steps you can use a spinner:
|
||||
# Do some work
|
||||
spinner.next()
|
||||
|
||||
There are 4 predefined spinners:
|
||||
There are 5 predefined spinners:
|
||||
|
||||
- ``Spinner``
|
||||
- ``PieSpinner``
|
||||
- ``MoonSpinner``
|
||||
- ``LineSpinner``
|
||||
- ``PixelSpinner``
|
||||
|
||||
|
||||
Other
|
||||
|
||||
@@ -80,5 +80,9 @@ class IncrementalBar(Bar):
|
||||
self.writeln(line)
|
||||
|
||||
|
||||
class PixelBar(IncrementalBar):
|
||||
phases = ('⡀', '⡄', '⡆', '⡇', '⣇', '⣧', '⣷', '⣿')
|
||||
|
||||
|
||||
class ShadyBar(IncrementalBar):
|
||||
phases = (' ', '░', '▒', '▓', '█')
|
||||
|
||||
@@ -39,3 +39,6 @@ class MoonSpinner(Spinner):
|
||||
|
||||
class LineSpinner(Spinner):
|
||||
phases = ['⎺', '⎻', '⎼', '⎽', '⎼', '⎻']
|
||||
|
||||
class PixelSpinner(Spinner):
|
||||
phases = ['⣾','⣷', '⣯', '⣟', '⡿', '⢿', '⣻', '⣽']
|
||||
|
||||
@@ -6,8 +6,10 @@ import random
|
||||
import time
|
||||
|
||||
from progress.bar import (Bar, ChargingBar, FillingSquaresBar,
|
||||
FillingCirclesBar, IncrementalBar, ShadyBar)
|
||||
from progress.spinner import Spinner, PieSpinner, MoonSpinner, LineSpinner
|
||||
FillingCirclesBar, IncrementalBar, PixelBar,
|
||||
ShadyBar)
|
||||
from progress.spinner import (Spinner, PieSpinner, MoonSpinner, LineSpinner,
|
||||
PixelSpinner)
|
||||
from progress.counter import Counter, Countdown, Stack, Pie
|
||||
|
||||
|
||||
@@ -23,13 +25,13 @@ for bar_cls in (Bar, ChargingBar, FillingSquaresBar, FillingCirclesBar):
|
||||
for i in bar.iter(range(200)):
|
||||
sleep()
|
||||
|
||||
for bar_cls in (IncrementalBar, ShadyBar):
|
||||
for bar_cls in (IncrementalBar, PixelBar, ShadyBar):
|
||||
suffix = '%(percent)d%% [%(elapsed_td)s / %(eta)d / %(eta_td)s]'
|
||||
bar = bar_cls(bar_cls.__name__, suffix=suffix)
|
||||
for i in bar.iter(range(200)):
|
||||
sleep()
|
||||
|
||||
for spin in (Spinner, PieSpinner, MoonSpinner, LineSpinner):
|
||||
for spin in (Spinner, PieSpinner, MoonSpinner, LineSpinner, PixelSpinner):
|
||||
for i in spin(spin.__name__ + ' ').iter(range(100)):
|
||||
sleep()
|
||||
print()
|
||||
|
||||
Reference in New Issue
Block a user