bug-ncurses
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 02/61] Rearrange man page sections for consistency.


From: G. Branden Robinson
Subject: [PATCH 02/61] Rearrange man page sections for consistency.
Date: Fri, 24 Nov 2023 11:58:25 -0600

man/curs_attr.3x: Relocate "PORTABILITY" after "NOTES" and before
"HISTORY".

man/clear.1:
man/curs_printw.3x:
man/curs_scanw.3x: Relocate "PORTABILITY" before "HISTORY".

man/curs_bkgrnd.3x:
man/curs_border_set.3x:
man/curs_get_wch.3x: Relocate "NOTES" after "RETURN VALUE".

man/curs_terminfo.3x:
man/tput.1: Relocate "HISTORY" after "PORTABILITY".

man/infocmp.1m: Relocate "PORTABILITY" before "EXTENSIONS".  Relocate
"HISTORY" after "PORTABILITY".

man/ncurses.3x: Relocate "NOTES" before "EXTENSIONS".

man/tic.1m: Relocate "PORTABILITY" after "NOTES" and before "HISTORY".

curs_border_set.3x: Also delete redundant break request.  (The `SH`
macro breaks the line.)
---
 man/clear.1            |  20 ++--
 man/curs_attr.3x       | 178 +++++++++++++++++-----------------
 man/curs_bkgrnd.3x     |  19 ++--
 man/curs_border_set.3x |  21 ++--
 man/curs_get_wch.3x    |  54 ++++++-----
 man/curs_printw.3x     |  38 ++++----
 man/curs_scanw.3x      |  76 +++++++--------
 man/curs_terminfo.3x   | 215 +++++++++++++++++++++--------------------
 man/infocmp.1m         |  56 +++++------
 man/ncurses.3x         |   8 +-
 man/tic.1m             | 180 +++++++++++++++++-----------------
 man/tput.1             |  96 +++++++++---------
 12 files changed, 481 insertions(+), 480 deletions(-)

diff --git a/man/clear.1 b/man/clear.1
index 8d5e0e52..5351a2bc 100644
--- a/man/clear.1
+++ b/man/clear.1
@@ -90,6 +90,16 @@ .SH OPTIONS
 .TP
 .B \-x
 prevents \fB\%@CLEAR@\fP from attempting to clear the scrollback buffer.
+.SH PORTABILITY
+Neither IEEE Std 1003.1/The Open Group Base Specifications Issue 7
+(POSIX.1-2008) nor X/Open Curses Issue 7 documents \fB\%@TSET@\fP or
+\fB\%@RESET@\fP.
+.PP
+The latter documents \fBtput\fP,
+which could be used to replace this utility either via a shell script or
+by an alias
+(such as a symbolic link)
+to run \fB\%@TPUT@\fP as \fB\%@CLEAR@\fP.
 .SH HISTORY
 A \fBclear\fP command using the \fItermcap\fP database and library
 appeared in 2BSD (1979).
@@ -171,16 +181,6 @@ .SH HISTORY
 \*(``\fB\%@TPUT@ clear\fP\*(''.
 That oversight was addressed in 2016 by reorganizing \fB\%@TPUT@\fP to
 share its logic with \fB\%@CLEAR@\fP and \fB\%@TSET@\fP.
-.SH PORTABILITY
-Neither IEEE Std 1003.1/The Open Group Base Specifications Issue 7
-(POSIX.1-2008) nor X/Open Curses Issue 7 documents \fB\%@TSET@\fP or
-\fB\%@RESET@\fP.
-.PP
-The latter documents \fBtput\fP,
-which could be used to replace this utility either via a shell script or
-by an alias
-(such as a symbolic link)
-to run \fB\%@TPUT@\fP as \fB\%@CLEAR@\fP.
 .SH SEE ALSO
 \fB\%@TPUT@\fP(1),
 \fB\%xterm\fP(1),
diff --git a/man/curs_attr.3x b/man/curs_attr.3x
index 4ecf7163..64e3b136 100644
--- a/man/curs_attr.3x
+++ b/man/curs_attr.3x
@@ -305,6 +305,95 @@ .SH NOTES
 within the alternate functions.
 You must use ncurses ABI 6 to support more than 256 color pairs.
 .\" ---------------------------------------------------------------------------
+.SH PORTABILITY
+These functions are described in the XSI Curses standard, Issue 4.
+The standard defined the dedicated type for highlights,
+\fBattr_t\fP, which was not defined in SVr4 curses.
+The functions taking \fBattr_t\fP arguments were not supported under SVr4.
+.PP
+Very old versions of this library did not force an update of the screen
+when changing the attributes.
+Use \fBtouchwin\fP to force the screen to match the updated attributes.
+.PP
+The XSI Curses standard states that whether the traditional functions
+\fBattron\fP/\fBattroff\fP/\fBattrset\fP can manipulate attributes other than
+\fBA_BLINK\fP, \fBA_BOLD\fP, \fBA_DIM\fP, \fBA_REVERSE\fP, \fBA_STANDOUT\fP, or
+\fBA_UNDERLINE\fP is \*(``unspecified\*(''.
+Under this implementation as well as
+SVr4 curses, these functions correctly manipulate all other highlights
+(specifically, \fBA_ALTCHARSET\fP, \fBA_PROTECT\fP, and \fBA_INVIS\fP).
+.PP
+XSI Curses added these entry points:
+.sp
+.RS
+\fBattr_get\fP, \fBattr_on\fP,
+\fBattr_off\fP, \fBattr_set\fP, \fBwattr_on\fP, \fBwattr_off\fP,
+\fBwattr_get\fP, \fBwattr_set\fP
+.RE
+.PP
+The new functions are intended to work with
+a new series of highlight macros prefixed with \fBWA_\fP.
+The older macros have direct counterparts in the newer set of names:
+.PP
+.RS
+.ne 9
+.TS
+l l
+_ _ _
+l l .
+\fBName\fP     \fBDescription\fP
+\fBWA_NORMAL\fP        Normal display (no highlight)
+\fBWA_STANDOUT\fP      Best highlighting mode of the terminal.
+\fBWA_UNDERLINE\fP     Underlining
+\fBWA_REVERSE\fP       Reverse video
+\fBWA_BLINK\fP Blinking
+\fBWA_DIM\fP   Half bright
+\fBWA_BOLD\fP  Extra bright or bold
+\fBWA_ALTCHARSET\fP    Alternate character set
+.TE
+.RE
+.PP
+XSI curses does not assign values to these symbols,
+nor does it state whether or not they are related to the
+similarly-named A_NORMAL, etc.:
+.bP
+The XSI curses standard specifies that each pair of corresponding \fBA_\fP
+and \fBWA_\fP-using functions operates on the same current-highlight
+information.
+.bP
+However, in some implementations, those symbols have unrelated values.
+.IP
+For example, the Solaris \fIxpg4\fP (X/Open) curses declares
+\fBattr_t\fP to be an unsigned short integer (16-bits),
+while \fBchtype\fP is a unsigned integer (32-bits).
+The \fBWA_\fP symbols in this case are different from the \fBA_\fP symbols
+because they are used for a smaller datatype which does not
+represent \fBA_CHARTEXT\fP or \fBA_COLOR\fP.
+.IP
+In this implementation (as in many others), the values happen to be
+the same because it simplifies copying information between
+\fBchtype\fP and \fBcchar_t\fP variables.
+.bP
+Because ncurses's \fBattr_t\fP can hold a color pair
+(in the \fBA_COLOR\fP field),
+a call to
+\fBwattr_on\fP,
+\fBwattr_off\fP, or
+\fBwattr_set\fP
+may alter the window's color.
+If the color pair information in the attribute parameter is zero,
+no change is made to the window's color.
+.IP
+This is consistent with SVr4 curses;
+X/Open Curses does not specify this.
+.PP
+The XSI standard extended conformance level adds new highlights
+\fBA_HORIZONTAL\fP, \fBA_LEFT\fP, \fBA_LOW\fP, \fBA_RIGHT\fP, \fBA_TOP\fP,
+\fBA_VERTICAL\fP (and corresponding \fBWA_\fP macros for each).
+As of August 2013,
+no known terminal provides these highlights
+(i.e., via the \fBsgr1\fP capability).
+.\" ---------------------------------------------------------------------------
 .SH HISTORY
 X/Open Curses is largely based on SVr4 curses,
 adding support for \*(``wide-characters\*('' (not specific to Unicode).
@@ -471,95 +560,6 @@ .SH EXTENSIONS
 the \fIopts\fP parameter is ignored except
 except to check that it is \fBNULL\fP.
 .\" ---------------------------------------------------------------------------
-.SH PORTABILITY
-These functions are supported in the XSI Curses standard, Issue 4.
-The standard defined the dedicated type for highlights,
-\fBattr_t\fP, which was not defined in SVr4 curses.
-The functions taking \fBattr_t\fP arguments were not supported under SVr4.
-.PP
-Very old versions of this library did not force an update of the screen
-when changing the attributes.
-Use \fBtouchwin\fP to force the screen to match the updated attributes.
-.PP
-The XSI Curses standard states that whether the traditional functions
-\fBattron\fP/\fBattroff\fP/\fBattrset\fP can manipulate attributes other than
-\fBA_BLINK\fP, \fBA_BOLD\fP, \fBA_DIM\fP, \fBA_REVERSE\fP, \fBA_STANDOUT\fP, or
-\fBA_UNDERLINE\fP is \*(``unspecified\*(''.
-Under this implementation as well as
-SVr4 curses, these functions correctly manipulate all other highlights
-(specifically, \fBA_ALTCHARSET\fP, \fBA_PROTECT\fP, and \fBA_INVIS\fP).
-.PP
-XSI Curses added these entry points:
-.sp
-.RS
-\fBattr_get\fP, \fBattr_on\fP,
-\fBattr_off\fP, \fBattr_set\fP, \fBwattr_on\fP, \fBwattr_off\fP,
-\fBwattr_get\fP, \fBwattr_set\fP
-.RE
-.PP
-The new functions are intended to work with
-a new series of highlight macros prefixed with \fBWA_\fP.
-The older macros have direct counterparts in the newer set of names:
-.PP
-.RS
-.ne 9
-.TS
-l l
-_ _ _
-l l .
-\fBName\fP     \fBDescription\fP
-\fBWA_NORMAL\fP        Normal display (no highlight)
-\fBWA_STANDOUT\fP      Best highlighting mode of the terminal.
-\fBWA_UNDERLINE\fP     Underlining
-\fBWA_REVERSE\fP       Reverse video
-\fBWA_BLINK\fP Blinking
-\fBWA_DIM\fP   Half bright
-\fBWA_BOLD\fP  Extra bright or bold
-\fBWA_ALTCHARSET\fP    Alternate character set
-.TE
-.RE
-.PP
-XSI curses does not assign values to these symbols,
-nor does it state whether or not they are related to the
-similarly-named A_NORMAL, etc.:
-.bP
-The XSI curses standard specifies that each pair of corresponding \fBA_\fP
-and \fBWA_\fP-using functions operates on the same current-highlight
-information.
-.bP
-However, in some implementations, those symbols have unrelated values.
-.IP
-For example, the Solaris \fIxpg4\fP (X/Open) curses declares
-\fBattr_t\fP to be an unsigned short integer (16-bits),
-while \fBchtype\fP is a unsigned integer (32-bits).
-The \fBWA_\fP symbols in this case are different from the \fBA_\fP symbols
-because they are used for a smaller datatype which does not
-represent \fBA_CHARTEXT\fP or \fBA_COLOR\fP.
-.IP
-In this implementation (as in many others), the values happen to be
-the same because it simplifies copying information between
-\fBchtype\fP and \fBcchar_t\fP variables.
-.bP
-Because ncurses's \fBattr_t\fP can hold a color pair
-(in the \fBA_COLOR\fP field),
-a call to
-\fBwattr_on\fP,
-\fBwattr_off\fP, or
-\fBwattr_set\fP
-may alter the window's color.
-If the color pair information in the attribute parameter is zero,
-no change is made to the window's color.
-.IP
-This is consistent with SVr4 curses;
-X/Open Curses does not specify this.
-.PP
-The XSI standard extended conformance level adds new highlights
-\fBA_HORIZONTAL\fP, \fBA_LEFT\fP, \fBA_LOW\fP, \fBA_RIGHT\fP, \fBA_TOP\fP,
-\fBA_VERTICAL\fP (and corresponding \fBWA_\fP macros for each).
-As of August 2013,
-no known terminal provides these highlights
-(i.e., via the \fBsgr1\fP capability).
-.\" ---------------------------------------------------------------------------
 .SH RETURN VALUE
 All routines return the integer \fBOK\fP on success, or \fBERR\fP on failure.
 .PP
diff --git a/man/curs_bkgrnd.3x b/man/curs_bkgrnd.3x
index 34ae0de1..5530df39 100644
--- a/man/curs_bkgrnd.3x
+++ b/man/curs_bkgrnd.3x
@@ -92,16 +92,6 @@ .SS getbkgrnd
 pointer.
 If the given window pointer is null,
 the character is not updated (but no error is returned).
-.SH NOTES
-Note that
-\fBbkgrnd\fP,
-\fBbkgrndset\fP, and
-\fBgetbkgrnd\fP
-may be macros.
-.PP
-X/Open Curses does not provide details on how the rendition is changed.
-This implementation follows the approach used in SVr4 curses,
-which is explained in the manual page for \fBwbkgd\fP.
 .SH RETURN VALUE
 The \fBbkgrndset\fP and \fBwbkgrndset\fP routines do not return a value.
 .PP
@@ -111,6 +101,15 @@ .SH RETURN VALUE
 A null window pointer is treated as an error.
 .bP
 A null character pointer is treated as an error.
+.SH NOTES
+\fB\%bkgrnd\fP,
+\fB\%bkgrndset\fP, and
+\fB\%getbkgrnd\fP
+may be available as macros.
+.PP
+X/Open Curses does not provide details on how the rendition is changed.
+This implementation follows the approach used in SVr4 curses,
+which is explained in the manual page for \fBwbkgd\fP.
 .SH PORTABILITY
 These functions are described in the XSI Curses standard, Issue 4
 (X/Open Curses).
diff --git a/man/curs_border_set.3x b/man/curs_border_set.3x
index f833acba..755f2a6c 100644
--- a/man/curs_border_set.3x
+++ b/man/curs_border_set.3x
@@ -171,17 +171,6 @@ .SH DESCRIPTION
 \fBmvwvline_set\fP, and
 \fBwvline_set\fP
 functions draw a line proceeding toward the last line of the window.
-.br
-.SH NOTES
-Note that
-\fBborder_set\fP,
-\fBhline_set\fP,
-\fBmvhline_set\fP,
-\fBmvvline_set\fP,
-\fBmvwhline_set\fP,
-\fBmvwvline_set\fP, and
-\fBvline_set\fP
-may be macros.
 .SH RETURN VALUE
 Upon successful completion, these functions return
 \fBOK\fP.
@@ -193,6 +182,16 @@ .SH RETURN VALUE
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
 or if the window pointer is null.
+.SH NOTES
+Note that
+\fBborder_set\fP,
+\fBhline_set\fP,
+\fBmvhline_set\fP,
+\fBmvvline_set\fP,
+\fBmvwhline_set\fP,
+\fBmvwvline_set\fP, and
+\fBvline_set\fP
+may be macros.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_add_wch\fP(3X),
diff --git a/man/curs_get_wch.3x b/man/curs_get_wch.3x
index 63036343..795c1fe0 100644
--- a/man/curs_get_wch.3x
+++ b/man/curs_get_wch.3x
@@ -138,32 +138,6 @@ .SS unget_wch
 which it may read via \fBwget_wch\fP
 by checking for the \fBKEY_CODE_YES\fP result,
 and using \fBungetch\fP for those special keys.
-.SH NOTES
-The header file
-\fB<curses.h>\fP
-automatically
-includes the header file
-\fB<stdio.h>\fP.
-.PP
-Applications should not define the escape key by itself as a single-character
-function.
-.PP
-When using
-\fBget_wch\fP,
-\fBwget_wch\fP,
-\fBmvget_wch\fP, or
-\fBmvwget_wch\fP, applications should
-not use
-\fBnocbreak\fP
-mode and
-\fBecho\fP
-mode
-at the same time.
-Depending on the state of the tty driver when each character
-is typed, the program may produce undesirable results.
-.PP
-All functions except \fBwget_wch\fP and \fBunget_wch\fP
-may be macros.
 .SH RETURN VALUE
 When
 \fBget_wch\fP,
@@ -188,6 +162,34 @@ .SH RETURN VALUE
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
 or if the window pointer is null.
+.SH NOTES
+The header file
+\fB<curses.h>\fP
+automatically
+includes the header file
+\fB<stdio.h>\fP.
+.PP
+Applications should not define the escape key by itself as a single-character
+function.
+.PP
+When using
+\fBget_wch\fP,
+\fBwget_wch\fP,
+\fBmvget_wch\fP, or
+\fBmvwget_wch\fP, applications should
+not use
+\fBnocbreak\fP
+mode and
+\fBecho\fP
+mode
+at the same time.
+Depending on the state of the tty driver when each character
+is typed, the program may produce undesirable results.
+.PP
+All of these symbols except
+\fB\%wget_wch\fP and
+\fB\%unget_wch\fP
+may be available as macros.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_getch\fP(3X),
diff --git a/man/curs_printw.3x b/man/curs_printw.3x
index 8d7c081d..fdf280d7 100644
--- a/man/curs_printw.3x
+++ b/man/curs_printw.3x
@@ -91,6 +91,25 @@ .SH RETURN VALUE
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
 or if the window pointer is null.
+.SH PORTABILITY
+In this implementation, \fBvw_printw\fP and \fBvwprintw\fP are equivalent,
+to support legacy applications.
+However, the latter (\fBvwprintw\fP) is obsolete:
+.bP
+The XSI Curses standard, Issue 4 described these functions.
+The function
+\fBvwprintw\fP is marked TO BE WITHDRAWN, and is to be replaced by a function
+\fBvw_printw\fP using the \fB<stdarg.h>\fP interface.
+.bP
+The Single Unix Specification, Version 2 states that
+\fBvw_printw\fP  is preferred to \fBvwprintw\fP since the latter requires
+including \fB<varargs.h>\fP, which
+cannot be used in the same file as \fB<stdarg.h>\fP.
+This implementation uses \fB<stdarg.h>\fP for both,
+because that header is included in \fB<curses.h\fP>.
+.bP
+X/Open Curses, Issue 5 (December 2007) marked \fBvwprintw\fP (along with
+\fBvwscanw\fP and the termcap interface) as withdrawn.
 .SH HISTORY
 While \fBprintw\fP was implemented in 4BSD,
 it was unused until 4.2BSD (which used it in games).
@@ -127,25 +146,6 @@ .SH HISTORY
 .PP
 X/Open Curses added \fBvw_printw\fP to replace \fBvwprintw\fP,
 stating that its \fBva_list\fP definition requires <stdarg.h>.
-.SH PORTABILITY
-In this implementation, \fBvw_printw\fP and \fBvwprintw\fP are equivalent,
-to support legacy applications.
-However, the latter (\fBvwprintw\fP) is obsolete:
-.bP
-The XSI Curses standard, Issue 4 described these functions.
-The function
-\fBvwprintw\fP is marked TO BE WITHDRAWN, and is to be replaced by a function
-\fBvw_printw\fP using the \fB<stdarg.h>\fP interface.
-.bP
-The Single Unix Specification, Version 2 states that
-\fBvw_printw\fP  is preferred to \fBvwprintw\fP since the latter requires
-including \fB<varargs.h>\fP, which
-cannot be used in the same file as \fB<stdarg.h>\fP.
-This implementation uses \fB<stdarg.h>\fP for both,
-because that header is included in \fB<curses.h\fP>.
-.bP
-X/Open Curses, Issue 5 (December 2007) marked \fBvwprintw\fP (along with
-\fBvwscanw\fP and the termcap interface) as withdrawn.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_addstr\fP(3X),
diff --git a/man/curs_scanw.3x b/man/curs_scanw.3x
index f51d39b4..38739f8a 100644
--- a/man/curs_scanw.3x
+++ b/man/curs_scanw.3x
@@ -90,44 +90,6 @@ .SH RETURN VALUE
 Functions with a \*(``mv\*('' prefix first perform a cursor movement using
 \fBwmove\fP, and return an error if the position is outside the window,
 or if the window pointer is null.
-.SH HISTORY
-While \fBscanw\fP was implemented in 4BSD,
-none of the BSD releases used it until 4.4BSD (in a game).
-That early version of curses was before the ANSI C standard.
-It did not use <varargs.h>, though that was available.
-In 1991 (a couple of years after SVr4 was generally available,
-and after the C standard was published),
-other developers updated the library,
-using <stdarg.h> internally in 4.4BSD curses.
-Even with this improvement,
-BSD curses did not use function prototypes (or even declare
-functions) in the <curses.h> header until 1992.
-.PP
-SVr2 documented
-\fBscanw\fP,
-\fBwscanw\fP
-tersely as \*(``scanf through \fIstdscr\fP\*('' and
-tersely as \*(``scanf through \fIwin\fP\*('', respectively.
-.PP
-SVr3 added
-\fBmvscanw\fP, and
-\fBmvwscanw\fP, with a three-line summary saying that they were analogous
-to \fBscanf\fP(3),
-explaining that the string which would be output from \fBscanf\fP(3) would
-instead be output using \fBwaddstr\fP on the given window.
-SVr3 also added \fBvwscanw\fP, saying that the third parameter
-is a \fBva_list\fP, defined in <varargs.h>,
-and referring the reader to the manual pages for \fIvarargs\fP and
-\fBvprintf\fP for detailed descriptions.
-(Because the SVr3 documentation does not mention \fBvscanf\fP,
-that reference to \fBvprintf\fP may not be an error).
-.PP
-SVr4 added no new variations of \fBscanw\fP,
-but provided for using <varargs.h> or <stdarg.h> to define the \fBva_list\fP
-type.
-.PP
-X/Open Curses added \fBvw_scanw\fP to replace \fBvwscanw\fP,
-stating that its \fBva_list\fP definition requires <stdarg.h>.
 .SH PORTABILITY
 In this implementation, \fBvw_scanw\fP and \fBvwscanw\fP are equivalent,
 to support legacy applications.
@@ -167,6 +129,44 @@ .SH PORTABILITY
 .IP
 One possible way to get useful results would be to use a "%n" conversion
 at the end of the format string to ensure that something was processed.
+.SH HISTORY
+While \fBscanw\fP was implemented in 4BSD,
+none of the BSD releases used it until 4.4BSD (in a game).
+That early version of curses was before the ANSI C standard.
+It did not use <varargs.h>, though that was available.
+In 1991 (a couple of years after SVr4 was generally available,
+and after the C standard was published),
+other developers updated the library,
+using <stdarg.h> internally in 4.4BSD curses.
+Even with this improvement,
+BSD curses did not use function prototypes (or even declare
+functions) in the <curses.h> header until 1992.
+.PP
+SVr2 documented
+\fBscanw\fP,
+\fBwscanw\fP
+tersely as \*(``scanf through \fIstdscr\fP\*('' and
+tersely as \*(``scanf through \fIwin\fP\*('', respectively.
+.PP
+SVr3 added
+\fBmvscanw\fP, and
+\fBmvwscanw\fP, with a three-line summary saying that they were analogous
+to \fBscanf\fP(3),
+explaining that the string which would be output from \fBscanf\fP(3) would
+instead be output using \fBwaddstr\fP on the given window.
+SVr3 also added \fBvwscanw\fP, saying that the third parameter
+is a \fBva_list\fP, defined in <varargs.h>,
+and referring the reader to the manual pages for \fIvarargs\fP and
+\fBvprintf\fP for detailed descriptions.
+(Because the SVr3 documentation does not mention \fBvscanf\fP,
+that reference to \fBvprintf\fP may not be an error).
+.PP
+SVr4 added no new variations of \fBscanw\fP,
+but provided for using <varargs.h> or <stdarg.h> to define the \fBva_list\fP
+type.
+.PP
+X/Open Curses added \fBvw_scanw\fP to replace \fBvwscanw\fP,
+stating that its \fBva_list\fP definition requires <stdarg.h>.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_getstr\fP(3X),
diff --git a/man/curs_terminfo.3x b/man/curs_terminfo.3x
index 606e3afc..d8c98c67 100644
--- a/man/curs_terminfo.3x
+++ b/man/curs_terminfo.3x
@@ -534,113 +534,6 @@ .SS Compatibility macros
 This implementation provides each of those symbols
 as macros for BSD compatibility,
 .\" ***************************************************************************
-.SH HISTORY
-SVr2 introduced the terminfo feature.
-Its programming manual mentioned the following low-level functions.
-.PP
-.TS
-lB lB
-lB lx.
-Function       Description
-_
-fixterm        restore tty to \*(``in curses\*('' state
-gettmode       establish current tty modes
-mvcur  low level cursor motion
-putp   T{
-utility function that uses \fBtputs\fP to send characters via \fBputchar\fP.
-T}
-resetterm      set tty modes to \*(``out of curses\*('' state
-resetty        reset tty flags to stored value
-saveterm       save current modes as \*(``in curses\*('' state
-savetty        store current tty flags
-setterm        establish terminal with given type
-setupterm      establish terminal with given type
-tparm  instantiate a string expression with parameters
-tputs  apply padding information to a string
-vidattr        like \fBvidputs\fP, but outputs through \fBputchar\fP
-vidputs        T{
-output a string to put terminal in a specified video attribute mode
-T}
-.TE
-.PP
-The programming manual also mentioned
-functions provided for \fItermcap\fP compatibility
-(commenting that they \*(``may go away at a later date\*('').
-.PP
-.TS
-lB lB
-lB lx.
-Function       Description
-_
-tgetent        look up \fItermcap\fP entry for given \fIname\fP
-tgetflag       get boolean entry for given \fIid\fP
-tgetnum        get numeric entry for given \fIid\fP
-tgetstr        get string entry for given \fIid\fP
-tgoto  apply parameters to given capability
-tputs  T{
-apply padding to capability, calling a function to put characters
-T}
-.TE
-.PP
-Early terminfo programs obtained capability values from the
-\fBTERMINAL\fP structure initialized by \fBsetupterm\fP.
-.PP
-SVr3 extended terminfo by adding functions to retrieve capability values
-(like the termcap interface),
-and reusing \fBtgoto\fP and \fBtputs\fP:
-.PP
-.TS
-lB lB
-lB lx.
-Function       Description
-_
-tigetflag      get boolean entry for given \fIid\fP
-tigetnum       get numeric entry for given \fIid\fP
-tigetstr       get string entry for given \fIid\fP
-.TE
-.PP
-SVr3 also replaced several of the SVr2 \fIterminfo\fP functions
-which had no counterpart in the \fItermcap\fP interface,
-documenting them as obsolete.
-.PP
-.TS
-lB lB
-l  lx.
-Function       Replaced by
-_
-crmode cbreak
-fixterm        reset_prog_mode
-gettmode       \fIn/a\fP
-nocrmode       nocbreak
-resetterm      reset_shell_mode
-saveterm       def_prog_mode
-setterm        setupterm
-.TE
-.PP
-SVr3 kept the \fBmvcur\fP, \fBvidattr\fP and \fBvidputs\fP functions,
-along with \fBputp\fP, \fBtparm\fP and \fBtputs\fP.
-The latter were needed to support padding,
-and handling functions such as \fBvidattr\fP
-(which used more than the two parameters supported by \fBtgoto\fP).
-.PP
-SVr3 introduced the functions for switching between terminal
-descriptions, e.g., \fBset_curterm\fP.
-Some of that was incremental improvements to the SVr2 library:
-.bP
-The \fBTERMINAL\fP type definition was introduced in SVr3.01,
-for the \fBterm\fP structure provided in SVr2.
-.bP
-The various global variables such as \fBboolnames\fP were mentioned
-in the programming manual at this point,
-though the variables were provided in SVr2.
-.PP
-SVr4 added the \fBvid_attr\fP and \fBvid_puts\fP functions.
-.PP
-There are other low-level functions declared in the \fIcurses\fP header files
-on Unix systems,
-but none were documented.
-The functions marked \*(``obsolete\*('' remained in use
-by the Unix \fBvi\fP(1) editor.
 .SH PORTABILITY
 .SS Extensions
 The functions marked as extensions were designed for \fBncurses\fP(3X),
@@ -774,6 +667,114 @@ .SS Other portability issues
 X/Open states that the old location must be given for \fBmvcur\fP.
 This implementation allows the caller to use \-1's for the old ordinates.
 In that case, the old location is unknown.
+.\" ***************************************************************************
+.SH HISTORY
+SVr2 introduced the terminfo feature.
+Its programming manual mentioned the following low-level functions.
+.PP
+.TS
+lB lB
+lB lx.
+Function       Description
+_
+fixterm        restore tty to \*(``in curses\*('' state
+gettmode       establish current tty modes
+mvcur  low level cursor motion
+putp   T{
+utility function that uses \fBtputs\fP to send characters via \fBputchar\fP.
+T}
+resetterm      set tty modes to \*(``out of curses\*('' state
+resetty        reset tty flags to stored value
+saveterm       save current modes as \*(``in curses\*('' state
+savetty        store current tty flags
+setterm        establish terminal with given type
+setupterm      establish terminal with given type
+tparm  instantiate a string expression with parameters
+tputs  apply padding information to a string
+vidattr        like \fBvidputs\fP, but outputs through \fBputchar\fP
+vidputs        T{
+output a string to put terminal in a specified video attribute mode
+T}
+.TE
+.PP
+The programming manual also mentioned
+functions provided for \fItermcap\fP compatibility
+(commenting that they \*(``may go away at a later date\*('').
+.PP
+.TS
+lB lB
+lB lx.
+Function       Description
+_
+tgetent        look up \fItermcap\fP entry for given \fIname\fP
+tgetflag       get boolean entry for given \fIid\fP
+tgetnum        get numeric entry for given \fIid\fP
+tgetstr        get string entry for given \fIid\fP
+tgoto  apply parameters to given capability
+tputs  T{
+apply padding to capability, calling a function to put characters
+T}
+.TE
+.PP
+Early terminfo programs obtained capability values from the
+\fBTERMINAL\fP structure initialized by \fBsetupterm\fP.
+.PP
+SVr3 extended terminfo by adding functions to retrieve capability values
+(like the termcap interface),
+and reusing \fBtgoto\fP and \fBtputs\fP:
+.PP
+.TS
+lB lB
+lB lx.
+Function       Description
+_
+tigetflag      get boolean entry for given \fIid\fP
+tigetnum       get numeric entry for given \fIid\fP
+tigetstr       get string entry for given \fIid\fP
+.TE
+.PP
+SVr3 also replaced several of the SVr2 \fIterminfo\fP functions
+which had no counterpart in the \fItermcap\fP interface,
+documenting them as obsolete.
+.PP
+.TS
+lB lB
+l  lx.
+Function       Replaced by
+_
+crmode cbreak
+fixterm        reset_prog_mode
+gettmode       \fIn/a\fP
+nocrmode       nocbreak
+resetterm      reset_shell_mode
+saveterm       def_prog_mode
+setterm        setupterm
+.TE
+.PP
+SVr3 kept the \fBmvcur\fP, \fBvidattr\fP and \fBvidputs\fP functions,
+along with \fBputp\fP, \fBtparm\fP and \fBtputs\fP.
+The latter were needed to support padding,
+and handling functions such as \fBvidattr\fP
+(which used more than the two parameters supported by \fBtgoto\fP).
+.PP
+SVr3 introduced the functions for switching between terminal
+descriptions, e.g., \fBset_curterm\fP.
+Some of that was incremental improvements to the SVr2 library:
+.bP
+The \fBTERMINAL\fP type definition was introduced in SVr3.01,
+for the \fBterm\fP structure provided in SVr2.
+.bP
+The various global variables such as \fBboolnames\fP were mentioned
+in the programming manual at this point,
+though the variables were provided in SVr2.
+.PP
+SVr4 added the \fBvid_attr\fP and \fBvid_puts\fP functions.
+.PP
+There are other low-level functions declared in the \fIcurses\fP header files
+on Unix systems,
+but none were documented.
+The functions marked \*(``obsolete\*('' remained in use
+by the Unix \fBvi\fP(1) editor.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_initscr\fP(3X),
diff --git a/man/infocmp.1m b/man/infocmp.1m
index cc99150d..73960b3a 100644
--- a/man/infocmp.1m
+++ b/man/infocmp.1m
@@ -570,34 +570,6 @@ .SH FILES
 .TP
 .I \*d
 compiled terminal description database
-.SH HISTORY
-Although System V Release 2 provided a terminfo library,
-it had no documented tool for decompiling the terminal descriptions.
-Tony Hansen (AT&T) wrote the first \fBinfocmp\fP in early 1984,
-for System V Release 3.
-.PP
-Eric Raymond used the AT&T documentation in 1995 to provide an equivalent
-\fB@INFOCMP@\fP for ncurses.
-In addition, he added a few new features such as:
-.bP
-the \fB\-e\fP option, to support \fIfallback\fP
-(compiled-in) terminal descriptions
-.bP
-the \fB\-i\fP option, to help with analysis
-.PP
-Later, Thomas Dickey added the \fB\-x\fP (user-defined capabilities)
-option, and the \fB\-E\fP option to support fallback entries with
-user-defined capabilities.
-.PP
-For a complete list, see the \fIEXTENSIONS\fP section.
-.PP
-In 2010, Roy Marples provided an \fBinfocmp\fP program for NetBSD.
-It is less capable than the SVr4 or ncurses versions
-(e.g., it lacks the sorting options documented in X/Open),
-but does include the \fB\-x\fP option adapted from ncurses.
-.SH PORTABILITY
-X/Open Curses, Issue 7 (2009) provides a description of \fBinfocmp\fP.
-It does not mention the options used for converting to termcap format.
 .SH EXTENSIONS
 The
 \fB\-0\fP,
@@ -631,6 +603,34 @@ .SH EXTENSIONS
 Actual BSD curses versions will have a more restricted set.
 To see only the
 4.4BSD set, use \fB\-r\fP \fB\-RBSD\fP.
+.SH PORTABILITY
+X/Open Curses, Issue 7 (2009) provides a description of \fBinfocmp\fP.
+It does not mention the options used for converting to termcap format.
+.SH HISTORY
+Although System V Release 2 provided a terminfo library,
+it had no documented tool for decompiling the terminal descriptions.
+Tony Hansen (AT&T) wrote the first \fBinfocmp\fP in early 1984,
+for System V Release 3.
+.PP
+Eric Raymond used the AT&T documentation in 1995 to provide an equivalent
+\fB@INFOCMP@\fP for ncurses.
+In addition, he added a few new features such as:
+.bP
+the \fB\-e\fP option, to support \fIfallback\fP
+(compiled-in) terminal descriptions
+.bP
+the \fB\-i\fP option, to help with analysis
+.PP
+Later, Thomas Dickey added the \fB\-x\fP (user-defined capabilities)
+option, and the \fB\-E\fP option to support fallback entries with
+user-defined capabilities.
+.PP
+For a complete list, see the \fIEXTENSIONS\fP section.
+.PP
+In 2010, Roy Marples provided an \fBinfocmp\fP program for NetBSD.
+It is less capable than the SVr4 or ncurses versions
+(e.g., it lacks the sorting options documented in X/Open),
+but does include the \fB\-x\fP option adapted from ncurses.
 .SH AUTHOR
 Eric S. Raymond <esr@snark.thyrsus.com>
 and
diff --git a/man/ncurses.3x b/man/ncurses.3x
index d6911f36..8cf20aee 100644
--- a/man/ncurses.3x
+++ b/man/ncurses.3x
@@ -1373,6 +1373,10 @@ .SH FILES
 .TP
 .I \*d
 compiled terminal capability database
+.SH NOTES
+If standard output from a \fBncurses\fP program is re-directed to something
+which is not a tty, screen updates will be directed to standard error.
+This was an undocumented feature of AT&T System V Release 3 curses.
 .SH EXTENSIONS
 The \fBncurses\fP library can be compiled with an option (\fB\-DUSE_GETCAP\fP)
 that falls back to the old-style /etc/termcap file if the terminal setup code
@@ -1568,10 +1572,6 @@ .SS Header files
 to include <stdarg.h> before <curses.h> because they either
 have allowed for a special type, or (like ncurses) include <stdarg.h>
 directly to provide a portable interface.
-.SH NOTES
-If standard output from a \fBncurses\fP program is re-directed to something
-which is not a tty, screen updates will be directed to standard error.
-This was an undocumented feature of AT&T System V Release 3 curses.
 .SH AUTHORS
 Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
 Based on \fIpcurses\fP by Pavel Curtis.
diff --git a/man/tic.1m b/man/tic.1m
index 63ca64be..98058ec5 100644
--- a/man/tic.1m
+++ b/man/tic.1m
@@ -438,92 +438,11 @@ .SS PROCESSING
 (32 characters on systems with long filenames, 14 characters otherwise)
 will be truncated to the maximum alias length
 and a warning message will be printed.
-.SH HISTORY
-System V Release 2 provided a \fBtic\fP utility.
-It accepted a single option: \fB\-v\fP (optionally followed by a number).
-According to Ross Ridge's comment in \fImytinfo\fP,
-this version of \fBtic\fP was
-unable to represent cancelled capabilities.
-.PP
-System V Release 3 provided a different \fBtic\fP utility,
-written by Pavel Curtis,
-(originally named \*(``compile\*('' in \fIpcurses\fP).
-This added an option \fB\-c\fP to check the file for
-errors, with the caveat that errors in \*(``use=\*('' links
-would not be reported.
-System V Release 3 documented a few warning messages which
-did not appear in \fIpcurses\fP.
-While the program itself was changed little as development
-continued with System V Release 4,
-the table of capabilities grew from 180 (\fIpcurses\fP) to 464 (Solaris).
-.PP
-In early development of ncurses (1993),
-Zeyd Ben-Halim used the table from \fImytinfo\fP to
-extend the \fIpcurses\fP table to 469 capabilities
-(456 matched SVr4, 8 were only in SVr4, 13 were not in SVr4).
-Of those 13, 11 were ultimately discarded
-(perhaps to match the draft of X/Open Curses).
-The exceptions were
-\fBmemory_lock_above\fP and
-\fBmemory_unlock\fP (see \fBuser_caps\fP(5)).
-.PP
-Eric Raymond incorporated parts of \fImytinfo\fP into ncurses
-to implement the termcap-to-terminfo source conversion,
-and extended that to begin development of
-the corresponding terminfo-to-termcap source conversion,
-Thomas Dickey completed that development over the course of several years.
-.PP
-In 1999, Thomas Dickey added the \fB\-x\fP option
-to support user-defined capabilities.
-.PP
-In 2010, Roy Marples provided a \fBtic\fP program
-and terminfo library for NetBSD.
-That implementation adapts several features from ncurses,
-including \fB@TIC@\fP's \fB\-x\fP option.
-.PP
-The \fB\-c\fP option tells \fB@TIC@\fP to check for problems in the
-terminfo source file.
-Continued development provides additional checks:
-.bP
-\fIpcurses\fP had 8 warnings
-.bP
-ncurses in 1996 had 16 warnings
-.bP
-Solaris (SVr4) curses has 28 warnings
-.bP
-NetBSD tic in 2019 has 19 warnings.
-.bP
-ncurses in 2019 has 96 warnings
-.PP
-The checking done in ncurses' \fB@TIC@\fP helps with the conversion to
-termcap, as well as pointing out errors and inconsistencies.
-It is also used to ensure consistency with the user-defined capabilities.
-There are 527 distinct capabilities in ncurses' terminal database;
-128 of those are user-defined.
-.SH PORTABILITY
-X/Open Curses, Issue 7 (2009) provides a brief description of \fBtic\fP.
-It lists one option: \fB\-c\fP.
-The omission of \fB\-v\fP is unexpected.
-The change history states that the description is derived from True64 UNIX.
-According to its manual pages, that system also supported the \fB\-v\fP option.
-.PP
-Shortly after Issue 7 was released, Tru64 was discontinued.
-As of 2019, the surviving implementations of \fBtic\fP
-are SVr4 (AIX, HP-UX and Solaris),
-ncurses
-and NetBSD curses.
-The SVr4 \fBtic\fP programs all support the \fB\-v\fP option.
-The NetBSD \fBtic\fP program follows X/Open's documentation,
-omitting the \fB\-v\fP option.
-.PP
-The X/Open rationale states that some implementations of \fBtic\fP
-read terminal descriptions from the standard input if the \fIfile\fP
-parameter is omitted.
-None of these implementations do that.
-Further, it comments that some may choose to read from \*(''./terminfo.src\*(''
-but that is obsolescent behavior from SVr2,
-and is not (for example) a documented feature of SVr3.
-.SS COMPATIBILITY
+.SH FILES
+.TP
+.I \*d
+compiled terminal description database
+.SH NOTES
 There is some evidence that historic \fB@TIC@\fP implementations treated
 description fields with no whitespace in them as additional aliases or
 short names.
@@ -593,10 +512,91 @@ .SS EXTENSIONS
 .PP
 System V does not compile entries to or read entries from your
 \fI$HOME/.terminfo\fP database unless TERMINFO is explicitly set to it.
-.SH FILES
-.TP
-.I \*d
-compiled terminal description database
+.SH PORTABILITY
+X/Open Curses, Issue 7 (2009) provides a brief description of \fBtic\fP.
+It lists one option: \fB\-c\fP.
+The omission of \fB\-v\fP is unexpected.
+The change history states that the description is derived from True64 UNIX.
+According to its manual pages, that system also supported the \fB\-v\fP option.
+.PP
+Shortly after Issue 7 was released, Tru64 was discontinued.
+As of 2019, the surviving implementations of \fBtic\fP
+are SVr4 (AIX, HP-UX and Solaris),
+ncurses
+and NetBSD curses.
+The SVr4 \fBtic\fP programs all support the \fB\-v\fP option.
+The NetBSD \fBtic\fP program follows X/Open's documentation,
+omitting the \fB\-v\fP option.
+.PP
+The X/Open rationale states that some implementations of \fBtic\fP
+read terminal descriptions from the standard input if the \fIfile\fP
+parameter is omitted.
+None of these implementations do that.
+Further, it comments that some may choose to read from \*(''./terminfo.src\*(''
+but that is obsolescent behavior from SVr2,
+and is not (for example) a documented feature of SVr3.
+.SH HISTORY
+System V Release 2 provided a \fBtic\fP utility.
+It accepted a single option: \fB\-v\fP (optionally followed by a number).
+According to Ross Ridge's comment in \fImytinfo\fP,
+this version of \fBtic\fP was
+unable to represent cancelled capabilities.
+.PP
+System V Release 3 provided a different \fBtic\fP utility,
+written by Pavel Curtis,
+(originally named \*(``compile\*('' in \fIpcurses\fP).
+This added an option \fB\-c\fP to check the file for
+errors, with the caveat that errors in \*(``use=\*('' links
+would not be reported.
+System V Release 3 documented a few warning messages which
+did not appear in \fIpcurses\fP.
+While the program itself was changed little as development
+continued with System V Release 4,
+the table of capabilities grew from 180 (\fIpcurses\fP) to 464 (Solaris).
+.PP
+In early development of ncurses (1993),
+Zeyd Ben-Halim used the table from \fImytinfo\fP to
+extend the \fIpcurses\fP table to 469 capabilities
+(456 matched SVr4, 8 were only in SVr4, 13 were not in SVr4).
+Of those 13, 11 were ultimately discarded
+(perhaps to match the draft of X/Open Curses).
+The exceptions were
+\fBmemory_lock_above\fP and
+\fBmemory_unlock\fP (see \fBuser_caps\fP(5)).
+.PP
+Eric Raymond incorporated parts of \fImytinfo\fP into ncurses
+to implement the termcap-to-terminfo source conversion,
+and extended that to begin development of
+the corresponding terminfo-to-termcap source conversion,
+Thomas Dickey completed that development over the course of several years.
+.PP
+In 1999, Thomas Dickey added the \fB\-x\fP option
+to support user-defined capabilities.
+.PP
+In 2010, Roy Marples provided a \fBtic\fP program
+and terminfo library for NetBSD.
+That implementation adapts several features from ncurses,
+including \fB@TIC@\fP's \fB\-x\fP option.
+.PP
+The \fB\-c\fP option tells \fB@TIC@\fP to check for problems in the
+terminfo source file.
+Continued development provides additional checks:
+.bP
+\fIpcurses\fP had 8 warnings
+.bP
+ncurses in 1996 had 16 warnings
+.bP
+Solaris (SVr4) curses has 28 warnings
+.bP
+NetBSD tic in 2019 has 19 warnings.
+.bP
+ncurses in 2019 has 96 warnings
+.PP
+The checking done in ncurses' \fB@TIC@\fP helps with the conversion to
+termcap, as well as pointing out errors and inconsistencies.
+It is also used to ensure consistency with the user-defined capabilities.
+There are 527 distinct capabilities in ncurses' terminal database;
+128 of those are user-defined.
 .SH AUTHOR
 Eric S. Raymond <esr@snark.thyrsus.com>
 and
diff --git a/man/tput.1 b/man/tput.1
index 03cdabda..dd6f5cfd 100644
--- a/man/tput.1
+++ b/man/tput.1
@@ -434,54 +434,6 @@ .SH DIAGNOSTICS
 \fB>4\fP       error occurred in \-S
 =
 .TE
-.SH HISTORY
-The \fBtput\fP command was begun by Bill Joy in 1980.
-The initial version only cleared the screen.
-.PP
-AT&T System V provided a different \fBtput\fP command:
-.bP
-SVr2 provided a rudimentary \fBtput\fP
-which checked the parameter against each
-predefined capability and returned the corresponding value.
-This version of \fBtput\fP did not use \fBtparm\fP(3X) for
-the capabilities which are parameterized.
-.bP
-SVr3 replaced that, a year later, by a more extensive program
-whose \fBinit\fP and \fBreset\fP subcommands
-(more than half the program) were incorporated from
-the \fBreset\fP feature of BSD \fBtset\fP written by Eric Allman.
-.bP
-SVr4 added color initialization using the \fBorig_colors\fP and
-\fBorig_pair\fP capabilities in the \fBinit\fP subcommand.
-.PP
-Keith Bostic replaced the BSD \fBtput\fP command in 1989
-with a new implementation
-based on the AT&T System V program \fBtput\fP.
-Like the AT&T program, Bostic's version
-accepted some parameters named for \fIterminfo\fP capabilities
-(\fBclear\fP, \fBinit\fP, \fBlongname\fP and \fBreset\fP).
-However (because he had only \fItermcap\fP available),
-it accepted \fItermcap\fP names for other capabilities.
-Also, Bostic's BSD \fBtput\fP did not modify the terminal I/O modes
-as the earlier BSD \fBtset\fP had done.
-.PP
-At the same time, Bostic added a shell script named \*(``clear\*('',
-which used \fBtput\fP to clear the screen.
-.PP
-Both of these appeared in 4.4BSD,
-becoming the \*(``modern\*('' BSD implementation of \fBtput\fP.
-.PP
-This implementation of \fBtput\fP began from a different source than
-AT&T or BSD: Ross Ridge's \fImytinfo\fP package, published on
-\fIcomp.sources.unix\fP in December 1992.
-Ridge's program made more sophisticated use of the terminal capabilities
-than the BSD program.
-Eric Raymond used that \fBtput\fP program
-(and other parts of \fImytinfo\fP) in ncurses in June 1995.
-Using the portions dealing with terminal capabilities
-almost without change,
-Raymond made improvements to the way the command-line parameters
-were handled.
 .SH PORTABILITY
 This implementation of \fBtput\fP differs from AT&T \fBtput\fP in
 two important areas:
@@ -609,6 +561,54 @@ .SH PORTABILITY
 .PP
 NetBSD curses documents different exit codes which do not correspond
 to either ncurses or X/Open.
+.SH HISTORY
+The \fBtput\fP command was begun by Bill Joy in 1980.
+The initial version only cleared the screen.
+.PP
+AT&T System V provided a different \fBtput\fP command:
+.bP
+SVr2 provided a rudimentary \fBtput\fP
+which checked the parameter against each
+predefined capability and returned the corresponding value.
+This version of \fBtput\fP did not use \fBtparm\fP(3X) for
+the capabilities which are parameterized.
+.bP
+SVr3 replaced that, a year later, by a more extensive program
+whose \fBinit\fP and \fBreset\fP subcommands
+(more than half the program) were incorporated from
+the \fBreset\fP feature of BSD \fBtset\fP written by Eric Allman.
+.bP
+SVr4 added color initialization using the \fBorig_colors\fP and
+\fBorig_pair\fP capabilities in the \fBinit\fP subcommand.
+.PP
+Keith Bostic replaced the BSD \fBtput\fP command in 1989
+with a new implementation
+based on the AT&T System V program \fBtput\fP.
+Like the AT&T program, Bostic's version
+accepted some parameters named for \fIterminfo\fP capabilities
+(\fBclear\fP, \fBinit\fP, \fBlongname\fP and \fBreset\fP).
+However (because he had only \fItermcap\fP available),
+it accepted \fItermcap\fP names for other capabilities.
+Also, Bostic's BSD \fBtput\fP did not modify the terminal I/O modes
+as the earlier BSD \fBtset\fP had done.
+.PP
+At the same time, Bostic added a shell script named \*(``clear\*('',
+which used \fBtput\fP to clear the screen.
+.PP
+Both of these appeared in 4.4BSD,
+becoming the \*(``modern\*('' BSD implementation of \fBtput\fP.
+.PP
+This implementation of \fBtput\fP began from a different source than
+AT&T or BSD: Ross Ridge's \fImytinfo\fP package, published on
+\fIcomp.sources.unix\fP in December 1992.
+Ridge's program made more sophisticated use of the terminal capabilities
+than the BSD program.
+Eric Raymond used that \fBtput\fP program
+(and other parts of \fImytinfo\fP) in ncurses in June 1995.
+Using the portions dealing with terminal capabilities
+almost without change,
+Raymond made improvements to the way the command-line parameters
+were handled.
 .SH SEE ALSO
 \fB\%@CLEAR@\fP(\*n),
 \fB\%stty\fP(1),
-- 
2.30.2

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]