Skip to main content

Writing user interfaces without all that ugly mucking about in hyperspace

Project description

This library provides a framework for developing console applications using Python and curses.

This framework should be powerful enough to create everything from quick, simple programs to complex, multi-screen applications. It is designed to make doing the simple tasks very quick and to take much of the pain out of writing larger applications.

There is a very wide variety of default widgets - everything from simple text fields to more complex tree and grid views.

I have used versions of this library for private scripts and small applications for around ten years. As a result, it is fairly mature.

Documentation is online at http://npyscreen.readthedocs.org

Please report bugs or make feature requests using the bug-tracker at http://code.google.com/p/npyscreen.

There is a mailing list available at https://groups.google.com/forum/?fromgroups#!forum/npyscreen/

Latest Changes:

Version 3.10 MultiLineEditable, MultiLineEditableTitle, MultiLineEditableBoxed classes added, allowing the user to edit lists of items. See EXAMPLE-MultilineEditable for an example.

Version 3.6 Title.. widgets should now resize properly. Menu items can now be specified with arguments and keywords.

Version 3.5 when_value_edited defined on Title.. widgets now work as users expect.

Version 3.4 Fixed bugs in Title.. widgets and in the App classes.

Version 3.3 and the subsequent minor releases fix some bugs, mainly related to changes caused by allowing resized forms.

Version 3.2 adds CheckboxBare - a checkbox without a label. Added at user request.

Version 3.0 IMPORTANT The version number has changed to version 3.0. This is because newer versions of pip distinguish between pre-release and released versions, and this will allow more flexibility in future releases. A version ‘2.0’ might have caused confusion at this stage.

Version 3.0 fixes the specification of max_width values for titled widgets (Thanks to Phil Rich for the bug report). Please report any further problems.

Version 2.0pre90 introduces a new BufferPager and TitleBufferPager class. (User request, suggested by dennis@wsec.be)

Version 2.0pre88 IMPORTANT This version supports resizing the terminal. Read the documentation for more detail about how to disable this feature if you need to. It has been implemented in a way that should be compatible with existing code. New code can make the resizing even more flexible.

Version 2.0pre87 Updates the documentation and contains various bug fixes.

Version 2.0pre85 and 2.0pre86 are both bugfix releases.

Version 2.0pre84 introduces an experimental system for editing lists of options. See documentation for details.

Version 2.0pre83 multi-line checkbox widgets are now possible. These can also be used as contained widgets within the multiselect class. See documentation for details.

Version 2.0pre82 changes the menu system and allows menu items to be given keyboard shortcuts.

Version 2.0pre81 introduces FilenameCombo, TitleFilenameCombo.

Version 2.0pre79 is a bugfix release.

Version 2.0pre76 further improves the handling of mouse events on compatible terminals.

Version 2.0pre75 improves the handling of the mouse on compatible terminals.

Version 2.0pre74 corrects one minor bug and introduces makes box widgets behave slightly more predictably (.editable attribute now linked to that of the contained widget.

Version 2.0pre73 corrects two bugs - thanks to Lasse for his help in finding them and offering patches.

Version 2.0pre71 new tree classes introduced. Bug fixes.

Version 2.0pre70 introduces the MLTreeMultiSelect class.

Version 2.0pre69 fixes and tidies up some of the new tree classes. There is an API change assocatied with this, noted in the documentation, though backward compatibility should have been maintained.

Version 2.0pre68 setting a form’s .editing attribute to False now causes it to exit immediately, even if a widget is still being edited.

Version 2.0pre67 fixes minor bugs.

Version 2.0pre65 fixes several bugs. All textboxes now honour the .hidden attribute. The major side effect of this is that tree classes are now easier to write.

Version 2.0pre64 extends multi-page support and includes revision to the documentation.

Version 2.0pre63 adds initial support for multi-page forms. See documentation on the FormMultiPage class for details.

Version 2.0pre57 fixes color support - it should now be possible to display a terminal with a different color background. Text widgets have some additional color options.

Version 2.0pre52 fixes compatibility with python2.6, 3.0 and 3.1. All other versions should be unaffected.

Version 2.0pre50 enables basic mouse support. Note that the Apple terminal does not handle mouse events correctly.

Project details


Release history Release notifications

History Node

4.10.5

History Node

4.10.0

History Node

4.9.1

History Node

4.9.0

History Node

4.8.7

History Node

4.8.6

History Node

4.8.5

History Node

4.8.4

History Node

4.8.3

History Node

4.8.2

History Node

4.8.1

History Node

4.8.0

History Node

4.7.2

History Node

4.7.1

History Node

4.7.0

History Node

4.6.4

History Node

4.6.3

History Node

4.6.2

History Node

4.6.1

History Node

4.6.0

History Node

4.5.0

History Node

4.4.1

History Node

4.4.0

History Node

4.3.5

History Node

4.3.4

History Node

4.3.3

History Node

4.3.2

History Node

4.3.1

History Node

4.3.0

History Node

4.2.0

History Node

4.1.2

History Node

4.1.1

History Node

4.1.0

History Node

4.0.0

History Node

3.37

History Node

3.35

History Node

3.13

This version
History Node

3.12

History Node

3.11

History Node

3.10

History Node

3.9

History Node

3.8

History Node

3.7

History Node

3.6

History Node

3.5

History Node

3.4

History Node

3.3

History Node

3.2

History Node

3.1

History Node

3.01

History Node

3.0

History Node

2.0pre93

History Node

2.0pre92

History Node

2.0pre91

History Node

2.0pre90

History Node

2.0pre89

History Node

2.0pre88

History Node

2.0pre87

History Node

2.0pre86

History Node

2.0pre85

History Node

2.0pre84

History Node

2.0pre83

History Node

2.0pre82

History Node

2.0pre81

History Node

2.0pre80

History Node

2.0pre79

History Node

2.0pre78

History Node

2.0pre77

History Node

2.0pre76

History Node

2.0pre75

History Node

2.0pre74

History Node

2.0pre73

History Node

2.0pre72

History Node

2.0pre71

History Node

2.0pre70

History Node

2.0pre69

History Node

2.0pre68

History Node

2.0pre67

History Node

2.0pre66

History Node

2.0pre65

History Node

2.0pre64

History Node

2.0pre63

History Node

2.0pre62

History Node

2.0pre61

History Node

2.0pre60

History Node

2.0pre59

History Node

2.0pre58

History Node

2.0pre57

History Node

2.0pre56

History Node

2.0pre55

History Node

2.0pre54

History Node

2.0pre53

History Node

2.0pre52

History Node

2.0pre51

History Node

2.0pre50

History Node

2.0pre49

History Node

2.0pre48

History Node

2.0pre50a

History Node

2.0pre48c

History Node

2.0pre48b

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
npyscreen-3.12.tar.gz (86.5 kB) Copy SHA256 hash SHA256 Source None May 23, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page