CURSES(3) | Library Functions Manual | CURSES(3)

# NAME

curses — screen functions with “optimal” cursor motion

# LIBRARY

Curses Library (libcurses, -lcurses)

# SYNOPSIS

cc | [flags] files -lcurses [libraries]

# DESCRIPTION

These routines give the user a method of updating screens with reasonable optimization. They keep an image of the current screen, and the user sets up an image of a new one. Then the refresh() tells the routines to make the current screen look like the new one. In order to initialize the routines, the routine initscr() must be called before any of the other routines that deal with windows and screens are used. The routine endwin() should be called before exiting. The routine start_color() must be called before any of the other routines that deal with color are used.

# FUNCTIONS

Function Name | Manual Page Name
addch | curses_addch(3)
addchnstr | curses_addchstr(3)
addchstr | curses_addchstr(3)
addnstr | curses_addstr(3)
addstr | curses_addstr(3)
assume_default_colors | curses_default_colors(3)
attr_get | curses_attributes(3)
attr_off | curses_attributes(3)
attr_on | curses_attributes(3)
attr_set | curses_attributes(3)
attroff | curses_attributes(3)
attron | curses_attributes(3)
attrset | curses_attributes(3)
beep | curses_tty(3)
bkgd | curses_background(3)
bkgdset | curses_background(3)
border | curses_border(3)
box | curses_border(3)
can_change_color | curses_color(3)
cbreak | curses_tty(3)
chgat | curses_chgat(3)
clear | curses_clear(3)
clearok | curses_clear(3)
clrtobot | curses_clear(3)
clrtoeol | curses_clear(3)
color_content | curses_color(3)
color_set | curses_attributes(3)
copywin | curses_window(3)
curs_set | curses_tty(3)
def_prog_mode | curses_tty(3)
def_shell_mode | curses_tty(3)
define_key | curses_input(3)
delay_output | curses_tty(3)
delch | curses_delch(3)
deleteln | curses_deleteln(3)
delscreen | curses_screen(3)
delwin | curses_window(3)
derwin | curses_window(3)
doupdate | curses_refresh(3)
dupwin | curses_window(3)
echo | curses_tty(3)
endwin | curses_screen(3)
erase | curses_clear(3)
erasechar | curses_tty(3)
flash | curses_tty(3)
flushinp | curses_tty(3)
flushok | curses_refresh(3)
fullname | curses_termcap(3)
getattrs | curses_attributes(3)
getbegx | curses_cursor(3)
getbegy | curses_cursor(3)
getbkgd | curses_background(3)
getch | curses_input(3)
getcurx | curses_cursor(3)
getcury | curses_cursor(3)
getmaxx | curses_cursor(3)
getmaxy | curses_cursor(3)
getnstr | curses_input(3)
getparx | curses_cursor(3)
getpary | curses_cursor(3)
getparyx | curses_cursor(3)
getstr | curses_input(3)
gettmode | curses_tty(3)
getwin | curses_fileio(3)
getyx | curses_cursor(3)
has_colors | curses_color(3)
has_ic | curses_tty(3)
has_il | curses_tty(3)
hline | curses_line(3)
idcok | curses_tty(3)
idlok | curses_tty(3)
inch | curses_inch(3)
inchnstr | curses_inch(3)
inchstr | curses_inch(3)
init_color | curses_color(3)
init_pair | curses_color(3)
initscr | curses_screen(3)
innstr | curses_inch(3)
insch | curses_insertch(3)
insdelln | curses_insdelln(3)
insertln | curses_insertln(3)
instr | curses_inch(3)
intrflush | curses_tty(3)
is_linetouched | curses_touch(3)
is_wintouched | curses_touch(3)
isendwin | curses_screen(3)
keyname | curses_keyname(3)
keyok | curses_input(3)
keypad | curses_input(3)
killchar | curses_tty(3)
leaveok | curses_tty(3)
meta | curses_tty(3)
move | curses_cursor(3)
mvaddch | curses_addch(3)
mvaddchnstr | curses_addchstr(3)
mvaddchstr | curses_addchstr(3)
mvaddnstr | curses_addstr(3)
mvaddstr | curses_addstr(3)
mvchgat | curses_chgat(3)
mvcur | curses_cursor(3)
mvderwin | curses_window(3)
mvgetnstr | curses_input(3)
mvgetstr | curses_input(3)
mvhline | curses_line(3)
mvinchstr | curses_inch(3)
mvinchnstr | curses_inch(3)
mvprintw | curses_print(3)
mvscanw | curses_scanw(3)
mvvline | curses_line(3)
mvwaddch | curses_addch(3)
mvwaddchnstr | curses_addchstr(3)
mvwaddchstr | curses_addchstr(3)
mvwaddnstr | curses_addstr(3)
mvwaddstr | curses_addstr(3)
mvwchgat | curses_chgat(3)
mvwgetnstr | curses_input(3)
mvwgetstr | curses_input(3)
mvwhline | curses_line(3)
mvwinchstr | curses_inch(3)
mvwinchnstr | curses_inch(3)
mvwprintw | curses_print(3)
mvwscanw | curses_scanw(3)
mvwvline | curses_line(3)
napms | curses_tty(3)
newpad | curses_pad(3)
newterm | curses_screen(3)
newwin | curses_window(3)
nl | curses_tty(3)
nocbreak | curses_tty(3)
nodelay | curses_input(3)
noecho | curses_tty(3)
nonl | curses_tty(3)
noqiflush | curses_tty(3)
noraw | curses_tty(3)
notimeout | curses_input(3)
overlay | curses_window(3)
overwrite | curses_window(3)
pair_content | curses_color(3)
pnoutrefresh | curses_pad(3)
prefresh | curses_pad(3)
printw | curses_print(3)
putwin | curses_fileio(3)
qiflush | curses_tty(3)
raw | curses_tty(3)
redrawwin | curses_touch(3)
refresh | curses_refresh(3)
reset_prog_mode | curses_tty(3)
reset_shell_mode | curses_tty(3)
resetty | curses_tty(3)
resizeterm | curses_screen(3)
savetty | curses_tty(3)
scanw | curses_scanw(3)
scrl | curses_scroll(3)
scroll | curses_scroll(3)
scrollok | curses_scroll(3)
set_term | curses_screen(3)
setscrreg | curses_scroll(3)
setterm | curses_screen(3)
standend | curses_standout(3)
standout | curses_standout(3)
start_color | curses_color(3)
subpad | curses_pad(3)
subwin | curses_window(3)
termattrs | curses_attributes(3)
timeout | curses_input(3)
touchline | curses_touch(3)
touchoverlap | curses_touch(3)
touchwin | curses_touch(3)
unctrl | curses_print(3)
underend | curses_underscore(3)
underscore | curses_underscore(3)
ungetch | curses_input(3)
untouchwin | curses_touch(3)
use_default_colors | curses_default_colors(3)
vline | curses_line(3)
waddch | curses_addch(3)
waddchnstr | curses_addchstr(3)
waddchstr | curses_addchstr(3)
waddnstr | curses_addstr(3)
waddstr | curses_addstr(3)
wattr_get | curses_attributes(3)
wattr_off | curses_attributes(3)
wattr_on | curses_attributes(3)
wattr_set | curses_attributes(3)
wattroff | curses_attributes(3)
wattron | curses_attributes(3)
wattrset | curses_attributes(3)
wbkgd | curses_background(3)
wbkgdset | curses_background(3)
wborder | curses_border(3)
wchgat | curses_chgat(3)
wclear | curses_clear(3)
wclrtobot | curses_clear(3)
wclrtoeol | curses_clear(3)
wcolor_set | curses_attributes(3)
wdelch | curses_delch(3)
wdeleteln | curses_deleteln(3)
werase | curses_clear(3)
wgetch | curses_input(3)
wgetnstr | curses_input(3)
wgetstr | curses_input(3)
whline | curses_line(3)
winch | curses_inch(3)
winchnstr | curses_inch(3)
winchstr | curses_inch(3)
winnstr | curses_inch(3)
winsch | curses_insertch(3)
winsdelln | curses_insdelln(3)
winsertln | curses_insertln(3)
winstr | curses_inch(3)
wmove | curses_cursor(3)
wnoutrefresh | curses_refresh(3)
wprintw | curses_print(3)
wredrawln | curses_touch(3)
wrefresh | curses_refresh(3)
wresize | curses_window(3)
wscanw | curses_scanw(3)
wscrl | curses_scroll(3)
wsetscrreg | curses_scroll(3)
wstandend | curses_standout(3)
wstandout | curses_standout(3)
wtimeout | curses_input(3)
wtouchln | curses_touch(3)
wunderend | curses_underscore(3)
wunderscore | curses_underscore(3)
wvline | curses_line(3)

# ENVIRONMENT

COLUMNS
  The number of columns in the terminal if set. This is usually automatically configured by querying the kernel.
CURSES_TRACE_MASK
  An integer mask that enables specific debugging traces. Enabled only in the debug build of curses.
CURSES_TRACE_FILE
  A file where to output debugging information. Enabled only in the debug build of curses.
ESCDELAY
  The maximum delay in milliseconds between characters in multi-character keystrokes (such are arrow keys) where the adjacent characters are considered part of the same multi-character sequence. The default is 300 milliseconds.
LINES
  The number of lines in the terminal if set. is usually automatically configured by querying the kernel.
TERM
  The terminal type of the current terminal.

# SEE ALSO

ioctl(2), getenv(3), tty(4), terminfo(5)

Ken Arnold, Screen Updating and Cursor Movement Optimization: A Library Package.

# STANDARDS

The NetBSD Curses library complies with the X/Open Curses specification, part of the Single Unix Specification.

# HISTORY

The Curses package appeared in 4.0BSD.

# AUTHORS

Ken Arnold

April 5, 2012 | NetBSD 7.2