.\"***************************************************************************
-.\" Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. *
+.\" Copyright 2018-2023,2024 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.13 2009/09/19 21:09:35 tom Exp $
-.TH define_key 3X ""
+.\" $Id: define_key.3x,v 1.42 2024/03/16 15:35:01 tom Exp $
+.TH define_key 3X 2024-03-16 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "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 \fI\%ncurses\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.
+These routines are specific to \fI\%ncurses\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 AUTHORS
+Thomas Dickey
.SH SEE ALSO
-\fBkeyok\fR(3X),
-\fBkey_defined\fR(3X).
-.SH AUTHOR
-Thomas Dickey.
-.\"#
-.\"# The following sets edit modes for GNU EMACS
-.\"# Local Variables:
-.\"# mode:nroff
-.\"# fill-column:79
-.\"# End:
+\fB\%keyok\fP(3X),
+\fB\%key_defined\fP(3X)