curs_ins_wch(3x) Library calls curs_ins_wch(3x)
ins_wch, wins_wch, mvins_wch, mvwins_wch - insert a curses complex
character in a window
#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);
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.
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.
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.
X/Open Curses Issue 4 describes these functions. It specifies no error
conditions for them.
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.
curs_insch(3x) describes comparable functions in the non-wide-character
curses configuration.
curses(3x), terminfo(5)
ncurses 6.5 2025-03-08 curs_ins_wch(3x)