(continued from previous page) 8 box =Textbox(editwin) # Let the user edit until Ctrl-G is struck. box.edit() # Get resulting contents message =box.gather() • “Console Applications with Urwid”: video of a PyCon CA 2012 talk demonstrating some applications written using Urwid. • “Use curses… don’t swear”: video of a PyCon 2013 talk on controlling terminals using curses or Urwid. • The ncurses FAQ • The ncurses man page • Writing Programs with NCURSES: a lengthy tutorial for C programmers. Because the curses API is so large, some functions aren’t supported in the Python interface. Often this isn’t because they’re difficult to implement, but because no one has needed them yet. Also, Python doesn’t yet support the menu library associated with ncurses. Patches adding support for these would be welcome; see the Python Developer’s Guide to learn more about submitting patches to Python. If you’re in doubt about the detailed behavior of the curses functions, consult the manual pages for your curses implementation, whether it’s ncurses or a proprietary Unix vendor’s. The manual pages will document any quirks, and provide complete lists of all the functions, attributes, and$_{ACS_*}$characters available to you. This HOWTO doesn’t cover some advanced topics, such as reading the contents of the screen or capturing mouse events from an xterm instance, but the Python library page for the curses module is now reasonably complete. You should browse it next. 6 For More Information See the library documentation on curses.textpad for more details.