termqt
termqt copied to clipboard
A terminal emulator widget implemented in Python/Qt.
termqt
termqt is the python implementation of a terminal emulator, based on Qt. It is designed to be embedded as a widget in other programs. It implements a subset of the functions described in VT100 User Guide and XTerm Control Sequence. While can't be considered as a fully functional terminal emulator like those most used by people, it can run IPython and perhaps more complicated applications.

Dependencies
- Python 3.5+ (to get PyQt5 running),
- PyQt5 / PySide2.
Installation
pip install termqt
Get Started
termqt is divided into a Terminal
widget that can be embedded in any Qt
program, and a TerminalIO
that is used to communicate with child processes
like bash
or ipython
. One has to connect all callbacks inside Terminal
and TerminalIO
in order to get them running. One may also build his own
TerminalIO
backend instead of using the existing ones.
A quick minimalistic example can be found in start.py
. It creates a
Terminal
and a TerminalExecIO
that runs bash
under Linux (and other
POSIX-compatible environments) or cmd
under Windows.
Issues / Feature Requests
If you spot a bug or want to propose a feature, please feel free to submit an issue. At this time, my time working on this project is not guaranteed, but I will try my best. Other volunteers are also welcomed to submit PRs. All your efforts are appreciated!