Skip to main content

a pure python tty

Project description

bittty

A pure Python terminal emulator.

Currently buggy and a bit slow, but it's still somewhat usable.

Demo

Run the standalone demo:

python ./demo/terminal.py

Or use the textual demo to see it in a TUI:

uvx textual-tty

Links

License

WTFPL with one additional clause

  1. Don't blame me

Do wtf you want, but don't blame me when it rips a hole in your trousers.

Recent changes

  • DEC Special Graphics
  • Faster colour/style parser
  • Split out from textual-tty into separate package

bugs / todo

  • gui
    • make a terminal input class, for standalone input
    • make framebuffer.py
    • choose a backend
  • performance improvements
    • parse with regex over large buffer sizes
    • line cache for outputs
  • scrollback buffer
    • implement logloglog for scrollback with wrapping
  • bugs
    • corruption in stream - debug it
    • scroll region: scroll up in vim corrupts outside scroll region
  • add terminal visuals
    • bell flash effect
  • Support themes

Unhandled modes

  • DECRLM (Right-to-Left-Language Mode): Enables right-to-left language support.

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

bittty-0.0.4.tar.gz (28.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bittty-0.0.4-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

Details for the file bittty-0.0.4.tar.gz.

File metadata

  • Download URL: bittty-0.0.4.tar.gz
  • Upload date:
  • Size: 28.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for bittty-0.0.4.tar.gz
Algorithm Hash digest
SHA256 2488d645d5e344c1a01319de71c7a31a7a70b3760b4c44b82d2550160f9f7cde
MD5 c99d14bf55e36e4b9769a75aad759bc7
BLAKE2b-256 b2f569690c461148f715a7cd219fb9b5721f1910a9723cda6f2c7e9c4d1191fe

See more details on using hashes here.

File details

Details for the file bittty-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: bittty-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 32.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for bittty-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 370571c76fb34f91bfb46901ae738f4755ab322c3121e66aed0a35d6c8057b7c
MD5 20290819eb4d8f53bf3be2103a481a07
BLAKE2b-256 f2e1621f05a14143c14a9b2d32e785ee1412ffda6b18d672fec24ce8100c76da

See more details on using hashes here.

Supported by

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