Provided by: ncurses-doc_6.1+20190803-1ubuntu1_all bug


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


       #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);


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

       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 physical screen
       to the way it looked in the dump file.

       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


       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.


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


       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".


       ncurses(3NCURSES),  initscr(3NCURSES),  refresh(3NCURSES),  util(3NCURSES),   scr_dump(5),