.\"***************************************************************************
-.\" Copyright 2018-2022,2023 Thomas E. Dickey *
+.\" Copyright 2018-2023,2024 Thomas E. Dickey *
.\" Copyright 1998-2016,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_kernel.3x,v 1.49 2023/10/14 22:03:52 tom Exp $
-.TH curs_kernel 3X 2023-10-14 "ncurses 6.4" "Library calls"
+.\" $Id: curs_kernel.3x,v 1.53 2024/01/05 21:46:58 tom Exp $
+.TH curs_kernel 3X 2024-01-05 "ncurses 6.4" "Library calls"
.ie \n(.g \{\
.ds `` \(lq
.ds '' \(rq
The following routines give low-level access
to various \fBcurses\fP capabilities.
These routines typically are used inside library routines.
-.SS def_prog_mode, def_shell_mode
+.SS "def_prog_mode, def_shell_mode"
The \fBdef_prog_mode\fP and \fBdef_shell_mode\fP routines save the
current terminal modes as the \*(``program\*(''
(in \fBcurses\fP) or \*(``shell\*(''
This is done automatically by \fBinitscr\fP.
There is one such save area for each screen context
allocated by \fBnewterm\fP.
-.SS reset_prog_mode, reset_shell_mode
+.SS "reset_prog_mode, reset_shell_mode"
The \fBreset_prog_mode\fP and \fBreset_shell_mode\fP routines restore
the terminal to \*(``program\*('' (in \fBcurses\fP) or \*(``shell\*('' (out of
\fBcurses\fP) state.
These are done automatically by \fBendwin\fP(3X) and,
after an \fBendwin\fP, by \fBdoupdate\fP,
so they normally are not called.
-.SS resetty, savetty
+.SS "resetty, savetty"
The \fBresetty\fP and \fBsavetty\fP routines save and restore the
state of the terminal modes.
\fBsavetty\fP saves the current state in
This implementation gets it right, but it may be unwise to count
on the correctness of the return value anywhere else.
.PP
-Both ncurses and SVr4 will call \fBcurs_set\fP in \fBendwin\fP
+Both \fI\%ncurses\fP and SVr4 will call \fBcurs_set\fP in \fBendwin\fP
if \fBcurs_set\fP
has been called to make the cursor other than normal, i.e., either
invisible or very visible.
-There is no way for ncurses to determine the initial cursor state to
-restore that.
+There is no way for \fI\%ncurses\fP to determine the initial cursor
+state to restore that.
.SH PORTABILITY
The \fIvirtual screen\fP functions \fBsetsyx\fP and \fBgetsyx\fP
are not described in the XSI Curses standard, Issue 4.
This is misleading, as they are macros with no documented semantics
for the return value.
.PP
-If interrupted, ncurses restarts \fBnapms\fP.
+If interrupted, \fI\%ncurses\fP restarts \fBnapms\fP.
That, and the limitation to 30 seconds,
are different from other implementations.
.SH SEE ALSO