notcurses_stdplane(3)

notcurses_stdplane3

Acquire the standard ncplane

Overview

notcurses_stdplane returns a handle to the standard ncplane for the context nc. The standard plane always exists, and is always the same size as the screen. It is an error to call ncplane_destroy(3), ncplane_resize(3), or ncplane_move(3) on the standard plane, but it can be freely moved along the z-axis.

The standard plane's virtual cursor is initialized to its uppermost, leftmost cell unless NCOPTION_PRESERVE_CURSOR is provided (see notcurses_init(3)), in which case it is placed wherever the terminal's real cursor was at startup.

notcurses_stddim_yx provides the same function, but also writes the dimensions of the standard plane (and thus the real drawable area) into any non-NULL parameters among y and x.

notcurses_stdplane_const allows a const notcurses to be safely used.

A resize event does not invalidate these references. They can be used until notcurses_stop(3) is called on the associated nc.

notcurses_enter_alternate_screen and notcurses_leave_alternate_screen only have meaning if the terminal implements the "alternate screen" via the smcup and rmcup terminfo(5) capabilities (see the discussion of NCOPTION_NO_ALTERNATE_SCREEN in notcurses_init(3)). If not currently using the alternate screen, and assuming it is supported, notcurses_enter_alternate_screen will switch to the alternate screen. This redraws the contents, repositions the cursor, and usually makes scrollback unavailable. The standard plane will have scrolling disabled upon a move to the alternate plane.

Return values

notcurses_enter_alternate_screen will return -1 if the alternate screen is unavailable. Both it and notcurses_leave_alternate_screen will return -1 on an I/O failure.

Other functions cannot fail when provided a valid struct notcurses. They will always return a valid pointer to the standard plane.

Releases

2 releases since Debian 11 (Bullseye); the text changed 1 time.

  1. 11
  2. Arch

Authors

nick black ⟨[email protected]⟩\c.

From notcurses 3.0.17-3 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.