bug-ncurses
[Top][All Lists]
Advanced

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

[PATCH 05/17] man/curs_add{,w}str.3x: Revise.


From: G. Branden Robinson
Subject: [PATCH 05/17] man/curs_add{,w}str.3x: Revise.
Date: Wed, 13 Mar 2024 13:10:09 -0500

Content:
* man/curs_addstr.3x (DESCRIPTION): Mention handling of control
  characters, for parity with curs_addwstr.3x.
* man/curs_addwstr.3x (DESCRIPTION): Wide-character strings are
  terminated by null wide characters.[1]

Style:
* Reorganize list of functions, grouping them by common 4-tuple
  described in ncurses; a given ncurses function often has four
  variants, with a prefix that is empty, "w", "mv", or "mvw".  The
  w-prefixed function is the elementary one (the others are macros).
* Don't use pronouns without clear antecedents.
* Discuss these elementary functions in the "DESCRIPTION".  Refer the
  reader to ncurses(3X) for the variants.
* Recast for clarity and economical wording.
* Favor active voice over passive.
* Favor present tense over future.
* Favor saying "ncurses" over "this implementation".
* More consistently mark up other ncurses man pages as cross references.
* Set data type names in italics.

Markup:
* Break input lines after commas.
* Prefer 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).

[1] 
https://wiki.sei.cmu.edu/confluence/display/c/STR38-C.+Do+not+confuse+narrow+and+wide+character+strings+and+functions
---
 man/curs_addstr.3x  | 72 ++++++++++++++++++++++++------------
 man/curs_addwstr.3x | 90 ++++++++++++++++++++++++++++++---------------
 2 files changed, 109 insertions(+), 53 deletions(-)

diff --git a/man/curs_addstr.3x b/man/curs_addstr.3x
index fc2c5d106..dac8b7d97 100644
--- a/man/curs_addstr.3x
+++ b/man/curs_addstr.3x
@@ -59,47 +59,73 @@ .SH SYNOPSIS
 \fB#include <curses.h>
 .PP
 \fBint addstr(const char *\fIstr\fP);
-\fBint addnstr(const char *\fIstr\fP, int \fIn\fP);
+\fBint mvaddstr(int \fIy\fP, int \fIx\fP, const char *\fIstr\fP);
+\fBint mvwaddstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const char 
*\fIstr\fP);
 \fBint waddstr(WINDOW *\fIwin\fP, const char *\fIstr\fP);
-\fBint waddnstr(WINDOW *\fIwin\fP, const char *\fIstr\fP, int \fIn\fP);
 .PP
-\fBint mvaddstr(int \fIy\fP, int \fIx\fP, const char *\fIstr\fP);
+\fBint addnstr(const char *\fIstr\fP, int \fIn\fP);
 \fBint mvaddnstr(int \fIy\fP, int \fIx\fP, const char *\fIstr\fP, int \fIn\fP);
-\fBint mvwaddstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const char 
*\fIstr\fP);
 \fBint mvwaddnstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const char 
*\fIstr\fP, int \fIn\fP);
+\fBint waddnstr(WINDOW *\fIwin\fP, const char *\fIstr\fP, int \fIn\fP);
 .fi
 .SH DESCRIPTION
-These functions write the (null-terminated) character string
-\fIstr\fP on the given window.
-It is similar to calling \fBwaddch\fP once for each byte in the string.
+.B waddstr
+writes the characters of the (null-terminated) string
+.I str
+to the window
+.I win.
+Its process is similar to calling \fB\%waddch\fP(3X) for each
+.I char
+in
+.I str.
+Control characters are processed as in \fB\%waddch\fP(3X).
 .PP
-The \fImv\fP functions perform cursor movement once, before writing any
-characters.
-Thereafter, the cursor is advanced as a side-effect of writing to the window.
+.B waddnstr
+writes at most
+.I n
+characters,
+or until a terminating null character occurs in
+.I str.
+If
+.I n
+is \-1,
+.B
+.B waddnstr
+writes the entire string.
 .PP
-The four functions with \fIn\fP as the last argument
-write at most \fIn\fP bytes,
-or until a terminating null is reached.
-If \fIn\fP is \-1, then the entire string will be added.
+\fB\%ncurses\fP(3X) describes the variants of these functions.
 .SH RETURN VALUE
-All functions return the integer \fBERR\fP upon failure and \fBOK\fP on 
success.
+These functions return
+.B OK
+on success and
+.B ERR
+on failure.
 .PP
 X/Open does not define any error conditions.
-This implementation returns an error
+.I \%ncurses
+returns an error
 .bP
-if the window pointer is null or
+if the window pointer is
+.BR NULL ,
 .bP
-if the string pointer is null or
+if the string pointer is
+.BR NULL ,
+or
 .bP
-if the corresponding calls to \fBwaddch\fP return an error.
+if an internal \fB\%waddch\fP(3X) call returns an error.
 .PP
-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.
+Functions with a \*(``mv\*('' prefix first perform cursor movement using
+\fB\%wmove\fP(3X) and fail if the position is outside the window,
+or
+(for \*(``mvw\*('' functions)
+if the
+.I \%WINDOW
+pointer is null.
 .SH NOTES
 All of these functions except \fBwaddnstr\fP may be macros.
 .SH PORTABILITY
-These functions are described in the XSI Curses standard, Issue 4.
+X/Open Curses,
+Issue 4 describes these functions.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_addch\fP(3X),
diff --git a/man/curs_addwstr.3x b/man/curs_addwstr.3x
index 0c82ed3cb..dfb0d9253 100644
--- a/man/curs_addwstr.3x
+++ b/man/curs_addwstr.3x
@@ -59,55 +59,85 @@ .SH SYNOPSIS
 \fB#include <curses.h>
 .PP
 \fBint addwstr(const wchar_t *\fIwstr\fP);
-\fBint addnwstr(const wchar_t *\fIwstr\fP, int \fIn\fP);
+\fBint mvaddwstr(int \fIy\fP, int \fIx\fP, const wchar_t *\fIwstr\fP);
+\fBint mvwaddwstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const wchar_t 
*\fIwstr\fP);
 \fBint waddwstr(WINDOW *\fIwin\fP, const wchar_t *\fIwstr\fP);
-\fBint waddnwstr(WINDOW *\fIwin\fP, const wchar_t *\fIwstr\fP, int \fIn\fP);
 .PP
-\fBint mvaddwstr(int \fIy\fP, int \fIx\fP, const wchar_t *\fIwstr\fP);
+\fBint addnwstr(const wchar_t *\fIwstr\fP, int \fIn\fP);
 \fBint mvaddnwstr(int \fIy\fP, int \fIx\fP, const wchar_t *\fIwstr\fP, int 
\fIn\fP);
-\fBint mvwaddwstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const wchar_t 
*\fIwstr\fP);
 \fBint mvwaddnwstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const wchar_t 
*\fIwstr\fP, int \fIn\fP);
+\fBint waddnwstr(WINDOW *\fIwin\fP, const wchar_t *\fIwstr\fP, int \fIn\fP);
 .fi
 .SH DESCRIPTION
-These functions write the characters of the
-(null-terminated) \fBwchar_t\fP character string
-\fIwstr\fP on the given window.
-It is similar to constructing a \fBcchar_t\fP for
-each \fBwchar_t\fR in the string,
-then calling \fBwadd_wch\fP(3X) for the resulting \fBcchar_t\fP:
+.B waddwstr
+writes the characters of the (wide-null-terminated) wide-character
+string
+.I wstr
+to the window
+.I win.
+Its process is similar to constructing a
+.I cchar_t
+for each
+.I wchar_t
+in
+.I wstr,
+then calling \fB\%wadd_wch\fP(3X) with the resulting
+.I cchar_t.
 .bP
-spacing and non-spacing characters in the string
-are processed one at a time, and
+Spacing and non-spacing characters in the string
+are processed one at a time,
+and
 .bP
-control characters are processed as in \fBwaddch\fP(3X).
+control characters are processed as in \fB\%wadd_wch\fP(3X).
 .PP
-The \fImv\fP functions perform cursor movement once, before writing any
-characters.
-Thereafter, the cursor is advanced as a side-effect of writing to the window.
+.B waddnwstr
+writes at most
+.I n
+wide characters,
+or until a terminating wide null character occurs in
+.I wstr.
+If
+.I n
+is \-1,
+.B
+.B waddnwstr
+writes the entire wide string.
 .PP
-The four functions with \fIn\fP as the last argument
-write at most \fIn\fP \fBwchar_t\fP characters,
-or until a terminating null is reached.
-If \fIn\fP is \-1, then the entire string will be added.
+\fB\%ncurses\fP(3X) describes the variants of these functions.
 .SH RETURN VALUE
-All functions return the integer \fBERR\fP upon failure and \fBOK\fP on 
success.
+These functions return
+.B OK
+on success and
+.B ERR
+on failure.
 .PP
 X/Open does not define any error conditions.
-This implementation returns an error
+.I \%ncurses
+returns an error
 .bP
-if the window pointer is null or
+if the window pointer is
+.BR NULL ,
 .bP
-if the string pointer is null or
+if the string pointer is
+.BR NULL ,
+or
 .bP
-if the corresponding calls to \fBwadd_wch\fP return an error.
+if an internal \fB\%wadd_wch\fP(3X) call returns an error.
 .PP
-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.
+Functions with a \*(``mv\*('' prefix first perform cursor movement using
+\fB\%wmove\fP(3X) and fail if the position is outside the window,
+or
+(for \*(``mvw\*('' functions)
+if the
+.I \%WINDOW
+pointer is null.
 .SH NOTES
-All of these functions except \fBwaddnwstr\fP may be macros.
+All of these functions except
+.B waddnwstr
+may be implemented as macros.
 .SH PORTABILITY
-These functions are described in the XSI Curses standard, Issue 4.
+X/Open Curses,
+Issue 4 describes these functions.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
 \fB\%curs_add_wch\fP(3X),
-- 
2.30.2

Attachment: signature.asc
Description: PGP signature


reply via email to

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