curs_extend(3X)

NAME
curses_version, use_extended_names - miscellaneous ncurses extensions

SYNOPSIS
#include <ncurses/curses.h>

const char * curses_version(void);
int use_extended_names(bool bf);

DESCRIPTION
These ncurses extensions to the curses library do not fit easily into other functional categories.

  curses_version
curses_version returns a pointer to a string containing the library's name and version number, including its patch level, for example “ncurses 6.5.20240720”.

  use_extended_names
use_extended_names configures whether the library recognizes user-defined or nonstandard terminfo capability names that may be compiled into terminal type descriptions via the curs_terminfo(3X) or curs_termcap(3X) interfaces. Normally these names are available for use, since the essential decision is made through use of tic(1)'s -x option to include such extensions in terminal type descriptions. use_extended_names(FALSE) prevents ncurses from recognizing these capabilities to ensure compatibility with other implementations of curses.

RETURN VALUE
curses_version returns a constant string.

use_extended_names returns the previous state of extended capability name recognition, allowing you to save this property and restore it.

NOTES
The pointer returned by curses_version corresponds to statically allocated memory; do not attempt to free(3) it.

EXTENSIONS
These functions are ncurses extensions, and are not found in SVr4 curses, 4.4BSD curses, or any other previous curses implementation.

PORTABILITY
Applications employing ncurses extensions should condition their use on the visibility of the NCURSES_VERSION preprocessor macro.

NetBSD 9 added a curses_version function that intentionally returns a string devoid of version information.

AUTHORS
Thomas Dickey

SEE ALSO
ncurses offers several other extensions to the X/Open Curses API.

curs_getch(3X), curs_inopts(3X), curs_mouse(3X), curs_print(3X), curs_util(3X), default_colors(3X), define_key(3X), keybound(3X), keyok(3X), new_pair(3X), resizeterm(3X), wresize(3X)