This is a very thin wrapper around the ncurses TUI lib.
NOTE: The ncurses lib is terribly unsafe and ncurses-rs is only the lightest wrapper it can be. If you want a safe and idiomatic TUI library for Rust, look elsewhere. If you want a 1:1 port of C to Rust or you want to crank a TUI out C-style in Rust, this will probably do the trick.
The compiled library will go to the
Note that you must to have the ncurses library installed and linkable for ncurses-rs to work. On Linux, this should be trivial. On OS X, consider installing ncurses using Homebrew. (Note that you have to force Homebrew to link the library to
brew link --force ncurses and set that path to
LIBRARY_PATH environmental variable.)
Examples are built by
cargo build. To run them, use
cargo run --example ex_<NUMBER>. Example numbers increase along with the complexity of the example.
1. Hello World
2. Basic Input & Attributes
3. Simple Pager
4. Window Movement
5. Menu Library (requires rust nightly)
6. Pager & Syntax Highlighting
7. Basic Input & Attributes (Unicode)
8. Special ACS Characters
Some environment variables are read by
NCURSES_RS_RUSTC_LINK_LIB will be used for
NCURSES_RS_RUSTC_FLAGS will be used for
NCURSES_RS_CFLAGS will be used for the compilation of the test program