wrap long source lines

This commit is contained in:
Michael Kerrisk 2008-06-09 21:12:25 +00:00
parent 8062a09161
commit c45660d7d7
3 changed files with 34 additions and 19 deletions

View File

@ -33,7 +33,8 @@
.\"
.TH PRINTF 3 2007-11-26 "GNU" "Linux Programmer's Manual"
.SH NAME
printf, fprintf, sprintf, snprintf, vprintf, vfprintf, vsprintf, vsnprintf \- formatted output conversion
printf, fprintf, sprintf, snprintf, vprintf, vfprintf, vsprintf,
vsnprintf \- formatted output conversion
.SH SYNOPSIS
.B #include <stdio.h>
.sp
@ -133,7 +134,8 @@ the variable-length argument facilities of
are converted for output.
.SS "Return value"
Upon successful return, these functions return the number of characters
printed (not including the trailing \(aq\e0\(aq used to end output to strings).
printed (not including the
trailing \(aq\e0\(aq used to end output to strings).
The functions
.BR snprintf ()
@ -182,7 +184,8 @@ given, where each \(aq*\(aq and each conversion specifier asks for the next
argument (and it is an error if insufficiently many arguments are given).
One can also specify explicitly which argument is taken,
at each place where an argument is required, by writing "%m$" instead
of \(aq%\(aq and "*m$" instead of \(aq*\(aq, where the decimal integer m denotes
of \(aq%\(aq and "*m$" instead of \(aq*\(aq,
where the decimal integer m denotes
the position in the argument list of the desired argument, indexed starting
from 1.
Thus,

View File

@ -64,7 +64,8 @@ three characters \(aq[\(aq, \(aq]\(aq and \(aq!\(aq.)
.sp
There is one special convention:
two characters separated by \(aq\-\(aq denote a range.
(Thus, "\fI[A\-Fa\-f0\-9]\fP" is equivalent to "\fI[ABCDEFabcdef0123456789]\fP".)
(Thus, "\fI[A\-Fa\-f0\-9]\fP"
is equivalent to "\fI[ABCDEFabcdef0123456789]\fP".)
One may include \(aq\-\(aq in its literal meaning by making it the
first or last character between the brackets.
(Thus, "\fI[]\-]\fP" matches just the two characters \(aq]\(aq and \(aq\-\(aq,
@ -94,7 +95,8 @@ wildcard, or by a range like "\fI[.\-0]\fP".
A range cannot contain an
explicit \(aq/\(aq character; this would lead to a syntax error.
If a filename starts with a \(aq.\(aq, this character must be matched explicitly.
If a filename starts with a \(aq.\(aq,
this character must be matched explicitly.
(Thus, \fIrm\ *\fP will not remove .profile, and \fItar\ c\ *\fP will not
archive all your files; \fItar\ c\ .\fP is better.)
.SS "Empty Lists"

View File

@ -59,9 +59,12 @@ It matches a match for the first, followed by a match for the second, etc.
.PP
A piece is an \fIatom\fR possibly followed
by a single\*(dg \(aq*\(aq, \(aq+\(aq, \(aq?\(aq, or \fIbound\fR.
An atom followed by \(aq*\(aq matches a sequence of 0 or more matches of the atom.
An atom followed by \(aq+\(aq matches a sequence of 1 or more matches of the atom.
An atom followed by \(aq?\(aq matches a sequence of 0 or 1 matches of the atom.
An atom followed by \(aq*\(aq
matches a sequence of 0 or more matches of the atom.
An atom followed by \(aq+\(aq
matches a sequence of 1 or more matches of the atom.
An atom followed by \(aq?\(aq
matches a sequence of 0 or 1 matches of the atom.
.PP
A \fIbound\fR is \(aq{\(aq followed by an unsigned decimal integer,
possibly followed by \(aq,\(aq
@ -81,8 +84,8 @@ An atom followed by a bound
containing two integers \fIi\fR and \fIj\fR matches
a sequence of \fIi\fR through \fIj\fR (inclusive) matches of the atom.
.PP
An atom is a regular expression enclosed in "\fI()\fP" (matching a match for the
regular expression),
An atom is a regular expression enclosed in "\fI()\fP"
(matching a match for the regular expression),
an empty set of "\fI()\fP" (matching the null string)\*(dg,
a \fIbracket expression\fR (see below), \(aq.\(aq
(matching any single character), \(aq^\(aq (matching the null string at the
@ -117,7 +120,8 @@ To include a literal \(aq]\(aq in the list, make it the first character
To include a literal \(aq\-\(aq, make it the first or last character,
or the second endpoint of a range.
To use a literal \(aq\-\(aq as the first endpoint of a range,
enclose it in "\fI[.\fP" and "\fI.]\fP" to make it a collating element (see below).
enclose it in "\fI[.\fP" and "\fI.]\fP"
to make it a collating element (see below).
With the exception of these and some combinations using \(aq[\(aq (see next
paragraphs), all other special characters, including \(aq\e\(aq, lose their
special significance within a bracket expression.
@ -138,14 +142,17 @@ Within a bracket expression, a collating element enclosed in "\fI[=\fP" and
"\fI=]\fP" is an equivalence class, standing for the sequences of characters
of all collating elements equivalent to that one, including itself.
(If there are no other equivalent collating elements,
the treatment is as if the enclosing delimiters were "\fI[.\fP" and "\fI.]\fP".)
the treatment is as if the enclosing delimiters
were "\fI[.\fP" and "\fI.]\fP".)
For example, if o and \o'o^' are the members of an equivalence class,
then "\fI[[=o=]]\fP", "\fI[[=\o'o^'=]]\fP", and "\fI[o\o'o^']\fP" are all synonymous.
then "\fI[[=o=]]\fP", "\fI[[=\o'o^'=]]\fP",
and "\fI[o\o'o^']\fP" are all synonymous.
An equivalence class may not\*(dg be an endpoint
of a range.
.PP
Within a bracket expression, the name of a \fIcharacter class\fR enclosed
in "\fI[:\fP" and "\fI:]\fP" stands for the list of all characters belonging to that
in "\fI[:\fP" and "\fI:]\fP" stands for the list
of all characters belonging to that
class.
Standard character class names are:
.PP
@ -167,8 +174,8 @@ A character class may not be used as an endpoint of a range.
.\" The following does not seem to apply in the glibc implementation
.\" .PP
.\" There are two special cases\*(dg of bracket expressions:
.\" the bracket expressions "\fI[[:<:]]\fP" and "\fI[[:>:]]\fP" match the null string at
.\" the beginning and end of a word respectively.
.\" the bracket expressions "\fI[[:<:]]\fP" and "\fI[[:>:]]\fP" match
.\" the null string at the beginning and end of a word respectively.
.\" A word is defined as a sequence of
.\" word characters
.\" which is neither preceded nor followed by
@ -199,10 +206,12 @@ Match lengths are measured in characters, not collating elements.
A null string is considered longer than no match at all.
For example,
"\fIbb*\fP" matches the three middle characters of "abbbc",
"\fI(wee|week)(knights|nights)\fP" matches all ten characters of "weeknights",
"\fI(wee|week)(knights|nights)\fP"
matches all ten characters of "weeknights",
when "\fI(.*).*\fP" is matched against "abc" the parenthesized subexpression
matches all three characters, and
when "\fI(a*)*\fP" is matched against "bc" both the whole RE and the parenthesized
when "\fI(a*)*\fP" is matched against "bc"
both the whole RE and the parenthesized
subexpression match the null string.
.PP
If case-independent matching is specified,
@ -223,7 +232,8 @@ as an implementation can refuse to accept such REs and remain
POSIX-compliant.
.PP
Obsolete ("basic") regular expressions differ in several respects.
\(aq|\(aq, \(aq+\(aq, and \(aq?\(aq are ordinary characters and there is no equivalent
\(aq|\(aq, \(aq+\(aq, and \(aq?\(aq are
ordinary characters and there is no equivalent
for their functionality.
The delimiters for bounds are "\fI\e{\fP" and "\fI\e}\fP",
with \(aq{\(aq and \(aq}\(aq by themselves ordinary characters.