]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - man/keybound.3x
ncurses 6.5 - patch 20240518
[ncurses.git] / man / keybound.3x
index bd8bb80f3c449875fbb07be4a5341244b991e57b..4769206927057d985ee27168b6b9609e249b2e41 100644 (file)
 .\"
 .\" Author: Thomas E. Dickey 1999
 .\"
-.\" $Id: keybound.3x,v 1.36 2024/03/16 15:35:01 tom Exp $
-.TH keybound 3X 2024-03-16 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: keybound.3x,v 1.38 2024/05/18 20:05:36 tom Exp $
+.TH keybound 3X 2024-05-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .SH NAME
 \fB\%keybound\fP \-
-get definition of \fIcurses\fR keycode
+get definition of a \fIcurses\fP function key code
 .SH SYNOPSIS
 .nf
 \fB#include <curses.h>
 .PP
-\fBchar * keybound(int \fIkeycode\fP, int \fIcount\fP);
+\fBchar * keybound(int \fIkey-code\fP, int \fIcount\fP);
 .fi
 .SH DESCRIPTION
-This is an extension to the \fIcurses\fP library.
-It permits an application to determine the string which is defined
-in the terminfo for specific keycodes.
+The
+.B \%keybound
+.I \%ncurses
+extension permits a
+.I curses
+application to obtain the value of the string
+.I bound
+to the function key
+.IR key-code ";"
+see \fB\%wgetch\fP(3X)
+(wide-character API users: \fB\%wget_wch\fP(3X)).
+By default,
+such bindings are string capabilities from the
+.I \%term\%info
+database entry corresponding to the terminal type.
+The application can non-destructively and repeatedly
+override such definitions with
+\fB\%define_key\fP(3X),
+as if by pushing new definitions onto a stack.
+The
+.I count
+parameter accesses the
+.IR n th
+most recently defined binding;
+.B 0
+selects the binding that is used on input.
 .SH RETURN VALUE
-The \fIkeycode\fP parameter must be greater than zero,
-else \fBNULL\fP is returned.
-If it does not correspond to a defined key, then \fBNULL\fP is returned.
-The \fIcount\fP parameter is used to allow the application to iterate
-through multiple definitions, counting from zero.
-When successful,
-the function returns a string which must be freed by the caller.
+If
+.I key-code
+corresponds to a function key defined
+by the application
+or the terminal type in use,
+.B \%keybound
+allocates and returns a string
+that must be freed by the application.
+.B \%keybound
+returns
+.B NULL
+if
+.I key-code
+is not positive
+or if it does not correspond to a key code definition.
+.SH EXTENSIONS
+.B \%keybound
+is an
+.I \%ncurses
+extension.
 .SH PORTABILITY
-This routine is specific to \fI\%ncurses\fP.
-It was 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.
+Applications employing
+.I \%ncurses
+extensions should condition their use on the visibility of the
+.B \%NCURSES_VERSION
+preprocessor macro.
 .SH AUTHORS
 Thomas Dickey
 .SH SEE ALSO
+\fB\%ncurses\fP(3X),
 \fB\%define_key\fP(3X),
-\fB\%keyok\fP(3X)
+\fB\%key_defined\fP(3X),
+\fB\%keyok\fP(3X),
+\fB\%terminfo\fP(5)