curs\_insch(3X) Library calls curs\_insch(3X)

# [NAME](#NAME)

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

# [SYNOPSIS](#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](#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)](/man/os/ncurses/addch.3X), **winsch** does not advance the cursor. [**ncurses**(3X)](/man/os/ncurses/ncurses.3X) describes the variants of this function.

# [RETURN VALUE](#RETURN_VALUE)

These functions return **OK** on success and **ERR** on failure.

In *ncurses*, they return **ERR** if

- the *curses* screen has not been initialized, or
- (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](#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](#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](#HISTORY)

SVr2 (1984) introduced these functions.

# [SEE ALSO](#SEE_ALSO)

[**curs\_ins\_wch**(3X)](/man/os/ncurses/curs_ins_wch.3X) describes comparable functions in the wide-character *curses* configuration.

[**curses**(3X)](/man/os/ncurses/curses.3X), [**terminfo**(5)](/man/os/ncurses/terminfo.5)

2025-03-08 ncurses 6.6

---

Document: mvinsch(3x) from ncurses 6.6.20260926-r0 (Chainguard OS)
Source: https://github.com/ThomasDickey/ncurses-snapshots
