Description: | Blessed is a thin, practical wrapper around terminal styling, screen
positioning, and keyboard input.
It provides:
- Styles, color, and maybe a little positioning without necessarily clearing
the whole screen first.
- Works great with standard Python string formatting.
- Provides up-to-the-moment terminal height and width, so you can responds
to terminal size changes.
- Avoids making a mess if the output gets piped to a non-terminal: outputs
to any file-like object such as StringIO, files, or pipes.
- Uses the terminfo(5) database so it works with any terminal type and
supports any terminal capability: No more C-like calls to tigetstr and
tparm.
- Keeps a minimum of internal state, so you can feel free to mix and match
with calls to curses or whatever other terminal libraries you like.
- Provides plenty of context managers to safely express terminal modes,
automatically restoring the terminal to a safe state on exit.
- Act intelligently when somebody redirects your output to a file, omitting
all of the terminal sequences such as styling, colors, or positioning.
- Dead-simple keyboard handling: safely decoding unicode input in your
system’s preferred locale and supports application/arrow keys.
- Allows the printable length of strings containing sequences to be
determined. |