.\" Copyright (c) 1980 Regents of the University of California.
.\" All rights reserved. The Berkeley software License Agreement
.\" specifies the terms and conditions for redistribution.
.\" @(#)doc.III 6.1 (Berkeley) 4/23/86
Returns the output baud rate of the terminal.
This is a system dependent constant
Deletes the window from existence.
All resources are freed for future use by
allocated window inside of it,
deleting the outer window
the subwindow is not affected,
even though this does invalidate it.
subwindows should be deleted before their
Finish up window routines before exit.
This restores the terminal to the state it was before
It should always be called before exiting.
This is especially useful for resetting tty stats
when trapping rubouts via
Returns the erase character
the character used by the user to erase a single character from the input.
.Fd getcap str "" "char *"
.Fd getyx win\*,y\*,x \*m
you do not pass the address
Returns the character at the current \*(y
This does not make any changes to the window.
Initialize the screen routines.
This must be called before any of the screen routines are used.
It initializes the terminal-type data and such,
and without it none of the routines can operate.
If standard input is not a tty,
it sets the specifications to the terminal
whose name is pointed to by
If the system supports the
it is used to get the number of lines and columns for the terminal,
otherwise it is taken from the
Returns the line kill character
the character used by the user to erase an entire line from the input.
.Fd leaveok win\*,boolf \*m
Sets the boolean flag for leaving the cursor after the last change.
the cursor will be left after the last update on the terminal,
will be changed accordingly.
it will be moved to the current \*y.
retains its value until changed by the user.
.Fd longname termbuf\*,name
.Fd fullname termbuf\*,name
with the long name of the terminal described by the
It is generally of little use,
but is nice for telling the user in a readable format what terminal
This is available in the global variable
is usually set via the termlib routine
except that it gives the fullest name given in the entry,
which can be quite verbose.
Move the home position of the window
from its current starting coordinates
If that would put part or all of the window
off the edge of the terminal screen,
returns ERR and does not change anything.
also returns ERR if you attempt to move it off its main window.
If you move a main window,
all subwindows are moved along with it.
.Fd newwin lines\*,cols\*,begin\*_y\*,begin\*_x "" "WINDOW *"
int lines\*,cols\*,begin\*_y\*,begin\*_x;
columns starting at position
.Vn begin\*_y\*,begin\*_x ). (
that dimension will be set to
.Vn "LINES \- begin\*_y" ) (
.Vn "COLS \- begin\*_x" ) (
Thus, to get a new window of dimensions
.Fn newwin . "" 0\*,0\*,0\*,0
Set or unset the terminal to/from nl mode,
start/stop the system from mapping
If the mapping is not done,
can do more optimization,
so it is recommended, but not required, to turn it off.
.Fd scrollok win\*,boolf \*m
Set the scroll flag for the given window.
is FALSE, scrolling is not allowed.
This is its default setting.
.Fd touchline win\*,y\*,startx\*,endx
This function performs a function similar to
It marks the first change for the given line
if it is before the current first change mark,
the last change mark is set to be
if it is currently less than
.Fd touchoverlap win1\*,win2
in the area which overlaps with
Make it appear that the every location on the window
This is usually only needed for refreshes with overlapping windows.
.Fd subwin win\*,lines\*,cols\*,begin\*_y\*,begin\*_x "" "WINDOW *"
int lines\*,cols\*,begin\*_y\*,begin\*_x;
columns starting at position
.Vn begin\*_y\*,begin\*_x ) (
This means that any change made to either window
by the subwindow will be made on both windows.
.Vn begin\*_y\*,begin\*_x
are specified relative to the overall screen,
not the relative (0\*,0) of
that dimension will be set to
.Vn "LINES \- begin\*_y" ) (
.Vn "COLS \- begin\*_x" ) (
This is actually a debug function for the library,
but it is of general usefulness.
It returns a string which is a representation of
Control characters become their upper-case equivalents preceded by a "^".
Other letters stay just as they are.