# curs_ins_wch 3x 2025-10-20 ncurses 6.6 Library calls

    curs_ins_wch(3x)                 Library calls                curs_ins_wch(3x)

## NAME

           ins_wch,  wins_wch,  mvins_wch,  mvwins_wch  -  insert a curses complex
           character in a window

## SYNOPSIS

           #include <curses.h>

           int ins_wch(const cchar_t * wch);
           int wins_wch(WINDOW * win, const cchar_t * wch);
           int mvins_wch(int y, int x, const cchar_t * wch);
           int mvwins_wch(WINDOW * win, int y, int x, const cchar_t * wch);

## DESCRIPTION

           wins_wch inserts  the  curses  complex  character  wch  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 add_wch(3x), wins_wch  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

           ins_wch, mvins_wch, and mvwins_wch 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.

## HISTORY

           X/Open  Curses Issue 4 (1995) initially specified these functions.  The
           System V Interface Definition Version 4 of the same  year  specified  a
           function  named  winswch  (and  the  usual variants).  This was a later
           addition to SVr4.x,  not  appearing  in  the  first  SVr4  (1989).   It
           differed  from  X/Open's  later wins_wch in that it took an argument of
           type chtype instead of cchar_t.

## SEE ALSO

           curs_insch(3x) describes comparable functions in the non-wide-character
           curses configuration.

           curses(3x), terminfo(5)

    ncurses 6.6                       2025-10-20                  curs_ins_wch(3x)