
This library allows easy processing of keyboard entry from terminal-based programs. it handles all the necessary logic to recognise special keys, utf-8 combining, and so on, with a simple interface. it provides the following features:
* follows terminfo for every sequence listed there, only falling back on
other methods to deal with unrecognised input.
* recognises special keys (such as arrow and function keys), including
"modified" keys like ctrl-left.
* recognises xterm-style mouse position/button reporting.
* mit licenced to allow almost all projects to use it; both open source
and commercial.
* small api - just three functions are needed in simple common cases.
* both synchronous (blocking) and asynchronous (non-blocking) apis are
supported.