Decorators for terminal-based wait animations.
Tools for terminal-based wait animations
git clone http://github.com/bprinty/animation.git cd animation python setup.py install
Documentation for the package can be found at Read The Docs.
The animation module provides decorators for doing terminal-based wait animations. To add a wait animation to a function that requires some processing time, simply decorate the function with the wait animation you want to use.
Here is an example of how to use it in a project:
import animation import time @animation.simple_wait def long_running_function(): ... 5 seconds later ... return
This will print an animated waiting message like this (the elipses at the end of the text grow and shrink while the function executes):
The animation types provided by default are:
bar (simple bar that slides back and forth)
spinner (a spinning line)
dots (dots that move around in a sqare)
elipses (elipses that grow and shrink)
text with elipses (elipses with text in front of them)
And you can use any of these built-in animations like so:
import animation import time @animation.wait('bar') def long_running_function(): ... 5 seconds later ... return @animation.wait('spinner') def long_running_function(): ... 5 seconds later ... return
In addition to these default types, the module also supports custom animations. For example, to create an animation with a counter-clockwise spinning wheel:
wheel = ('-', '/', '|', '\\') @animation.wait(wheel) def long_running_function(): ... 5 seconds later ... return
If you want to manually start and stop the wait animation, you can use the `animation.Wait` class:
wait = animation.Wait() wait.start() long_running_function() wait.stop()
Finally, you can change the color of animations with the `color=` argument:
import animation @animation.wait('bar', color='blue') def long_running_function(): ... 5 seconds later ... return
File an issue in the GitHub issue tracker.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for animation-0.0.7-py2.py3-none-any.whl