The Ncurses Team
Published: 2015-11-11
Total Pages: 128
Get eBook
The goal of Ncurses is to simplify the task of programming for character-cell terminals. A character-cell terminal is a combination of a display that shows text in a monospaced font and the keyboard and mouse that connect to it. These days, there are three common types of terminals. Actual hardware terminals, such as the DEC VT220 or the Boundless Technologies VT525, are dedicated thin clients that interact with a networked computer via a serial port. These are still somewhat common in legacy applications or industrial applications where computers would be too expensive or too fragile, but, they are rapidly becoming extinct. Second are the consoles of text-mode operating systems, such as the console of GNU/Linux when used without X/Windows or the command prompt of FreeDOS. The third type is the terminal emulation programs that some windowing systems have. The best known terminal emulation program is probably XTerm, which does a good emulation of a VT220 terminal. The Ncurses library attempts to create a standardized solution for these problems. A program needs to know which keys are pressed and when. A program needs to know a terminal's capabilities. Can text be bold, italic, or in color? A program needs to know how to exploit a terminal's capabilities. How does a program tell the terminal to move the cursor, to change text color, or to erase the screen?