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.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.

Source Distribution

ezcurses-0.2.6.tar.gz (9.0 kB view hashes)

Uploaded Source

Supported by

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