2000-10-11 07:31:01 +00:00
|
|
|
.\"***************************************************************************
|
2007-01-20 07:32:02 +00:00
|
|
|
.\" Copyright (c) 2000-2002,2005 Free Software Foundation, Inc. *
|
2000-10-11 07:31:01 +00:00
|
|
|
.\" *
|
|
|
|
.\" Permission is hereby granted, free of charge, to any person obtaining a *
|
|
|
|
.\" copy of this software and associated documentation files (the *
|
|
|
|
.\" "Software"), to deal in the Software without restriction, including *
|
|
|
|
.\" without limitation the rights to use, copy, modify, merge, publish, *
|
|
|
|
.\" distribute, distribute with modifications, sublicense, and/or sell *
|
|
|
|
.\" copies of the Software, and to permit persons to whom the Software is *
|
|
|
|
.\" furnished to do so, subject to the following conditions: *
|
|
|
|
.\" *
|
|
|
|
.\" The above copyright notice and this permission notice shall be included *
|
|
|
|
.\" in all copies or substantial portions of the Software. *
|
|
|
|
.\" *
|
|
|
|
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
|
|
|
|
.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
|
|
|
|
.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
|
|
|
|
.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
|
|
|
|
.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
|
|
|
|
.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
|
|
|
|
.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
|
|
|
|
.\" *
|
|
|
|
.\" Except as contained in this notice, the name(s) of the above copyright *
|
|
|
|
.\" holders shall not be used in advertising or otherwise to promote the *
|
|
|
|
.\" sale, use or other dealings in this Software without prior written *
|
|
|
|
.\" authorization. *
|
|
|
|
.\"***************************************************************************
|
|
|
|
.\"
|
2007-01-20 07:32:02 +00:00
|
|
|
.\" $Id: curs_trace.3x,v 1.7 2005/05/15 17:02:54 tom Exp $
|
2000-10-11 07:31:01 +00:00
|
|
|
.TH curs_trace 3X ""
|
2007-01-20 07:32:02 +00:00
|
|
|
.na
|
|
|
|
.hy 0
|
2000-10-11 07:31:01 +00:00
|
|
|
.SH NAME
|
|
|
|
\fB_tracef\fR,
|
|
|
|
\fB_tracedump\fR,
|
|
|
|
\fB_traceattr\fR,
|
|
|
|
\fB_traceattr2\fR,
|
|
|
|
\fB_nc_tracebits\fR,
|
|
|
|
\fB_tracechar\fR,
|
|
|
|
\fB_tracechtype\fR,
|
|
|
|
\fB_tracechtype2\fR,
|
|
|
|
\fB_tracemouse\fR,
|
|
|
|
\fBtrace\fR - \fBcurses\fR debugging routines
|
2007-01-20 07:32:02 +00:00
|
|
|
.ad
|
|
|
|
.hy
|
2000-10-11 07:31:01 +00:00
|
|
|
.SH SYNOPSIS
|
|
|
|
\fB#include <curses.h>\fR
|
2007-01-20 07:32:02 +00:00
|
|
|
.sp
|
2000-10-11 07:31:01 +00:00
|
|
|
\fBvoid _tracef(const char *format, ...);\fR
|
|
|
|
.br
|
|
|
|
\fBvoid _tracedump(const char *label, WINDOW *win);\fR
|
|
|
|
.br
|
|
|
|
\fBchar *_traceattr(attr_t attr);\fR
|
|
|
|
.br
|
|
|
|
\fBchar *_traceattr2(int buffer, chtype ch);\fR
|
|
|
|
.br
|
|
|
|
\fBchar *_nc_tracebits(void);\fR
|
|
|
|
.br
|
|
|
|
\fBchar *_tracechar(const unsigned char ch);\fR
|
|
|
|
.br
|
|
|
|
\fBchar *_tracechtype(chtype ch);\fR
|
|
|
|
.br
|
|
|
|
\fBchar *_tracechtype2(int buffer, chtype ch);\fR
|
|
|
|
.br
|
|
|
|
\fBchar *_tracemouse(const MEVENT *event);\fR
|
|
|
|
.br
|
|
|
|
\fBvoid trace(const unsigned int param);\fR
|
|
|
|
.SH DESCRIPTION
|
|
|
|
The \fBtrace\fR routines are used for debugging the ncurses libraries,
|
|
|
|
as well as applications which use the ncurses libraries.
|
|
|
|
These functions are normally available only with the debugging library
|
|
|
|
\fIlibncurses_g.a\fR, but may be compiled into any model (shared, static,
|
|
|
|
profile) by defining the symbol \fBTRACE\fR.
|
2007-01-20 07:32:02 +00:00
|
|
|
.PP
|
2000-10-11 07:31:01 +00:00
|
|
|
The principal parts of this interface are the \fBtrace\fR routine which
|
|
|
|
selectively enables different tracing features, and the \fB_tracef\fR
|
|
|
|
routine which writes formatted data to the \fItrace\fR file.
|
2007-01-20 07:32:02 +00:00
|
|
|
.PP
|
2000-10-11 07:31:01 +00:00
|
|
|
Calling \fBtrace\fR with a nonzero parameter opens the file \fBtrace\fR
|
|
|
|
in the current directory for output. The parameter is formed by OR'ing
|
|
|
|
values from the list of \fBTRACE_\fP\fIxxx\fR definitions in \fB<curses.h>\fR.
|
|
|
|
These include:
|
|
|
|
.TP 5
|
|
|
|
TRACE_DISABLE
|
|
|
|
turn off tracing.
|
|
|
|
.TP 5
|
|
|
|
TRACE_TIMES
|
|
|
|
trace user and system times of updates.
|
|
|
|
.TP 5
|
|
|
|
TRACE_TPUTS
|
|
|
|
trace tputs calls.
|
|
|
|
.TP 5
|
|
|
|
TRACE_UPDATE
|
|
|
|
trace update actions, old & new screens.
|
|
|
|
.TP 5
|
|
|
|
TRACE_MOVE
|
|
|
|
trace cursor movement and scrolling.
|
|
|
|
.TP 5
|
|
|
|
TRACE_CHARPUT
|
|
|
|
trace all character outputs.
|
|
|
|
.TP 5
|
|
|
|
TRACE_ORDINARY
|
|
|
|
trace all update actions.
|
|
|
|
The old and new screen contents are written to the trace file
|
|
|
|
for each refresh.
|
|
|
|
.TP 5
|
|
|
|
TRACE_CALLS
|
|
|
|
trace all curses calls.
|
|
|
|
The parameters for each call are traced, as well as return values.
|
|
|
|
.TP 5
|
|
|
|
TRACE_VIRTPUT
|
|
|
|
trace virtual character puts, i.e., calls to \fBaddch\fR.
|
|
|
|
.TP 5
|
|
|
|
TRACE_IEVENT
|
|
|
|
trace low-level input processing, including timeouts.
|
|
|
|
.TP 5
|
|
|
|
TRACE_BITS
|
|
|
|
trace state of TTY control bits.
|
|
|
|
.TP 5
|
|
|
|
TRACE_ICALLS
|
|
|
|
trace internal/nested calls.
|
|
|
|
.TP 5
|
|
|
|
TRACE_CCALLS
|
|
|
|
trace per-character calls.
|
|
|
|
.TP 5
|
|
|
|
TRACE_DATABASE
|
|
|
|
trace read/write of terminfo/termcap data.
|
|
|
|
.TP 5
|
|
|
|
TRACE_ATTRS
|
|
|
|
trace changes to video attributes and colors.
|
|
|
|
.TP 5
|
|
|
|
TRACE_MAXIMUM
|
|
|
|
maximum trace level, enables all of the separate trace features.
|
2007-01-20 07:32:02 +00:00
|
|
|
.PP
|
2000-10-11 07:31:01 +00:00
|
|
|
Some tracing features are enabled whenever the \fBtrace\fR parameter
|
|
|
|
is nonzero. Some features overlap.
|
|
|
|
The specific names are used as a guideline.
|
|
|
|
.SH RETURN VALUE
|
|
|
|
Routines which return a value are designed to be used as parameters
|
|
|
|
to the \fB_tracef\fR routine.
|
|
|
|
.SH PORTABILITY
|
|
|
|
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 ncurses.
|
|
|
|
.SH SEE ALSO
|
|
|
|
\fBcurses\fR(3X).
|
|
|
|
.\"#
|
|
|
|
.\"# The following sets edit modes for GNU EMACS
|
|
|
|
.\"# Local Variables:
|
|
|
|
.\"# mode:nroff
|
|
|
|
.\"# fill-column:79
|
|
|
|
.\"# End:
|