mirror of
https://github.com/Aigor44/ncursesw-morphos.git
synced 2024-12-27 07:49:06 +08:00
a8e3f06ac3
+ build-fix for termcap-configuration (report by Chi-Hsuan Yen). + improve terminfo manual page discussion of control- and graphics- characters. + remove tic warning about "^?" in string capabilities, which was marked as an extension (cf: 20000610, 20110820); however all Unix implementations support this and X/Open Curses does not address it. On the other hand, termcap never did support this feature. + correct missing comma-separator between string capabilities in icl6402 and m2-nam -TD + restore rmir/smir in ansi+idc to better match original ansiterm+idc, add alias ansiterm (report by Robert King). + amend an old check for ambiguous use of "ma" in terminfo versus a termcap use, if the capability is cancelled to treat it as number. + correct a case in _nc_captoinfo() which read "%%" and emitted "%". + modify sscanf calls in _nc_infotocap() for patterns "%{number}%+%c" and "%'char'%+%c" to check that the final character is really 'c', avoiding a case in icl6404 which cannot be converted to termcap. + in _nc_infotocap(), add a check to ensure that terminfo "^?" is not written to termcap, because the BSDs did not implement that. + in _nc_tic_expand() and _nc_infotocap(), improve string-length check when deciding whether to use "^X" or "\xxx" format for control characters, to make the output of tic/infocmp more predictable. + limit termcap "%d" width to 2 digits on input, and use "%2" in preference to "%02" on output. + correct terminfo/termcap conversion of "%02" and "%03" into "%2" and "%3"; the result repeated the last character. + add man/scr_dump.5 to document screen-dump format.
101 lines
4.7 KiB
Plaintext
101 lines
4.7 KiB
Plaintext
.\"***************************************************************************
|
|
.\" Copyright (c) 1998-2010,2017 Free Software Foundation, Inc. *
|
|
.\" *
|
|
.\" 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. *
|
|
.\"***************************************************************************
|
|
.\"
|
|
.\" $Id: curs_scr_dump.3x,v 1.11 2017/04/17 00:41:24 tom Exp $
|
|
.TH curs_scr_dump 3X ""
|
|
.na
|
|
.hy 0
|
|
.SH NAME
|
|
\fBscr_dump\fR,
|
|
\fBscr_restore\fR,
|
|
\fBscr_init\fR,
|
|
\fBscr_set\fR \- read (write) a \fBcurses\fR screen from (to) a file
|
|
.ad
|
|
.hy
|
|
.SH SYNOPSIS
|
|
\fB#include <curses.h>\fR
|
|
.sp
|
|
\fBint scr_dump(const char *filename);\fR
|
|
.br
|
|
\fBint scr_restore(const char *filename);\fR
|
|
.br
|
|
\fBint scr_init(const char *filename);\fR
|
|
.br
|
|
\fBint scr_set(const char *filename);\fR
|
|
.br
|
|
.SH DESCRIPTION
|
|
The \fBscr_dump\fR routine dumps the current contents of the virtual screen
|
|
to the file \fIfilename\fR.
|
|
.PP
|
|
The \fBscr_restore\fR routine sets the virtual screen to the contents
|
|
of \fIfilename\fR, which must have been written using \fBscr_dump\fR. The next
|
|
call to \fBdoupdate\fR restores the screen to the way it looked in the dump
|
|
file.
|
|
.PP
|
|
The \fBscr_init\fR routine reads in the contents of \fIfilename\fR and uses
|
|
them to initialize the \fBcurses\fR data structures about what the terminal
|
|
currently has on its screen. If the data is determined to be valid,
|
|
\fBcurses\fR bases its next update of the screen on this information rather
|
|
than clearing the screen and starting from scratch. \fBscr_init\fR is used
|
|
after \fBinitscr\fR or a \fBsystem\fR call to share
|
|
the screen with another process which has done a \fBscr_dump\fR after its
|
|
\fBendwin\fR(3X) call. The data is declared invalid if the terminfo capabilities
|
|
\fBrmcup\fR and \fBnrrmc\fR exist; also if the terminal has been written to
|
|
since the preceding \fBscr_dump\fR call.
|
|
.PP
|
|
The \fBscr_set\fR routine is a combination of \fBscr_restore\fR and
|
|
\fBscr_init\fR. It tells the program that the information in \fIfilename\fR is
|
|
what is currently on the screen, and also what the program wants on the screen.
|
|
This can be thought of as a screen inheritance function.
|
|
.PP
|
|
To read (write) a window from (to) a file, use the \fBgetwin\fR and
|
|
\fBputwin\fR routines [see \fBcurs_util\fR(3X)].
|
|
.SH RETURN VALUE
|
|
All routines return the integer \fBERR\fR upon failure and \fBOK\fR
|
|
upon success.
|
|
.PP
|
|
X/Open defines no error conditions.
|
|
In this implementation,
|
|
each will return an error if the file cannot be opened.
|
|
.SH NOTES
|
|
Note that \fBscr_init\fR, \fBscr_set\fR, and \fBscr_restore\fR may be macros.
|
|
.SH PORTABILITY
|
|
The XSI Curses standard, Issue 4, describes these functions (adding the const
|
|
qualifiers).
|
|
.PP
|
|
The SVr4 docs merely say under \fBscr_init\fR that the dump data is also
|
|
considered invalid "if the time-stamp of the tty is old" but do not define
|
|
"old".
|
|
.SH SEE ALSO
|
|
\fBcurses\fR(3X),
|
|
\fBcurs_initscr\fR(3X),
|
|
\fBcurs_refresh\fR(3X),
|
|
\fBcurs_util\fR(3X),
|
|
\fBscr_dump\fR(5),
|
|
\fBsystem\fR(3)
|