.\"***************************************************************************
-.\" Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
+.\" Copyright 2018-2022,2023 Thomas E. Dickey *
+.\" Copyright 1998-2010,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" copy of this software and associated documentation files (the *
.\"
.\" Author: Thomas E. Dickey 1997
.\"
-.\" $Id: define_key.3x,v 1.14 2010/12/04 18:49:20 tom Exp $
-.TH define_key 3X ""
+.\" $Id: define_key.3x,v 1.37 2023/10/07 21:19:07 tom Exp $
+.TH define_key 3X 2023-10-07 "ncurses 6.4" "Library calls"
.SH NAME
-\fBdefine_key\fP \- define a keycode
+\fB\%define_key\fP \-
+define a \fIcurses\fR keycode
.SH SYNOPSIS
-\fB#include <curses.h>\fP
-.sp
-\fBint define_key(const char *definition, int keycode);\fP
+.nf
+\fB#include <curses.h>
+.PP
+\fBint define_key(const char *\fIdefinition\fP, int \fIkeycode\fP);
+.fi
.SH DESCRIPTION
-This is an extension to the curses library.
+This is an extension to the \fIcurses\fP library.
It permits an application to define keycodes with their corresponding control
-strings, so that the ncurses library will interpret them just as it would
+strings, so that the \fIncurses\fP library will interpret them just as it would
the predefined codes in the terminfo database.
.PP
-If the given string is null, any existing definition for the keycode is
-removed.
+If \fIdefinition\fP is \fBNULL\fP,
+any existing one for the keycode is removed.
Similarly, if the given keycode is negative or zero, any existing string
for the given definition is removed.
.SH RETURN VALUE
-The keycode must be greater than zero, and the string non-null,
-otherwise ERR is returned.
-ERR may also be returned if there is insufficient memory to allocate the
+Either \fIkeycode\fP must be greater than zero,
+or \fIdefinition\fP must be non-\fBNULL\fP,
+otherwise \fBERR\fP is returned.
+\fBERR\fP may also be returned if there is insufficient memory to allocate the
data to store the definition.
-If no error is detected, OK is returned.
+If no error is detected, \fBOK\fP is returned.
.SH PORTABILITY
-These routines are specific to ncurses. They were not supported on
-Version 7, BSD or System V implementations. It is recommended that
-any code depending on them be conditioned using NCURSES_VERSION.
-.SH SEE ALSO
-\fBkeyok\fR(3X),
-\fBkey_defined\fR(3X).
+These routines are specific to \fIncurses\fP.
+They were not supported on
+Version 7, BSD or System V implementations.
+It is recommended that
+any code depending on them be conditioned using \fB\%NCURSES_VERSION\fP.
.SH AUTHOR
-Thomas Dickey.
+Thomas Dickey
+.SH SEE ALSO
+\fB\%keyok\fP(3X),
+\fB\%key_defined\fP(3X)