Esempio n. 1
0
def main():
    if len(sys.argv) != 2:
        print('usage:', sys.argv[0], '<filename>')
        exit(1)
    filename = sys.argv[1]
    try:
        stdscr = curses.initscr()
        curses.noecho()
        curses.cbreak()
        #stdscr.keypad(True)
        blocks = Blocks(stdscr)
        blocks.add_stdout('Stdout/Stderr', 8)
        manager = JupyterManager(blocks, sys.argv[1])
        manager.launch()
        manager.load(filename)
        stdscr.clear()
        print('Ctrl-J: Move block down')
        print('Ctrl-K: Move block up')
        print('Ctrl-P t: Create terminal')
        print('Ctrl-P e: Run external python')
        print('Ctrl-P o/O: Create new cell')
        print('         -> Press u for history')
        print('         -> Press Tab for eval')
        while True:
            try:
                blocks.render()
                blocks.wait()
                manager.clear_buffers()
                manager.save(filename)
            except KeyboardInterrupt:
                break
    finally:
        curses.nocbreak()
        stdscr.keypad(False)
        curses.echo()
        curses.endwin()