Library for easily creating text interfaces that look like Linux's top program.
Project description
Library for easily creating text interfaces that look like Linux’s top program.
It is built on top of urwid but requires no knowledge of urwid itself.
Free software: MIT license
Documentation: https://topshape.readthedocs.io.
Python versions supported: 2.7, 3.3, 3.4, 3.5, 3.6
Quickstart
Here’s an example of how to use TopShape:
from topshape import TopShape
# The columns are a list (or tuple) of dictionaries. Each
# dictionary defines a column in the body
columns = ({'label': 'header1'},
{'label': 'header2'},
{'label': 'header3'})
# The body function will be passed as a callback that must
# return a 2-dimensional array everytime it's called.
def body():
return [[str(i*j) for i in range(3)] for j in range(10)]
# The header function will be passed as a callback that must
# return a string everytime it's called.
def header():
return 'This is the header!'
# The footer function will be passed as a callback that must
# return a string everytime it's called.
def footer():
return 'This is the footer!'
def handle_q(app):
app.exit()
def handle_f(app, answer):
# do something with the answer
# ...
# key_map maps keys pressed to callbacks
key_map = {'q': handle_q,
'f': (handle_f, 'Enter some text here:'}
app = TopShape.create_app(columns, body, header, footer,
key_mapping=key_map)
app.run()
Output:
Output (waiting for input from user):
There is also a more complete example here which is a clone of the linux top program.
Screenshot:
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file topshape-1.0.0.tar.gz
.
File metadata
- Download URL: topshape-1.0.0.tar.gz
- Upload date:
- Size: 102.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 464b0838c38e89e9c4b6962bf67fb05cf1fc819a4eac3f26b57bbf56c80c2801 |
|
MD5 | f1a5ea7f6cfa9417857e258201c1f227 |
|
BLAKE2b-256 | 118fd3bd7541f7fd9014642b9ba8a7947aa717a52ff1a64615a0d35bd08eaa1e |
File details
Details for the file topshape-1.0.0-py2.py3-none-any.whl
.
File metadata
- Download URL: topshape-1.0.0-py2.py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b771fbe21b27f05c12ec1197bc5bf8d0690fe9cd89c07f21b7a33b1386855da5 |
|
MD5 | 9b4cf4a85a3c6adc8eb5b8d1921bf3d1 |
|
BLAKE2b-256 | 9cb080f3a3815b0a72f6144a4730c69738b0b8cd3d3f6a8215361adaef5a6efc |