curs_termattrs(3x) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | NOTES | PORTABILITY | HISTORY | SEE ALSO | COLOPHON

curs_termattrs(3X)            Library calls            curs_termattrs(3X)

NAME         top

       baudrate, erasechar, erasewchar, has_ic, has_il, killchar,
       killwchar, longname, term_attrs, termattrs, termname - get and set
       terminal attributes with curses

SYNOPSIS         top

       #include <curses.h>

       int baudrate(void);
       char erasechar(void);
       int erasewchar(wchar_t * wc);
       bool has_ic(void);
       bool has_il(void);
       char killchar(void);
       int killwchar(wchar_t * wc);
       char * longname(void);
       attr_t term_attrs(void);
       chtype termattrs(void);
       char * termname(void);

DESCRIPTION         top

   baudrate
       baudrate returns the line speed of the terminal, an integer value
       measured in bits per second, for example 9600.

   erasechar, erasewchar
       erasechar returns the terminal's erase character.

       erasewchar stores the erase character in the location referenced
       by wc.  If no erase character has been defined, it fails and the
       location referenced by wc is not changed.

   has_ic, has_il
       has_ic returns TRUE if the terminal has insert- and delete-
       character capabilities.

       has_il returns TRUE if the terminal has insert- and delete-line
       capabilities, or can simulate them using scrolling regions.  It
       might be used to determine whether it would be appropriate to use
       scrollok(3X) to turn on scrolling.

   killchar, killwchar
       killchar returns the terminal's line kill character.

       killwchar stores the line-kill character in the location
       referenced by wc.  If no line-kill character has been defined, it
       fails and the location referenced by wc is not changed.

   longname
       longname returns a pointer to static storage containing a verbose
       description of the terminal being managed by curses.  The maximum
       length of a verbose description is 128 characters.  The storage is
       populated only after initscr(3X) or newterm(3X) is called.  This
       storage is overwritten by each call to newterm and not restored by
       set_term(3X), so its contents should be saved between calls to
       initscr or newterm if longname is to be used with multiple
       terminals.

   termattrs, term_attrs
       If a given terminal does not support a video attribute that an
       application program is trying to use, curses may substitute a
       different video attribute for it.  termattrs and term_attrs return
       a logical “or” of all video attributes supported by the terminal
       using A_ and WA_ constants respectively.  This information is
       useful when a curses program needs complete control over the
       appearance of the screen.

   termname
       termname returns the terminal name used by setupterm(3X).

RETURN VALUE         top

       longname and termname return NULL on error.

       Functions that return an integer return ERR upon failure and OK
       upon success.

NOTES         top

       erasewchar, killwchar, and term_attrs are part of ncurses's wide-
       character API, and are not available in its non-wide-character
       configuration.

       termattrs may be implemented as a macro.

PORTABILITY         top

       X/Open Curses Issue 4 describes these functions.

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

       Most versions of curses truncate the string returned by termname
       to 14 characters.

HISTORY         top

       4BSD (1980) introduced longname.

       SVr2 (1984) added baudrate, erasechar, killchar, has_ic, and
       has_il.

       SVr3 (1987) supplied termname.  Later that year, SVr3.1 brought
       termattrs.

       X/Open Curses Issue 4 (1995) specified erasewchar, killwchar, and
       term_attrs.

SEE ALSO         top

       curses(3X), curs_initscr(3X), curs_outopts(3X)

COLOPHON         top

       This page is part of the ncurses (new curses) project.
       Information about the project can be found at 
       ⟨https://invisible-island.net/ncurses/ncurses.html⟩.  If you have a
       bug report for this manual page, send it to bug-ncurses@gnu.org.
       This page was obtained from the tarball ncurses-6.6.tar.gz fetched
       from ⟨https://ftp.gnu.org/gnu/ncurses/⟩ on 2026-01-16.  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for the
       page, or you have corrections or improvements to the information
       in this COLOPHON (which is not part of the original manual page),
       send a mail to man-pages@man7.org

ncurses @NCURSES_MAJOR@.@NCU... 2025-08-23             curs_termattrs(3X)