Skip to main content

A lightweight POSIX terminal I/O library

Project description

ltermio - A Lightweight POSIX terminal I/O library

The package contains four modules: cursor, termkey, color256 and unicon. Tested only on MacOS terminal and iTerm2, so the platform compatibility has not been well verfied yet. All functions are based on CSI sequences or termios, no additional requirements other than the standard library.

New: Added a new module termouse, ready to support mouse base on XTerm extension...Roughly implemnted.

Installation

Uses pip to install the package:

pip3 install ltermio

cursor

A series of functions about screen and cursor operations. And additionally provides 4 interesting functions for text composing, where v_composing() supports using VI like cursor commands to layout text display.

termkey

There are 5 curses like functions: getch(), getkey(), ungetch(), ungetkey(), setparams().

getch() and getkey() read keyboard in non-canonical mode, ungetch() and ungetkey() put keys back to the key buffer for next reading, setparams() sets frequently-used input attributes.

termouse

Roughly implemented mouse supporting.

color256

Sets 256-color display attributes of the character terminal.

unicon

Collection of some common icons in unicode character set.

References

https://en.wikipedia.org/wiki/ANSI_escape_code
https://www.xfree86.org/current/ctlseqs.html
https://www.leonerd.org.uk/hacks/fixterms/

History & Why

When I was learning Python a few months ago, I decided to write a terminal Tetris game as a practice of the language learning. Due to the learning reason, I did not want to use any third-party packages. So when I finally finished the game, there naturally formed this by-product, I named it ltermio.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ltermio-0.4.8.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

ltermio-0.4.8-py3-none-any.whl (25.1 kB view details)

Uploaded Python 3

File details

Details for the file ltermio-0.4.8.tar.gz.

File metadata

  • Download URL: ltermio-0.4.8.tar.gz
  • Upload date:
  • Size: 19.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for ltermio-0.4.8.tar.gz
Algorithm Hash digest
SHA256 00228c9cc28174e39cd815ae2ac7287e0d01dafe8efff1dacff1eaabb5d8350f
MD5 04388213360376a2b8e72541cc3ee70a
BLAKE2b-256 735e17f0af35841dc65120270d669b33a7cf8f91ece7ad47f0b35e0fec13f1f6

See more details on using hashes here.

File details

Details for the file ltermio-0.4.8-py3-none-any.whl.

File metadata

  • Download URL: ltermio-0.4.8-py3-none-any.whl
  • Upload date:
  • Size: 25.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for ltermio-0.4.8-py3-none-any.whl
Algorithm Hash digest
SHA256 a6d9bea3e1456ae332df064d18c7933e6e5e3bb9b6df58d77ffc70aba4840f43
MD5 9307a842f4ce3fe965d5d7dd1a9b5428
BLAKE2b-256 c381bf1ebe615f5c24149a94c3174dbb4d91275b4dda1094cdbf6f0597adce6a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page