curs_scr_dump(3X)                                          curs_scr_dump(3X)

NAME         top

       scr_dump, scr_restore, scr_init, scr_set - read (write) a curses
       screen from (to) a file

SYNOPSIS         top

       #include <curses.h>

       int scr_dump(const char *filename);
       int scr_restore(const char *filename);
       int scr_init(const char *filename);
       int scr_set(const char *filename);

DESCRIPTION         top

       The scr_dump routine dumps the current contents of the virtual screen
       to the file filename.

       The scr_restore routine sets the virtual screen to the contents of
       filename, which must have been written using scr_dump.  The next call
       to doupdate restores the screen to the way it looked in the dump

       The scr_init routine reads in the contents of filename and uses them
       to initialize the curses data structures about what the terminal
       currently has on its screen.  If the data is determined to be valid,
       curses bases its next update of the screen on this information rather
       than clearing the screen and starting from scratch.  scr_init is used
       after initscr or a system call to share the screen with another
       process which has done a scr_dump after its endwin(3X) call.  The
       data is declared invalid if the terminfo capabilities rmcup and nrrmc
       exist; also if the terminal has been written to since the preceding
       scr_dump call.

       The scr_set routine is a combination of scr_restore and scr_init.  It
       tells the program that the information in filename 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.

       To read (write) a window from (to) a file, use the getwin and putwin
       routines [see curs_util(3X)].

RETURN VALUE         top

       All routines return the integer ERR upon failure and OK upon success.

       X/Open defines no error conditions.  In this implementation, each
       will return an error if the file cannot be opened.

NOTES         top

       Note that scr_init, scr_set, and scr_restore may be macros.

PORTABILITY         top

       The XSI Curses standard, Issue 4, describes these functions (adding
       the const qualifiers).

       The SVr4 docs merely say under scr_init that the dump data is also
       considered invalid "if the time-stamp of the tty is old" but do not
       define "old".

SEE ALSO         top

       curses(3X), curs_initscr(3X), curs_refresh(3X), curs_util(3X),

COLOPHON         top

       This page is part of the ncurses (new curses) project.  Information
       about the project can be found at 
       ⟨⟩.  If you have a
       bug report for this manual page, send it to  This page was obtained from the
       project's upstream Git mirror of the CVS repository 
       ⟨git://⟩ on 2017-03-13.  If you
       discover any rendering problems in this HTML version of the page, or
       you believe there is a better or more up-to-date source for the page,
       or you have corrections or improvements to the information in this
       COLOPHON (which is not part of the original manual page), send a mail