# define_key 3x 2024-12-28 ncurses 6.5 Library calls

    define_key(3x)                   Library calls                  define_key(3x)

## NAME

           define_key - define a curses function key code

## SYNOPSIS

           #include <curses.h>

           int define_key(const char * definition, int key-code);

## DESCRIPTION

           The define_key ncurses extension permits a curses application to bind a
           string  definition  to the function key key-code returned by wgetch(3x)
           (wide-character API users: wget_wch(3x)) when keypad(3x) is enabled  in
           a  window  and  a  function  key is pressed.  ncurses interprets such a
           binding as it does  those  in  the  terminfo  database  entry  for  the
           terminal type.

           A  definition  of  NULL  removes  any  existing  binding from key-code.
           Similarly, a non-positive key-code  removes  an  existing  binding  for
           definition, if any.

## RETURN VALUE

           define_key returns ERR if

           o   definition is NULL and key-code is nonpositive, or

           o   insufficient memory is available to bind definition to key-code.

           Otherwise, define_key returns OK.

## EXTENSIONS

           define_key is an ncurses extension.

## PORTABILITY

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

           NetBSD curses since 2.0 (2004) supports define_key.

## AUTHORS

           Thomas Dickey

## SEE ALSO

           curses(3x), keybound(3x), keyok(3x), key_defined(3x), terminfo(5)

    ncurses 6.5                       2024-12-28                    define_key(3x)