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.7.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

ltermio-0.4.7-py3-none-any.whl (24.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ltermio-0.4.7.tar.gz
  • Upload date:
  • Size: 19.3 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.7.tar.gz
Algorithm Hash digest
SHA256 a761f2b1c8ad70a3e63893d8ddae52fe7c8ff7ffdd1577ae40ce62b8681126fd
MD5 4eb8cef815c793d05cfa67cb810b9699
BLAKE2b-256 f11156340a12d28055a4f62bc3de6d2b6c39a92a13d8da21f9fa9e4ee8b674fc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ltermio-0.4.7-py3-none-any.whl
  • Upload date:
  • Size: 24.8 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 a2dd96432e842cccaaceb45b3c91ba4e8a0dfa72b2190117c70c7405e0572e4b
MD5 268ffec4931d28fd67dc376278b0b1ff
BLAKE2b-256 5cd0b78124c9d13eae74d856c9f6dfa1835e9801125abf9a8e037d0d19393612

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