curs_insch(3X)                   Library calls                  curs_insch(3X)

NAME

     insch, winsch, mvinsch, mvwinsch - insert a curses character in a window

SYNOPSIS

     #include <curses.h>

     int insch(chtype ch);
     int winsch(WINDOW * win, chtype ch);
     int mvinsch(int y, int x, chtype ch);
     int mvwinsch(WINDOW * win, int y, int x, chtype ch);

DESCRIPTION

     winsch inserts the curses character ch at the cursor position in the
     window win.  The character previously at the cursor and any to its right
     move one cell to the right; the formerly rightmost character on the line
     is discarded.  Unlike addch(3X), winsch does not advance the cursor.
     ncurses(3X) describes the variants of this function.

RETURN VALUE

     These functions return OK on success and ERR on failure.

     In ncurses, they return ERR if

     o   the curses screen has not been initialized, or

     o   (for functions taking a WINDOW pointer argument) win is a null
         pointer.

     Functions prefixed with "mv" first perform cursor movement and fail if
     the position (y, x) is outside the window boundaries.

NOTES

     insch, mvinsch, and mvwinsch may be implemented as macros.

     curses does not necessarily employ the terminal's insert_character (ich1)
     capability to achieve insertion.

PORTABILITY

     X/Open Curses Issue 4 describes these functions.  It specifies no error
     conditions for them.

     SVr4 describes a successful return value only as "an integer value other
     than ERR".

HISTORY

     SVr2 (1984) introduced these functions.

SEE ALSO

     curs_ins_wch(3X) describes comparable functions in the wide-character
     curses configuration.

     curses(3X), terminfo(5)

ncurses 6.6                       2025-03-08                    curs_insch(3X)