_
| |
_ __ _ _ | |_ ___
| '_ \ | | | || __|/ _ \
| |_) || |_| || |_| __/
| .__/ \__, | \__|\___|
| | __/ |
|_| |___/ 0.8.0
What is pyte
?¶
It’s an in memory VTXXX-compatible terminal emulator.
XXX stands for a series of video terminals, developed by
DEC between
1970 and 1995. The first, and probably the most famous one, was VT100
terminal, which is now a de-facto standard for all virtual terminal
emulators. pyte
follows the suit.
So, why would one need a terminal emulator library?
- To screen scrape terminal apps, for example
htop
oraptitude
. - To write cross platform terminal emulators; either with a graphical (xterm, rxvt) or a web interface, like AjaxTerm.
- To have fun, hacking on the ancient, poorly documented technologies.
Note: pyte
started as a fork of vt102,
which is an incomplete pure Python implementation of VT100 terminal.
Installation¶
If you have pip you can do the usual:
pip install pyte
Otherwise, download the source from GitHub and run:
python setup.py install
Similar projects¶
pyte
is not alone in the weird world of terminal emulator libraries,
here’s a few other options worth checking out:
Termemulator,
pyqonsole,
webtty,
AjaxTerm and of course
vt102.
pyte
users¶
Believe it or not, there’re projects which actually need a terminal emulator
library. Not many of them use pyte
, though. Here’s a shortlist the ones
that do:
- Ajenti – a webadmin panel for Linux
and BSD, which uses
pyte
for its terminal plugin. - Pymux – a terminal multiplexor.
- BastionSSH – a tool for protecting, monitoring and accessing multiple SSH resources.
- Jumpserver – an open source springboard machine(fortress machine): authentication, authorization, audit, automated operation and maintenance.
Note
Using pyte
? Add yourself to this list and submit a pull request.
Show me the code!¶
Head over to our brief Tutorial or, if you’re feeling brave, dive right
into the API reference; pyte
also has a couple of examples in the
examples directory.