Skip to main content

library to help with curses programming

Project description

library to help with curses programming

Installation

From the project root directory:

$ python setup.py install

Usage

The easiest method is to just decorate your function, and use the injected scr argument:

from time import sleep
from ezcurses import curse

@curse
def main(scr, message_string):
    w, h = scr.max_size()
    scr.write(message_string, pos=(w // 2, h // 2))
    scr.refresh()
    sleep(1)

if __name__ == '__main__':
    main('Hello world!')

You can also use the Cursed context manager. Here’s an example with windows with backgrounds and borders and colors:

from ezcurses import Cursed

with Cursed() as scr:
    w, h = scr.max_size()
    win1 = scr.new_win(orig=(0, 0), size=(10, 10))
    win2 = scr.new_win(orig=(10, 0), size=(10, 10))
    win1.border()
    win2.border()
    win1.background('+', color='red')
    win2.background('.', color=('green', 'blue'))
    win1.draw()
    win2.draw()
    s = win1.getstr((0, 0), echo=True)
    win2.write(s, (0, 0), color=('red', 'black'))
    win2.draw()
    win1.write('Press q to quit', (0, 0), color=('black', 'red'))
    while win1.getkey() != 'q':
        pass

Release Notes

0.2.10:
  • Add multi_menu feature for selections spanning a screen
0.2.9:
  • Rename _msgs to Menu.items
0.2.8:
  • Much more intricate menu logic and new multi_menu.py example
0.2.7:
  • Fix menu origin in windows bug
0.2.6:
  • Make layout creatable with Screen.new_layout(border=True)
0.2.5:
  • Add Layout feature for bootstrap like rows and columns
0.2.4:
  • Add Menu functionality and an example in examples/menu_example.py
0.2.3:
  • make it much more tolerable for floats, if user does math stuff
0.2.2:
  • add curse decorator
  • rename main context manager to Cursed
0.2.1:
  • fixed a few bugs in window without size
0.2.0:
  • lots of clean up and testing, fix README
0.1.2:
  • Make positional optional and a keyword pos for the getstr function
  • Add documentation to API
0.1.1:
  • Make position optional for write and default (0, 0) like other funcs
0.1.0:
  • New features for curses windows
  • get input, string and characters
  • add strings with colors to the window
  • add borders
  • draw lines
  • change background
  • very functional as is
0.0.1:
  • Project created

Project details


Download files

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

Files for ezcurses, version 0.2.10
Filename, size File type Python version Upload date Hashes
Filename, size ezcurses-0.2.10.tar.gz (10.5 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page