_tracef, _tracedump, _traceattr, _traceattr2,
_nc_tracebits, _tracecchar_t, _tracecchar_t2, _tracechar,
_tracechtype, _tracechtype2, _tracemouse, trace - curses
void _tracef(const char *format, ...);
void _tracedump(const char *label, WINDOW *win);
char *_traceattr(attr_t attr);
char *_traceattr2(int buffer, chtype ch);
char * _tracecchar_t(const cchar_t *string);
char * _tracecchar_t2(int buffer, const cchar_t *string);
char *_tracechar(int ch);
char *_tracechtype(chtype ch);
char *_tracechtype2(int buffer, chtype ch);
char *_tracemouse(const MEVENT *event);
void trace(const unsigned int param);
The trace routines are used for debugging the ncurses li-
braries, as well as applications which use the ncurses li-
braries. These functions are normally available only with
the debugging library libncurses_g.a, but may be compiled
into any model (shared, static, profile) by defining the
symbol TRACE. Additionally, some functions are only
available with the wide-character configuration of the li-
The principal parts of this interface are the trace rou-
tine which selectively enables different tracing features,
and the _tracef routine which writes formatted data to the
Calling trace with a nonzero parameter opens the file
trace in the current directory for output. The parameter
is formed by OR'ing values from the list of TRACE_xxx def-
initions in <curses.h>. These include:
turn off tracing.
trace user and system times of updates.
trace tputs calls.
trace update actions, old & new screens.
trace cursor movement and scrolling.
trace all character outputs.
trace all update actions. The old and new screen
contents are written to the trace file for each re-
trace all curses calls. The parameters for each call
are traced, as well as return values.
trace virtual character puts, i.e., calls to addch.
trace low-level input processing, including timeouts.
trace state of TTY control bits.
trace internal/nested calls.
trace per-character calls.
trace read/write of terminfo/termcap data.
trace changes to video attributes and colors.
maximum trace level, enables all of the separate
Some tracing features are enabled whenever the trace pa-
rameter is nonzero. Some features overlap. The specific
names are used as a guideline.
These functions check the NCURSES_TRACE environment vari-
able, to set the tracing feature as if trace was called:
filter, initscr, new_prescr, newterm, nofilter,
ripoffline, setupterm, slk_init, tgetent
Routines which return a value are designed to be used as
parameters to the _tracef routine.
These functions are not part of the XSI interface. Some
other curses implementations are known to have similar,
undocumented features, but they are not compatible with