Skip to main content

A cross-platform PTY/ConPTY terminal for Jupyter with bundled xterm.js

Project description

Notebook Terminal 0.3.4

A real PTY/ConPTY terminal embedded in Jupyter using bundled xterm.js and only standard ipywidgets channels. It needs no anywidget, JupyterLab extension, administrator installation, HTTP server, WebSocket, CDN, or internet connection.

Installation

python -m pip install notebook_terminal-0.3.4-py3-none-any.whl

Restart the kernel after replacing an older version.

Usage

from notebook_terminal import terminal
term = terminal(height=450, interactive=True)

The shell prompt, username, host, and working directory come from the actual PowerShell, CMD, Bash, or Zsh process. They are not hardcoded.

0.5.0 transport changes

  • lossless output packets with sequence numbers and acknowledgements;
  • every frontend state contains all unacknowledged packets, so coalesced widget updates cannot drop output;
  • exact byte transport preserves split UTF-8 and ANSI sequences;
  • output batching every 25 ms and maximum 64 KiB packets;
  • ordered, acknowledged input queue prevents lost keystrokes;
  • xterm writes are serialized and acknowledged only after rendering;
  • resize events and terminal control messages remain deduplicated.

This release specifically addresses missing characters, overwritten output, invisible fast commands such as ls, and severe lag caused by sending every PTY fragment as an independent widget trait update.

Repository

GitHub: ZawadzkiR/notebook-terminal

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

notebook_terminal-0.3.4.tar.gz (3.1 MB view details)

Uploaded Source

Built Distribution

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

notebook_terminal-0.3.4-py3-none-any.whl (1.6 MB view details)

Uploaded Python 3

File details

Details for the file notebook_terminal-0.3.4.tar.gz.

File metadata

  • Download URL: notebook_terminal-0.3.4.tar.gz
  • Upload date:
  • Size: 3.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.0

File hashes

Hashes for notebook_terminal-0.3.4.tar.gz
Algorithm Hash digest
SHA256 f13843148a600b65a3cda82ddf9971e5551357a6dcaf3b2fc535158cfdd3c63f
MD5 7868dfba42856a249b5b4bb440093174
BLAKE2b-256 a34b50054531fed2aa20e2cc63eca5f42a1bb7a8b70b07d5d4b9de9b8f3ad79d

See more details on using hashes here.

File details

Details for the file notebook_terminal-0.3.4-py3-none-any.whl.

File metadata

File hashes

Hashes for notebook_terminal-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 20d4cc250d5c243618d335fb1cf101b74dbe660f64b0a7d514b134d67fcd3038
MD5 2a567e07d5d4bc5ba5d21e86da0a7415
BLAKE2b-256 322568e6170b80fa03a2c4ab4546b310aeacc2fab3933ceec9078c730f925c8c

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