summaryrefslogtreecommitdiffstats
path: root/cursed.py
blob: 754d91ad1d38a93d85d8dcc6e2f5146f12c4e2ea (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import curses


def start(on_str, on_tab):
    def main(stdscr):
        curses.noecho()
        curses.cbreak()
        stdscr.keypad(True)
        string = ""
        while True:
            char = stdscr.getkey()
            if char == '\n':
                on_str(string)
                string = ""
            elif char == '\t':
                on_tab()
            else:
                string += char
    curses.wrapper(main)