Skip to main content

A curses-based UI/widget library featuring fluid interface resizing, multiple text layout options, simple markup for attributes, powerful scrolling list boxes and flexible edit boxes.

Project description

Urwid is a curses-based UI/widget library. It includes many features useful for console application developers, including:

  • Fluid interface resizing (xterm window resizing / fbset on Linux console)

  • Multiple text alignment and wrapping modes built-in

  • Ability to register user-defined text alignment and wrapping modes

  • Simple markup for setting text attributes

  • Powerful list box that handles scrolling between different widget types

  • List box contents may be managed with a user-defined class

  • Flexible edit box for editing almost any type of text

  • Plain HTML screen shots

Example Programs:

tour.py

A list box showing the built-in widget types and modes.

fib.py

A Fibonacci set viewer that demonstrates a list box with infinite data.

edit.py

A text editor that starts-up instantly by lazily reading files. It is suitable for editing text files with lines longer than the terminal width.

browse.py

A directory browser that displays directories in a single tree structure. It reads directories as required and lets you select multiple files.

calc.py

A calculator program that shows its work. It splits sub-expressions into separate columns for easy editing.

Project details


Release history Release notifications | RSS feed

Supported by

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