[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 04/11] man/define_key.3x: Revise.
From: |
G. Branden Robinson |
Subject: |
[PATCH 04/11] man/define_key.3x: Revise. |
Date: |
Sat, 18 May 2024 11:01:56 -0500 |
Content:
* Clarify synopsis: only the key codes of _function keys_ are affected.
* Add "EXTENSIONS" section, since this function is one.
* Document portability to NetBSD curses.
* Expand cross references to cover the other ncurses key binding
extension functions, and the main ncurses page.
Style:
* Put a space after pointer star in function synopsis.
* Use terminology more consistently, speaking of key "bindings" and of
"function keys" (in the curses sense) rather than "keys" in general.
* Spell "key code" thus, as two words. Hyphenate it when used as a
formal argument name.
* Recast.
* Favor active voice over passive.
* Favor present tense over future.
Markup:
* Define and use page-local `bP` macro for bulleted paragraphs.
* Favor man(7) font style macros over *roff font selection escape
sequences, except for man page cross references (because
man/make_sed.sh recognizes only certain patterns when rewriting such
cross references) and terms in the "NAME" section (because the
generated edit_man.sh script expects font selection escape sequences
when scraping terms from there to gather names for man page aliases).
* Break input lines after commas.
* Use font selection escape sequences more idiomatically; employ `\fP`
to return to the previous font in summary description, not `\fR` to
select roman.
---
man/define_key.3x | 104 ++++++++++++++++++++++++++++++++++++----------
1 file changed, 81 insertions(+), 23 deletions(-)
diff --git a/man/define_key.3x b/man/define_key.3x
index 667d8cd31..c63fad093 100644
--- a/man/define_key.3x
+++ b/man/define_key.3x
@@ -31,41 +31,99 @@
.\"
.\" $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"
+.
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
+.
.SH NAME
\fB\%define_key\fP \-
-define a \fIcurses\fR keycode
+define a \fIcurses\fP function key code
.SH SYNOPSIS
.nf
\fB#include <curses.h>
.PP
-\fBint define_key(const char *\fIdefinition\fP, int \fIkeycode\fP);
+\fBint define_key(const char * \fIdefinition\fP, int \fIkey-code\fP);
.fi
.SH DESCRIPTION
-This is an extension to the \fIcurses\fP library.
-It permits an application to define keycodes with their corresponding control
-strings,
-so that the \fI\%ncurses\fP library will interpret them just as it would
-the predefined codes in the terminfo database.
+The
+.B \%define_key
+.I \%ncurses
+extension permits a
+.I curses
+application to
+.I bind
+a string
+.I definition
+to the function key
+.I key-code
+returned by \fB\%wgetch\fP(3X)
+(wide-character API users:
+\fB\%wget_wch\fP(3X))
+when \fB\%keypad\fP(3X) is enabled in a window and a function key is
+pressed.
+.I \%ncurses
+interprets such a binding as it does those in the
+.I \%term\%info
+database entry for the terminal type.
.PP
-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.
+A
+.I definition
+of
+.B NULL
+removes any existing one
+.IR key-code "."
+Similarly,
+a non-positive
+.I key-code
+removes any existing bindings for
+.IR definition "."
.SH RETURN VALUE
-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, \fBOK\fP is returned.
+.B \%define_key
+returns
+.B ERR
+if
+.bP
+.I definition
+is
+.B NULL
+and
+.I key-code
+is nonpositive,
+or
+.bP
+insufficient memory is available to bind
+.I definition
+to
+.IR key-code "."
+.PP
+Otherwise,
+.B \%define_key
+returns
+.BR OK "."
+.SH EXTENSIONS
+.B \%define_key
+is an
+.I \%ncurses
+extension.
.SH PORTABILITY
-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.
+Applications employing
+.I \%ncurses
+extensions should condition their use on the visibility of the
+.B \%NCURSES_VERSION
+preprocessor macro.
+.PP
+NetBSD
+.I curses
+since 2.0 (2004) supports
+.BR \%define_key "."
.SH AUTHORS
Thomas Dickey
.SH SEE ALSO
+\fB\%ncurses\fP(3X),
+\fB\%keyok\fP(3X),
+\fB\%key_defined\fP(3X),
+\fB\%keybound\fP(3X),
\fB\%keyok\fP(3X),
-\fB\%key_defined\fP(3X)
+\fB\%terminfo\fP(5)
--
2.30.2
signature.asc
Description: PGP signature
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [PATCH 04/11] man/define_key.3x: Revise.,
G. Branden Robinson <=