Skip to main content

A tty for Textual UIs

Project description

textual-tty

A terminal emulator for Textual apps.

Made by summarizing tmux's code, implementing a similar structure then almost vibe coding it into existence with Claude and Gemini.

Currently lacks a cursor, mouse, any decent debugging tools, and is too chatty, but it's still somewhat usable.

Demo

uvx textual-tty

Usage

There's 3 main classes:

  1. textual_tty.Terminal, a standalone terminal that doesn't need Textual.
  2. textual_tty.TextualTerminal, a tty widget subclass.
  3. textual_tty.TerminalApp, a terminal emulator in a window.

See the demo for more info.

Links

License

WTFPL with one additional clause

  1. Don't blame me

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

todo

  • fix resizing - apps like htop don't resize
  • implement cursor (with width)
  • arrow keys for input in tui apps, not sure what's happening
  • performance improvements
    • profile it!
    • reduce draw calls
  • bugs
    • scroll region
    • blank background to end of line
    • ESC[nnnnb repeat sequence (nethogs)
  • more coverage
  • reduce redundancy redundancy of repeated repeated code code

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

textual_tty-0.0.5.tar.gz (31.6 kB view details)

Uploaded Source

Built Distribution

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

textual_tty-0.0.5-py3-none-any.whl (36.5 kB view details)

Uploaded Python 3

File details

Details for the file textual_tty-0.0.5.tar.gz.

File metadata

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

File hashes

Hashes for textual_tty-0.0.5.tar.gz
Algorithm Hash digest
SHA256 4ef357aba8fc9237c2ceec25dd4afba67d109e70e25352a65d0a4827a570eafc
MD5 dab263b76ba3825f7b2b663047b3e73f
BLAKE2b-256 2b189f49e248dff25dd0bf86f9a9d7e2e130b208e623170338c31456dcbbf8df

See more details on using hashes here.

File details

Details for the file textual_tty-0.0.5-py3-none-any.whl.

File metadata

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

File hashes

Hashes for textual_tty-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 2e086e06cef19e737b7037cf5f508891ae9a27ba269d36909432d9a94c460fd4
MD5 470e5d04d7236660530f065e6bc697af
BLAKE2b-256 c897ae11a68343a248ab48def2d8aca1e6100799dde526961888cb2f69ae75c8

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