skillfed

urwid-readline

A textbox edit widget for urwid that supports readline shortcuts

urwid-readline v0.15.1 405.4K downloads/30d#6,907 on PyPI28
Permissive license AGING released

What it is and what it does

urwid-readline is a specialized text input widget for urwid, the Python library for building terminal-based user interfaces. It wraps urwid's standard text editing with readline-style keyboard shortcuts—the familiar Emacs-like commands (Ctrl+A to jump to line start, Ctrl+K to cut to end of line, Meta+F to jump forward a word, and many others) that developers expect from shell prompts and text editors. This makes terminal UI applications feel more responsive and intuitive to users accustomed to standard Unix line editing.

The package is a thin, focused layer: it depends only on urwid itself and provides one main widget class. It's useful when you're building a terminal application with urwid and want your text input fields to behave like readline-enabled prompts rather than plain text boxes. The feature set is comprehensive—it covers cursor movement, deletion, killing (cutting), pasting, undo, and autocomplete—and the implementation is stable enough for production use, though maintenance has slowed.

Use it for:

  • Building interactive terminal applications where users expect readline shortcuts in text input fields.
  • Creating command-line tools with urwid UIs that need familiar line-editing behavior for user comfort.
  • Implementing terminal-based REPL or shell-like interfaces with readline-compatible text editing.
  • Adding undo/redo and word-level navigation to urwid text boxes without reimplementing readline logic.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Adds readline-style keyboard shortcuts to urwid text input widgets, enabling familiar line-editing commands like Ctrl+A, Ctrl+K, and word navigation within terminal UI applications.

Yes, if you're already using urwid and need readline shortcuts in your text input. The package is stable, permissively licensed, and solves a specific problem well. Install friction is moderate (urwid compilation dependency), and maintenance is aging but not abandoned. Not worth installing if you're not building a urwid application or don't need readline behavior.

Install

urwid-readline on PyPI

pip

pip install urwid-readline

uv

uv add urwid-readline

poetry

poetry add urwid-readline

Installing urwid-readline

Before you install

High install friction due to urwid dependency, which requires compilation on some platforms. Package maintenance is aging—last release was 691 days ago, though the repository remains active with recent commits.

License in practice

Licensed under MIT (permissive), so you can use it freely in commercial and open-source projects with minimal restrictions.

Quickstart

pip install urwid-readline

from urwid_readline import ReadlineEdit

edit = ReadlineEdit('prompt: ')
# Use in urwid application with standard readline shortcuts

Requires urwid, which may need compilation on platforms without prebuilt wheels.

Verify before relying

  • Whether Python version support is truly unspecified or implicitly modern Python 3 only (classifiers say Python 3 Only but requires_python is null).
  • Current state of autocomplete feature—description mentions it but does not detail implementation or limitations.

Package facts

License not declared (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies 1 — urwid
Maintenance aging — 691 days since the last release
Last repo commit
First released
Downloads 405,392/month — #6,907 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: urwid_readline-0.15.1.tar.gz

Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3 :: OnlyTopic :: Desktop EnvironmentTopic :: Software DevelopmentTopic :: Software Development :: Libraries :: Python ModulesTopic :: Software Development :: Widget Sets

Tags

urwid text input readlineterminal text editing shortcutsurwid line editing widgetreadline keybindings urwidconsole text input controlterminal ui text box
terminal-uireadline-shortcuts

More Software Development packages