mirror of https://github.com/mkerrisk/man-pages
time.1, atexit.3, bsearch.3, dlopen.3, envz_add.3, errno.3, fmtmsg.3, getgrent_r.3, getline.3, getmntent.3, getnameinfo.3, getpass.3, getpwent_r.3, gets.3, isalpha.3, printf.3, puts.3, recno.3, scandir.3, stdarg.3, sysconf.3, termios.3, wordexp.3, null.4, core.5, dir_colors.5, issue.5, proc.5, termcap.5, utmp.5, ascii.7, cpuset.7, glob.7, man-pages.7, man.7, mdoc.7, mdoc.samples.7, regex.7: Revert 9f8e673e62
(whose global s%\\e%\\\\% caused problems)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
parent
ca8a0bd25b
commit
31a6818e3c
|
@ -54,7 +54,7 @@ To access the real command, you may need to specify its pathname
|
|||
When in the POSIX locale, use the precise traditional format
|
||||
.IP
|
||||
.in +4n
|
||||
"real %f\\nuser %f\\nsys %f\\n"
|
||||
"real %f\enuser %f\ensys %f\en"
|
||||
.in
|
||||
.IP
|
||||
(with numbers in seconds)
|
||||
|
@ -122,7 +122,7 @@ is used.
|
|||
.SS "The format string"
|
||||
The format is interpreted in the usual printf-like way.
|
||||
Ordinary characters are directly copied, tab, newline
|
||||
and backslash are escaped using \\t, \\n and \\\\,
|
||||
and backslash are escaped using \et, \en and \e\e,
|
||||
a percent sign is represented by %%, and otherwise %
|
||||
indicates a conversion.
|
||||
The program
|
||||
|
|
|
@ -132,7 +132,7 @@ that are called when the shared library is unloaded.
|
|||
void
|
||||
bye(void)
|
||||
{
|
||||
printf("That was all, folks\\n");
|
||||
printf("That was all, folks\en");
|
||||
}
|
||||
|
||||
int
|
||||
|
@ -142,11 +142,11 @@ main(void)
|
|||
int i;
|
||||
|
||||
a = sysconf(_SC_ATEXIT_MAX);
|
||||
printf("ATEXIT_MAX = %ld\\n", a);
|
||||
printf("ATEXIT_MAX = %ld\en", a);
|
||||
|
||||
i = atexit(bye);
|
||||
if (i != 0) {
|
||||
fprintf(stderr, "cannot set exit function\\n");
|
||||
fprintf(stderr, "cannot set exit function\en");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
|
|
|
@ -105,9 +105,9 @@ main(int argc, char **argv)
|
|||
res = bsearch(&key, months, nr_of_months,
|
||||
sizeof(struct mi), compmi);
|
||||
if (res == NULL)
|
||||
printf("\(aq%s\(aq: unknown month\\n", argv[i]);
|
||||
printf("\(aq%s\(aq: unknown month\en", argv[i]);
|
||||
else
|
||||
printf("%s: month #%d\\n", res\->name, res\->nr);
|
||||
printf("%s: month #%d\en", res\->name, res\->nr);
|
||||
}
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
|
|
@ -460,7 +460,7 @@ main(int argc, char **argv)
|
|||
|
||||
handle = dlopen("libm.so", RTLD_LAZY);
|
||||
if (!handle) {
|
||||
fprintf(stderr, "%s\\n", dlerror());
|
||||
fprintf(stderr, "%s\en", dlerror());
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
|
@ -477,11 +477,11 @@ main(int argc, char **argv)
|
|||
.\" But in fact "gcc -O2 -Wall" will complain about the preceding cast.
|
||||
|
||||
if ((error = dlerror()) != NULL) {
|
||||
fprintf(stderr, "%s\\n", error);
|
||||
fprintf(stderr, "%s\en", error);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
printf("%f\\n", (*cosine)(2.0));
|
||||
printf("%f\en", (*cosine)(2.0));
|
||||
dlclose(handle);
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
|
|
@ -129,9 +129,9 @@ main(int argc, char *argv[], char *envp[])
|
|||
e_len += strlen(envp[i]) + 1;
|
||||
|
||||
str = envz_entry(*envp, e_len, "HOME");
|
||||
printf("%s\\n", str);
|
||||
printf("%s\en", str);
|
||||
str = envz_get(*envp, e_len, "HOME");
|
||||
printf("%s\\n", str);
|
||||
printf("%s\en", str);
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
.fi
|
||||
|
|
|
@ -488,7 +488,7 @@ A common mistake is to do
|
|||
.nf
|
||||
|
||||
if (somecall() == \-1) {
|
||||
printf("somecall() failed\\n");
|
||||
printf("somecall() failed\en");
|
||||
if (errno == ...) { ... }
|
||||
}
|
||||
|
||||
|
@ -508,7 +508,7 @@ should be preserved across a library call, it must be saved:
|
|||
|
||||
if (somecall() == \-1) {
|
||||
int errsv = errno;
|
||||
printf("somecall() failed\\n");
|
||||
printf("somecall() failed\en");
|
||||
if (errsv == ...) { ... }
|
||||
}
|
||||
.fi
|
||||
|
|
|
@ -256,16 +256,16 @@ main(void)
|
|||
case MM_OK:
|
||||
break;
|
||||
case MM_NOTOK:
|
||||
printf("Nothing printed\\n");
|
||||
printf("Nothing printed\en");
|
||||
break;
|
||||
case MM_NOMSG:
|
||||
printf("Nothing printed to stderr\\n");
|
||||
printf("Nothing printed to stderr\en");
|
||||
break;
|
||||
case MM_NOCON:
|
||||
printf("No console output\\n");
|
||||
printf("No console output\en");
|
||||
break;
|
||||
default:
|
||||
printf("Unknown error from fmtmsg()\\n");
|
||||
printf("Unknown error from fmtmsg()\en");
|
||||
}
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
|
|
@ -164,7 +164,7 @@ main(void)
|
|||
break;
|
||||
printf(" %s", grpp\->gr_mem[i]);
|
||||
}
|
||||
printf("\\n");
|
||||
printf("\en");
|
||||
}
|
||||
endgrent();
|
||||
exit(EXIT_SUCCESS);
|
||||
|
|
|
@ -155,7 +155,7 @@ main(void)
|
|||
exit(EXIT_FAILURE);
|
||||
|
||||
while ((read = getline(&line, &len, fp)) != \-1) {
|
||||
printf("Retrieved line of length %zu :\\n", read);
|
||||
printf("Retrieved line of length %zu :\en", read);
|
||||
printf("%s", line);
|
||||
}
|
||||
|
||||
|
|
|
@ -134,8 +134,8 @@ struct mntent {
|
|||
.in
|
||||
|
||||
Since fields in the mtab and fstab files are separated by whitespace,
|
||||
octal escapes are used to represent the four characters space (\\040),
|
||||
tab (\\011), newline (\\012) and backslash (\\134) in those files
|
||||
octal escapes are used to represent the four characters space (\e040),
|
||||
tab (\e011), newline (\e012) and backslash (\e134) in those files
|
||||
when they occur in one of the four strings in a
|
||||
.I mntent
|
||||
structure.
|
||||
|
|
|
@ -244,7 +244,7 @@ char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];
|
|||
|
||||
if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,
|
||||
sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)
|
||||
printf("host=%s, serv=%s\\n", hbuf, sbuf);
|
||||
printf("host=%s, serv=%s\en", hbuf, sbuf);
|
||||
.fi
|
||||
.in
|
||||
|
||||
|
@ -261,7 +261,7 @@ if (getnameinfo(sa, len, hbuf, sizeof(hbuf),
|
|||
NULL, 0, NI_NAMEREQD))
|
||||
printf("could not resolve hostname");
|
||||
else
|
||||
printf("host=%s\\n", hbuf);
|
||||
printf("host=%s\en", hbuf);
|
||||
.fi
|
||||
.in
|
||||
.PP
|
||||
|
|
|
@ -106,7 +106,7 @@ While reading the password, signal generation
|
|||
.BR SIGSTOP ,
|
||||
.BR SIGTSTP )
|
||||
is disabled and the corresponding characters
|
||||
(usually control-C, control-\\, control-Z and control-Y)
|
||||
(usually control-C, control-\e, control-Z and control-Y)
|
||||
are transmitted as part of the password.
|
||||
Since libc 5.4.19 also line editing is disabled, so that also
|
||||
backspace and the like will be seen as part of the password.
|
||||
|
|
|
@ -160,7 +160,7 @@ main(void)
|
|||
i = getpwent_r(&pw, buf, BUFLEN, &pwp);
|
||||
if (i)
|
||||
break;
|
||||
printf("%s (%d)\\tHOME %s\\tSHELL %s\\n", pwp\->pw_name,
|
||||
printf("%s (%d)\etHOME %s\etSHELL %s\en", pwp\->pw_name,
|
||||
pwp\->pw_uid, pwp\->pw_dir, pwp\->pw_shell);
|
||||
}
|
||||
endpwent();
|
||||
|
|
|
@ -71,7 +71,7 @@ into the buffer pointed to by
|
|||
.I s
|
||||
until either a terminating newline or
|
||||
.BR EOF ,
|
||||
which it replaces with a null byte (\(aq\\0\(aq).
|
||||
which it replaces with a null byte (\(aq\e0\(aq).
|
||||
No check for buffer overrun is performed (see BUGS below).
|
||||
.PP
|
||||
.BR fgets ()
|
||||
|
@ -85,7 +85,7 @@ Reading stops after an
|
|||
.B EOF
|
||||
or a newline.
|
||||
If a newline is read, it is stored into the buffer.
|
||||
A terminating null byte (\(aq\\0\(aq)
|
||||
A terminating null byte (\(aq\e0\(aq)
|
||||
is stored after the last character in the buffer.
|
||||
.PP
|
||||
.BR ungetc ()
|
||||
|
|
|
@ -139,15 +139,15 @@ In the
|
|||
and
|
||||
.B """POSIX"""
|
||||
locales, these are: space, form-feed
|
||||
.RB ( \(aq\\f\(aq ),
|
||||
.RB ( \(aq\ef\(aq ),
|
||||
newline
|
||||
.RB ( \(aq\\n\(aq ),
|
||||
.RB ( \(aq\en\(aq ),
|
||||
carriage return
|
||||
.RB ( \(aq\\r\(aq ),
|
||||
.RB ( \(aq\er\(aq ),
|
||||
horizontal tab
|
||||
.RB ( \(aq\\t\(aq ),
|
||||
.RB ( \(aq\et\(aq ),
|
||||
and vertical tab
|
||||
.RB ( \(aq\\v\(aq ).
|
||||
.RB ( \(aq\ev\(aq ).
|
||||
.TP
|
||||
.BR isupper ()
|
||||
checks for an uppercase letter.
|
||||
|
|
|
@ -105,7 +105,7 @@ and
|
|||
.BR vsnprintf ()
|
||||
write at most
|
||||
.I size
|
||||
bytes (including the terminating null byte (\(aq\\0\(aq)) to
|
||||
bytes (including the terminating null byte (\(aq\e0\(aq)) to
|
||||
.IR str .
|
||||
.PP
|
||||
The functions
|
||||
|
@ -159,7 +159,7 @@ and
|
|||
.BR vsnprintf ()
|
||||
do not write more than
|
||||
.I size
|
||||
bytes (including the terminating null byte (\(aq\\0\(aq)).
|
||||
bytes (including the terminating null byte (\(aq\e0\(aq)).
|
||||
If the output was truncated due to this limit then the return value
|
||||
is the number of characters (excluding the terminating null byte)
|
||||
which would have been written to the final string if enough space
|
||||
|
@ -979,7 +979,7 @@ to five decimal places:
|
|||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
fprintf(stdout, "pi = %.5f\\n", 4 * atan(1.0));
|
||||
fprintf(stdout, "pi = %.5f\en", 4 * atan(1.0));
|
||||
.fi
|
||||
.in
|
||||
.PP
|
||||
|
@ -993,7 +993,7 @@ are pointers to strings:
|
|||
.nf
|
||||
|
||||
#include <stdio.h>
|
||||
fprintf(stdout, "%s, %s %d, %.2d:%.2d\\n",
|
||||
fprintf(stdout, "%s, %s %d, %.2d:%.2d\en",
|
||||
weekday, month, day, hour, min);
|
||||
.fi
|
||||
.in
|
||||
|
@ -1017,7 +1017,7 @@ With the value:
|
|||
.in +4n
|
||||
.nf
|
||||
|
||||
"%1$s, %3$d. %2$s, %4$d:%5$.2d\\n"
|
||||
"%1$s, %3$d. %2$s, %4$d:%5$.2d\en"
|
||||
|
||||
.fi
|
||||
.in
|
||||
|
|
|
@ -52,7 +52,7 @@ writes the string
|
|||
.I s
|
||||
to
|
||||
.IR stream ,
|
||||
without its terminating null byte (\(aq\\0\(aq).
|
||||
without its terminating null byte (\(aq\e0\(aq).
|
||||
.PP
|
||||
.BR putc ()
|
||||
is equivalent to
|
||||
|
|
|
@ -161,7 +161,7 @@ The length of a fixed-length record.
|
|||
The delimiting byte to be used to mark the end of a record for
|
||||
variable-length records, and the pad character for fixed-length
|
||||
records.
|
||||
If no value is specified, newlines ("\\n") are used to mark the end
|
||||
If no value is specified, newlines ("\en") are used to mark the end
|
||||
of variable-length records and fixed-length records are padded with
|
||||
spaces.
|
||||
.TP
|
||||
|
|
|
@ -162,7 +162,7 @@ main(void)
|
|||
perror("scandir");
|
||||
else {
|
||||
while (n\-\-) {
|
||||
printf("%s\\n", namelist[n]\->d_name);
|
||||
printf("%s\en", namelist[n]\->d_name);
|
||||
free(namelist[n]);
|
||||
}
|
||||
free(namelist);
|
||||
|
|
|
@ -291,17 +291,17 @@ foo(char *fmt, ...)
|
|||
switch (*fmt++) {
|
||||
case \(aqs\(aq: /* string */
|
||||
s = va_arg(ap, char *);
|
||||
printf("string %s\\n", s);
|
||||
printf("string %s\en", s);
|
||||
break;
|
||||
case \(aqd\(aq: /* int */
|
||||
d = va_arg(ap, int);
|
||||
printf("int %d\\n", d);
|
||||
printf("int %d\en", d);
|
||||
break;
|
||||
case \(aqc\(aq: /* char */
|
||||
/* need a cast here since va_arg only
|
||||
takes fully promoted types */
|
||||
c = (char) va_arg(ap, int);
|
||||
printf("char %c\\n", c);
|
||||
printf("char %c\en", c);
|
||||
break;
|
||||
}
|
||||
va_end(ap);
|
||||
|
|
|
@ -262,7 +262,7 @@ newline.
|
|||
.BR RE_DUP_MAX " - " _SC_RE_DUP_MAX
|
||||
The maximum number of repeated occurrences of a regular expression when
|
||||
the interval notation
|
||||
.B \\{m,n\\}
|
||||
.B \e{m,n\e}
|
||||
is used.
|
||||
.TP
|
||||
.BR POSIX2_VERSION " - " _SC_2_VERSION
|
||||
|
|
|
@ -555,7 +555,7 @@ is set, and then not passed as input.
|
|||
Minimum number of characters for noncanonical read (MIN).
|
||||
.TP
|
||||
.B VQUIT
|
||||
(034, FS, Ctrl-\\)
|
||||
(034, FS, Ctrl-\e)
|
||||
Quit character (QUIT).
|
||||
Send
|
||||
.B SIGQUIT
|
||||
|
|
|
@ -204,7 +204,7 @@ main(int argc, char **argv)
|
|||
wordexp("[a\-c]*.c", &p, 0);
|
||||
w = p.we_wordv;
|
||||
for (i = 0; i < p.we_wordc; i++)
|
||||
printf("%s\\n", w[i]);
|
||||
printf("%s\en", w[i]);
|
||||
wordfree(&p);
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ Data written to a \fBnull\fP or \fBzero\fP special file is discarded.
|
|||
Reads from the \fBnull\fP special file always return end of file (i.e.,
|
||||
.BR read (2)
|
||||
returns 0), whereas
|
||||
reads from \fBzero\fP always return bytes containing zero (\\0 characters).
|
||||
reads from \fBzero\fP always return bytes containing zero (\e0 characters).
|
||||
.LP
|
||||
\fBnull\fP and \fBzero\fP are typically created by:
|
||||
.RS
|
||||
|
|
|
@ -319,11 +319,11 @@ The following shell session demonstrates the use of this program
|
|||
.RB "$" " su"
|
||||
Password:
|
||||
.RB "#" " echo \(dq|$PWD/core_pattern_pipe_test %p \
|
||||
UID=%u GID=%g sig=%s\(dq > \\"
|
||||
UID=%u GID=%g sig=%s\(dq > \e"
|
||||
.B " /proc/sys/kernel/core_pattern"
|
||||
.RB "#" " exit"
|
||||
.RB "$" " sleep 100"
|
||||
.BR "^\\" " # type control-backslash"
|
||||
.BR "^\e" " # type control-backslash"
|
||||
Quit (core dumped)
|
||||
.RB "$" " cat core.info"
|
||||
argc=5
|
||||
|
|
|
@ -296,7 +296,7 @@ A different
|
|||
can, however, be specified, which would have the same effect.
|
||||
.SS "Escape Sequences"
|
||||
To specify control- or blank characters in the color sequences or
|
||||
filename extensions, either C-style \\-escaped notation or
|
||||
filename extensions, either C-style \e-escaped notation or
|
||||
.BR stty \-style
|
||||
^-notation can be used.
|
||||
The C-style notation
|
||||
|
@ -305,21 +305,21 @@ includes the following characters:
|
|||
.RS +.2i
|
||||
.ta 1.0i
|
||||
.nf
|
||||
\fB\\a\fR Bell (ASCII 7)
|
||||
\fB\\b\fR Backspace (ASCII 8)
|
||||
\fB\\e\fR Escape (ASCII 27)
|
||||
\fB\\f\fR Form feed (ASCII 12)
|
||||
\fB\\n\fR Newline (ASCII 10)
|
||||
\fB\\r\fR Carriage Return (ASCII 13)
|
||||
\fB\\t\fR Tab (ASCII 9)
|
||||
\fB\\v\fR Vertical Tab (ASCII 11)
|
||||
\fB\\?\fR Delete (ASCII 127)
|
||||
\fB\\\fInnn\fR Any character (octal notation)
|
||||
\fB\\x\fInnn\fR Any character (hexadecimal notation)
|
||||
\fB\\_\fR Space
|
||||
\fB\\\\\fR Backslash (\\)
|
||||
\fB\\^\fR Caret (^)
|
||||
\fB\\#\fR Hash mark (#)
|
||||
\fB\ea\fR Bell (ASCII 7)
|
||||
\fB\eb\fR Backspace (ASCII 8)
|
||||
\fB\ee\fR Escape (ASCII 27)
|
||||
\fB\ef\fR Form feed (ASCII 12)
|
||||
\fB\en\fR Newline (ASCII 10)
|
||||
\fB\er\fR Carriage Return (ASCII 13)
|
||||
\fB\et\fR Tab (ASCII 9)
|
||||
\fB\ev\fR Vertical Tab (ASCII 11)
|
||||
\fB\e?\fR Delete (ASCII 127)
|
||||
\fB\e\fInnn\fR Any character (octal notation)
|
||||
\fB\ex\fInnn\fR Any character (hexadecimal notation)
|
||||
\fB\e_\fR Space
|
||||
\fB\e\e\fR Backslash (\e)
|
||||
\fB\e^\fR Caret (^)
|
||||
\fB\e#\fR Hash mark (#)
|
||||
.fi
|
||||
.RE
|
||||
.sp
|
||||
|
@ -348,7 +348,7 @@ definitions, which are used by ISO 6429 terminals are:
|
|||
.RS +.2i
|
||||
.ta 1.0i
|
||||
.nf
|
||||
\fBLEFTCODE\fR \\e[
|
||||
\fBLEFTCODE\fR \ee[
|
||||
\fBRIGHTCODE\fR m
|
||||
.fi
|
||||
.RE
|
||||
|
|
|
@ -29,7 +29,7 @@ issue \- prelogin message and identification file
|
|||
.SH DESCRIPTION
|
||||
The file \fI/etc/issue\fP is a text file which contains a message or
|
||||
system identification to be printed before the login prompt.
|
||||
It may contain various \fB@\fP\fIchar\fP and \fB\\\fP\fIchar\fP
|
||||
It may contain various \fB@\fP\fIchar\fP and \fB\e\fP\fIchar\fP
|
||||
sequences, if supported by the
|
||||
.BR getty -type
|
||||
program employed on the system.
|
||||
|
|
|
@ -181,7 +181,7 @@ Thus, to print out the environment of process 1, you would do:
|
|||
.nf
|
||||
|
||||
.ft CW
|
||||
.RB "$" " (cat /proc/1/environ; echo) | tr \(aq\\000\(aq \(aq\\n\(aq"
|
||||
.RB "$" " (cat /proc/1/environ; echo) | tr \(aq\e000\(aq \(aq\en\(aq"
|
||||
.fi
|
||||
.ft P
|
||||
.in
|
||||
|
|
|
@ -86,11 +86,11 @@ Capabilities of similar functions can be written in one line.
|
|||
.nf
|
||||
Example for:
|
||||
.sp
|
||||
Head line: vt|vt101|DEC VT 101 terminal in 80 character mode:\\
|
||||
Head line: Vt|vt101-w|DEC VT 101 terminal in (wide) 132 character mode:\\
|
||||
Boolean: :bs:\\
|
||||
Numeric: :co#80:\\
|
||||
String: :sr=\\E[H:\\
|
||||
Head line: vt|vt101|DEC VT 101 terminal in 80 character mode:\e
|
||||
Head line: Vt|vt101-w|DEC VT 101 terminal in (wide) 132 character mode:\e
|
||||
Boolean: :bs:\e
|
||||
Numeric: :co#80:\e
|
||||
String: :sr=\eE[H:\e
|
||||
.fi
|
||||
.SS "Boolean Capabilities"
|
||||
.nf
|
||||
|
@ -380,12 +380,12 @@ XF XOFF character if not \fB^S\fP
|
|||
There are several ways of defining the control codes for string capabilities:
|
||||
.LP
|
||||
Every normal character represents itself,
|
||||
except \(aq^\(aq, \(aq\\\(aq, and \(aq%\(aq.
|
||||
except \(aq^\(aq, \(aq\e\(aq, and \(aq%\(aq.
|
||||
.LP
|
||||
A \fB^x\fP means Control-x.
|
||||
Control-A equals 1 decimal.
|
||||
.LP
|
||||
\\x means a special code.
|
||||
\ex means a special code.
|
||||
x can be one of the following characters:
|
||||
.RS
|
||||
E Escape (27)
|
||||
|
@ -401,7 +401,7 @@ b Backspace (8)
|
|||
f Form feed (12)
|
||||
.br
|
||||
0 Null character.
|
||||
A \\xxx specifies the octal character xxx.
|
||||
A \exxx specifies the octal character xxx.
|
||||
.RE
|
||||
.IP i
|
||||
Increments parameters by one.
|
||||
|
|
|
@ -133,7 +133,7 @@ This structure gives the name of the special file associated with the
|
|||
user's terminal, the user's login name, and the time of login in the form
|
||||
of
|
||||
.BR time (2).
|
||||
String fields are terminated by a null byte (\(aq\\0\(aq)
|
||||
String fields are terminated by a null byte (\(aq\e0\(aq)
|
||||
if they are shorter than the size
|
||||
of the field.
|
||||
.PP
|
||||
|
|
24
man7/ascii.7
24
man7/ascii.7
|
@ -43,7 +43,7 @@ The international counterpart of ASCII is known as ISO 646.
|
|||
.LP
|
||||
The following table contains the 128 ASCII characters.
|
||||
.LP
|
||||
C program \f(CW\(aq\\X\(aq\fP escapes are noted.
|
||||
C program \f(CW\(aq\eX\(aq\fP escapes are noted.
|
||||
.if t \{\
|
||||
.ft CW
|
||||
\}
|
||||
|
@ -51,20 +51,20 @@ C program \f(CW\(aq\\X\(aq\fP escapes are noted.
|
|||
l l l l l l l l.
|
||||
Oct Dec Hex Char Oct Dec Hex Char
|
||||
_
|
||||
000 0 00 NUL \(aq\\0\(aq 100 64 40 @
|
||||
000 0 00 NUL \(aq\e0\(aq 100 64 40 @
|
||||
001 1 01 SOH (start of heading) 101 65 41 A
|
||||
002 2 02 STX (start of text) 102 66 42 B
|
||||
003 3 03 ETX (end of text) 103 67 43 C
|
||||
004 4 04 EOT (end of transmission) 104 68 44 D
|
||||
005 5 05 ENQ (enquiry) 105 69 45 E
|
||||
006 6 06 ACK (acknowledge) 106 70 46 F
|
||||
007 7 07 BEL \(aq\\a\(aq (bell) 107 71 47 G
|
||||
010 8 08 BS \(aq\\b\(aq (backspace) 110 72 48 H
|
||||
011 9 09 HT \(aq\\t\(aq (horizontal tab) 111 73 49 I
|
||||
012 10 0A LF \(aq\\n\(aq (new line) 112 74 4A J
|
||||
013 11 0B VT \(aq\\v\(aq (vertical tab) 113 75 4B K
|
||||
014 12 0C FF \(aq\\f\(aq (form feed) 114 76 4C L
|
||||
015 13 0D CR \(aq\\r\(aq (carriage ret) 115 77 4D M
|
||||
007 7 07 BEL \(aq\ea\(aq (bell) 107 71 47 G
|
||||
010 8 08 BS \(aq\eb\(aq (backspace) 110 72 48 H
|
||||
011 9 09 HT \(aq\et\(aq (horizontal tab) 111 73 49 I
|
||||
012 10 0A LF \(aq\en\(aq (new line) 112 74 4A J
|
||||
013 11 0B VT \(aq\ev\(aq (vertical tab) 113 75 4B K
|
||||
014 12 0C FF \(aq\ef\(aq (form feed) 114 76 4C L
|
||||
015 13 0D CR \(aq\er\(aq (carriage ret) 115 77 4D M
|
||||
016 14 0E SO (shift out) 116 78 4E N
|
||||
017 15 0F SI (shift in) 117 79 4F O
|
||||
020 16 10 DLE (data link escape) 120 80 50 P
|
||||
|
@ -79,7 +79,7 @@ _
|
|||
031 25 19 EM (end of medium) 131 89 59 Y
|
||||
032 26 1A SUB (substitute) 132 90 5A Z
|
||||
033 27 1B ESC (escape) 133 91 5B [
|
||||
034 28 1C FS (file separator) 134 92 5C \\ \(aq\\\\\(aq
|
||||
034 28 1C FS (file separator) 134 92 5C \e \(aq\e\e\(aq
|
||||
035 29 1D GS (group separator) 135 93 5D ]
|
||||
036 30 1E RS (record separator) 136 94 5E ^
|
||||
037 31 1F US (unit separator) 137 95 5F \&_
|
||||
|
@ -132,7 +132,7 @@ For convenience, let us give more compact tables in hex and decimal.
|
|||
------------- ---------------------------------
|
||||
0: 0 @ P \` p 0: ( 2 < F P Z d n x
|
||||
1: ! 1 A Q a q 1: ) 3 = G Q [ e o y
|
||||
2: " 2 B R b r 2: * 4 > H R \\ f p z
|
||||
2: " 2 B R b r 2: * 4 > H R \e f p z
|
||||
3: # 3 C S c s 3: ! + 5 ? I S ] g q {
|
||||
4: $ 4 D T d t 4: " , 6 @ J T ^ h r |
|
||||
5: % 5 E U e u 5: # \- 7 A K U _ i s }
|
||||
|
@ -142,7 +142,7 @@ For convenience, let us give more compact tables in hex and decimal.
|
|||
9: ) 9 I Y i y 9: \' 1 ; E O Y c m w
|
||||
A: * : J Z j z
|
||||
B: + ; K [ k {
|
||||
C: , < L \\ l |
|
||||
C: , < L \e l |
|
||||
D: \- = M ] m }
|
||||
E: . > N ^ n ~
|
||||
F: / ? O _ o DEL
|
||||
|
|
|
@ -532,7 +532,7 @@ Unless memory pressure calculation is enabled by setting the pseudo-file
|
|||
.IR /dev/cpuset/memory_pressure_enabled ,
|
||||
it is not computed for any cpuset, and reads from any
|
||||
.I memory_pressure
|
||||
always return zero, as represented by the ASCII string "0\\n".
|
||||
always return zero, as represented by the ASCII string "0\en".
|
||||
See the \fBWARNINGS\fR section, below.
|
||||
.PP
|
||||
A per-cpuset, running average is employed for the following reasons:
|
||||
|
|
|
@ -85,8 +85,8 @@ One can remove the special meaning of \(aq?\(aq, \(aq*\(aq and \(aq[\(aq by
|
|||
preceding them by a backslash, or, in case this is part of
|
||||
a shell command line, enclosing them in quotes.
|
||||
Between brackets these characters stand for themselves.
|
||||
Thus, "\fI[[?*\\]\fP" matches the
|
||||
four characters \(aq[\(aq, \(aq?\(aq, \(aq*\(aq and \(aq\\\(aq.
|
||||
Thus, "\fI[[?*\e]\fP" matches the
|
||||
four characters \(aq[\(aq, \(aq?\(aq, \(aq*\(aq and \(aq\e\(aq.
|
||||
.SS Pathnames
|
||||
Globbing is applied on each of the components of a pathname
|
||||
separately.
|
||||
|
|
|
@ -447,7 +447,7 @@ If the command is short, then it can be included inline in the text,
|
|||
in italic format, for example,
|
||||
.IR "man 7 man-pages" .
|
||||
In this case, it may be worth using nonbreaking spaces
|
||||
("\\\ ") at suitable places in the command.
|
||||
("\e\ ") at suitable places in the command.
|
||||
Command options should be written in italics, e.g.,
|
||||
.IR \-l .
|
||||
.PP
|
||||
|
|
50
man7/man.7
50
man7/man.7
|
@ -246,7 +246,7 @@ except the tag is included with the command instead of being on the
|
|||
following line).
|
||||
If the tag is too long, the text after the tag will be moved down to the
|
||||
next line (text will not be lost or garbled).
|
||||
For bulleted lists, use this macro with \\(bu (bullet) or \\(em (em dash)
|
||||
For bulleted lists, use this macro with \e(bu (bullet) or \e(em (em dash)
|
||||
as the tag, and for numbered lists, use the number or letter followed by
|
||||
a period as the tag;
|
||||
this simplifies translation to other formats.
|
||||
|
@ -354,15 +354,15 @@ but used for a subsection inside a section).
|
|||
The
|
||||
.B man
|
||||
package has the following predefined strings:
|
||||
.IP \\*R
|
||||
.IP \e*R
|
||||
Registration Symbol: \*R
|
||||
.IP \\*S
|
||||
.IP \e*S
|
||||
Change to default font size
|
||||
.IP \\*(Tm
|
||||
.IP \e*(Tm
|
||||
Trademark Symbol: \*(Tm
|
||||
.IP \\*(lq
|
||||
.IP \e*(lq
|
||||
Left angled double quote: \*(lq
|
||||
.IP \\*(rq
|
||||
.IP \e*(rq
|
||||
Right angled double quote: \*(rq
|
||||
.SS "Safe Subset"
|
||||
Although technically
|
||||
|
@ -383,7 +383,7 @@ Avoid using computations; most other tools can't process them.
|
|||
Use simple commands that are easy to translate to other formats.
|
||||
The following troff macros are believed to be safe (though in many cases
|
||||
they will be ignored by translators):
|
||||
.BR \\" ,
|
||||
.BR \e" ,
|
||||
.BR . ,
|
||||
.BR ad ,
|
||||
.BR bp ,
|
||||
|
@ -410,26 +410,26 @@ they will be ignored by translators):
|
|||
.BR tr .
|
||||
.PP
|
||||
You may also use many troff escape sequences (those sequences beginning
|
||||
with \\).
|
||||
with \e).
|
||||
When you need to include the backslash character as normal text,
|
||||
use \\\\.
|
||||
use \ee.
|
||||
Other sequences you may use, where x or xx are any characters and N
|
||||
is any digit, include:
|
||||
.BR \\' ,
|
||||
.BR \\` ,
|
||||
.BR \\- ,
|
||||
.BR \\. ,
|
||||
.BR \\" ,
|
||||
.BR \\% ,
|
||||
.BR \\*x ,
|
||||
.BR \\*(xx ,
|
||||
.BR \\(xx ,
|
||||
.BR \\$N ,
|
||||
.BR \\nx ,
|
||||
.BR \\n(xx ,
|
||||
.BR \\fx ,
|
||||
.BR \e' ,
|
||||
.BR \e` ,
|
||||
.BR \e- ,
|
||||
.BR \e. ,
|
||||
.BR \e" ,
|
||||
.BR \e% ,
|
||||
.BR \e*x ,
|
||||
.BR \e*(xx ,
|
||||
.BR \e(xx ,
|
||||
.BR \e$N ,
|
||||
.BR \enx ,
|
||||
.BR \en(xx ,
|
||||
.BR \efx ,
|
||||
and
|
||||
.BR \\f(xx .
|
||||
.BR \ef(xx .
|
||||
Avoid using the escape sequences for drawing graphics.
|
||||
.PP
|
||||
Do not use the optional parameter for
|
||||
|
@ -459,7 +459,7 @@ Only translations
|
|||
that can be ignored should be used.
|
||||
Font changes
|
||||
.RB ( ft
|
||||
and the \fB\\f\fP escape sequence)
|
||||
and the \fB\ef\fP escape sequence)
|
||||
should only have the values 1, 2, 3, 4, R, I, B, P, or CW
|
||||
(the ft command may also have no parameters).
|
||||
.PP
|
||||
|
@ -497,7 +497,7 @@ file (such as HTML or Docbook).
|
|||
Anything else suggests simple ASCII
|
||||
text (e.g., a "catman" result).
|
||||
.PP
|
||||
Many man pages begin with \fB\'\\"\fP followed by a
|
||||
Many man pages begin with \fB\'\e"\fP followed by a
|
||||
space and a list of characters,
|
||||
indicating how the page is to be preprocessed.
|
||||
For portability's sake to non-troff translators we recommend
|
||||
|
|
|
@ -281,7 +281,7 @@ and a leading white space is not output between the characters
|
|||
and the previous argument (if any).
|
||||
The special meaning of a punctuation character may be escaped
|
||||
with the string
|
||||
.Ql \\& .
|
||||
.Ql \e& .
|
||||
For example the following string,
|
||||
.Bl -tag -width "&.Ar file1\ , file2\ , file3\ )\ ." -offset indent
|
||||
.It Li "\&.Ar file1\ , file2\ , file3\ )\ ."
|
||||
|
|
|
@ -231,10 +231,10 @@ at the beginning of a line in some context other than
|
|||
a macro invocation, precede the
|
||||
.Ql \&\.
|
||||
(dot) with the
|
||||
.Ql \\&
|
||||
.Ql \e&
|
||||
escape sequence.
|
||||
The
|
||||
.Ql \\&
|
||||
.Ql \e&
|
||||
translates literally to a zero width space, and is never displayed in the
|
||||
output.
|
||||
.Pp
|
||||
|
@ -289,11 +289,11 @@ To prevent a two character
|
|||
string from being interpreted as a macro name, precede
|
||||
the string with the
|
||||
escape sequence
|
||||
.Ql \\& :
|
||||
.Ql \e& :
|
||||
.Bl -tag -width "\&.Op \&Fl s \&Ar bytes" -offset indent
|
||||
.It Op \&Fl s \&Ar bytes
|
||||
is produced by
|
||||
.Li \&.Op \\&Fl s \\&Ar bytes
|
||||
.Li \&.Op \e&Fl s \e&Ar bytes
|
||||
.El
|
||||
.Pp
|
||||
Here the strings
|
||||
|
@ -379,9 +379,9 @@ Title of article in a book or journal.
|
|||
.Pp
|
||||
One way of passing a string
|
||||
containing blank spaces is to use the hard or unpaddable space character
|
||||
.Ql \\\ ,
|
||||
.Ql \e\ ,
|
||||
that is, a blank space preceded by the escape character
|
||||
.Ql \\ .
|
||||
.Ql \e .
|
||||
This method may be used with any macro but has the side effect
|
||||
of interfering with the adjustment of text
|
||||
over the length of a line.
|
||||
|
@ -395,14 +395,14 @@ For example:
|
|||
.Bl -tag -width "fetch(char *str)" -offset indent
|
||||
.It Fn fetch char\ *str
|
||||
is created by
|
||||
.Ql \&.Fn fetch char\\ *str
|
||||
.Ql \&.Fn fetch char\e *str
|
||||
.It Fn fetch "char *str"
|
||||
can also be created by
|
||||
.Ql \&.Fn fetch "\\*qchar *str\\*q"
|
||||
.El
|
||||
.Pp
|
||||
If the
|
||||
.Ql \\
|
||||
.Ql \e
|
||||
or quotes
|
||||
were omitted,
|
||||
.Ql \&.Fn
|
||||
|
@ -424,20 +424,20 @@ from <blank-space><end-of-line> character sequences.
|
|||
Should the need
|
||||
arise to force a blank character at the end of a line,
|
||||
it may be forced with an unpaddable space and the
|
||||
.Ql \\&
|
||||
.Ql \e&
|
||||
escape character.
|
||||
For example,
|
||||
.Ql string\\\ \\& .
|
||||
.Ql string\e\ \e& .
|
||||
.Ss Escaping Special Characters
|
||||
Special characters
|
||||
like the newline character
|
||||
.Ql \\n ,
|
||||
.Ql \en ,
|
||||
are handled by replacing the
|
||||
.Ql \\
|
||||
.Ql \e
|
||||
with
|
||||
.Ql \\e
|
||||
.Ql \ee
|
||||
(e.g.,
|
||||
.Ql \\en )
|
||||
.Ql \een )
|
||||
to preserve
|
||||
the backslash.
|
||||
.Sh THE ANATOMY OF A MAN PAGE
|
||||
|
@ -450,7 +450,7 @@ in
|
|||
.Pp
|
||||
.Ss A manual page template
|
||||
.Bd -literal -offset indent
|
||||
\&.\\" The following requests are required for all man pages.
|
||||
\&.\e" The following requests are required for all man pages.
|
||||
\&.Dd Month day, year
|
||||
\&.Os OPERATING_SYSTEM [version/release]
|
||||
\&.Dt DOCUMENT_TITLE [section number] [volume]
|
||||
|
@ -459,26 +459,26 @@ in
|
|||
\&.Nd one line description of name
|
||||
\&.Sh SYNOPSIS
|
||||
\&.Sh DESCRIPTION
|
||||
\&.\\" The following requests should be uncommented and
|
||||
\&.\\" used where appropriate. This next request is
|
||||
\&.\\" for sections 2 and 3 function return values only.
|
||||
\&.\\" .Sh RETURN VALUE
|
||||
\&.\\" This next request is for sections 1, 6, 7 & 8 only
|
||||
\&.\\" .Sh ENVIRONMENT
|
||||
\&.\\" .Sh FILES
|
||||
\&.\\" .Sh EXAMPLES
|
||||
\&.\\" This next request is for sections 1, 6, 7 & 8 only
|
||||
\&.\\" (command return values (to shell) and
|
||||
\&.\\" fprintf/stderr type diagnostics)
|
||||
\&.\\" .Sh DIAGNOSTICS
|
||||
\&.\\" The next request is for sections 2 and 3 error
|
||||
\&.\\" and signal handling only.
|
||||
\&.\\" .Sh ERRORS
|
||||
\&.\\" .Sh SEE ALSO
|
||||
\&.\\" .Sh CONFORMING TO
|
||||
\&.\\" .Sh HISTORY
|
||||
\&.\\" .Sh AUTHORS
|
||||
\&.\\" .Sh BUGS
|
||||
\&.\e" The following requests should be uncommented and
|
||||
\&.\e" used where appropriate. This next request is
|
||||
\&.\e" for sections 2 and 3 function return values only.
|
||||
\&.\e" .Sh RETURN VALUE
|
||||
\&.\e" This next request is for sections 1, 6, 7 & 8 only
|
||||
\&.\e" .Sh ENVIRONMENT
|
||||
\&.\e" .Sh FILES
|
||||
\&.\e" .Sh EXAMPLES
|
||||
\&.\e" This next request is for sections 1, 6, 7 & 8 only
|
||||
\&.\e" (command return values (to shell) and
|
||||
\&.\e" fprintf/stderr type diagnostics)
|
||||
\&.\e" .Sh DIAGNOSTICS
|
||||
\&.\e" The next request is for sections 2 and 3 error
|
||||
\&.\e" and signal handling only.
|
||||
\&.\e" .Sh ERRORS
|
||||
\&.\e" .Sh SEE ALSO
|
||||
\&.\e" .Sh CONFORMING TO
|
||||
\&.\e" .Sh HISTORY
|
||||
\&.\e" .Sh AUTHORS
|
||||
\&.\e" .Sh BUGS
|
||||
.Ed
|
||||
.Pp
|
||||
The first items in the template are the macros
|
||||
|
@ -785,7 +785,7 @@ default font distinguishing it from the strings in literal font.
|
|||
.Pp
|
||||
To remove the special meaning from a punctuation character
|
||||
escape it with
|
||||
.Ql \\& .
|
||||
.Ql \e& .
|
||||
.Xr Troff
|
||||
is limited as a macro language, and has difficulty
|
||||
when presented with a string containing
|
||||
|
@ -801,7 +801,7 @@ may assume it is supposed to actually perform the operation
|
|||
or evaluation suggested by the characters. To prevent
|
||||
the accidental evaluation of these characters,
|
||||
escape them with
|
||||
.Ql \\& .
|
||||
.Ql \e& .
|
||||
Typical syntax is shown in the first content macro displayed
|
||||
below,
|
||||
.Ql \&.Ad .
|
||||
|
@ -1249,7 +1249,7 @@ it can not recall the first argument it was invoked with.
|
|||
.Bl -tag -width "\&.Nm mdoc.sample" -compact -offset 14n
|
||||
.It Li \&.Nm mdoc.sample
|
||||
.Nm mdoc.sample
|
||||
.It Li \&.Nm \\-mdoc
|
||||
.It Li \&.Nm \e-mdoc
|
||||
.Nm \-mdoc .
|
||||
.It Li \&.Nm foo\ )\ )\ ,
|
||||
.Nm foo ) ) ,
|
||||
|
@ -1710,7 +1710,7 @@ using the space mode macro to turn spacing off:
|
|||
.Bd -literal -offset indent
|
||||
\&.Sm off
|
||||
\&.It Xo Sy I Ar operation
|
||||
\&.No \\en Ar count No \\en
|
||||
\&.No \een Ar count No \een
|
||||
\&.Xc
|
||||
\&.Sm on
|
||||
.Ed
|
||||
|
@ -1720,7 +1720,7 @@ Produces
|
|||
.Bl -tag -width flag -compact
|
||||
.Sm off
|
||||
.It Xo Sy I Ar operation
|
||||
.No \\n Ar count No \\n
|
||||
.No \en Ar count No \en
|
||||
.Xc
|
||||
.Sm on
|
||||
.El
|
||||
|
@ -1755,7 +1755,7 @@ Test the value of a variable.
|
|||
.Bd -literal -offset indent
|
||||
\&.It Xo
|
||||
\&.Ic .ifndef
|
||||
\&.Oo \\&! Oc Ns Ar variable
|
||||
\&.Oo \e&! Oc Ns Ar variable
|
||||
\&.Op Ar operator variable ...
|
||||
\&.Xc
|
||||
.Ed
|
||||
|
@ -2076,7 +2076,7 @@ macro asserts a vertical distance unless the -compact flag is given).
|
|||
.\" around the
|
||||
.\" .Li \&+
|
||||
.\" signs were forced with
|
||||
.\" .Li \\ :
|
||||
.\" .Li \e :
|
||||
.\" .Pp
|
||||
.\" .Ds I
|
||||
.\" .Cw (ax\ +\ bx\ +\ c) \ is\ produced\ by\ \&
|
||||
|
@ -2091,7 +2091,7 @@ macro asserts a vertical distance unless the -compact flag is given).
|
|||
.\" .Li \&.Sy x
|
||||
.\" .Cx
|
||||
.\" .Cl Cx \t\t
|
||||
.\" .Li \&.Cx \\\ +\\\ \\&
|
||||
.\" .Li \&.Cx \e\ +\e\ \e&
|
||||
.\" .Cx
|
||||
.\" .Cl Cx \&(\&
|
||||
.\" .Va a
|
||||
|
@ -2110,7 +2110,7 @@ macro asserts a vertical distance unless the -compact flag is given).
|
|||
.\" .Li \&.Sy y
|
||||
.\" .Cx
|
||||
.\" .Cl Cx \t\t
|
||||
.\" .Li \&.Cx \\\ +\\\ \\&
|
||||
.\" .Li \&.Cx \e\ +\e\ \e&
|
||||
.\" .Cx
|
||||
.\" .Cl Cx \t\t
|
||||
.\" .Li \&.Va c )
|
||||
|
@ -2141,7 +2141,7 @@ macro asserts a vertical distance unless the -compact flag is given).
|
|||
.\" .Cx \t
|
||||
.\" .Em is produced by
|
||||
.\" .Cx \t
|
||||
.\" .Li \&.Ar \\\ b1 e1 f1
|
||||
.\" .Li \&.Ar \e\ b1 e1 f1
|
||||
.\" .Cx
|
||||
.\" .Cl Cx \t\t
|
||||
.\" .Li \&.Op Sy ?/
|
||||
|
@ -2336,8 +2336,8 @@ would be typed.
|
|||
.Pp
|
||||
.Dl Usage: .Li argument ... \*(Pu
|
||||
.Bl -tag -width "\&.Li cntrl-D ) ," -compact -offset 14n
|
||||
.It Li \&.Li \\en
|
||||
.Li \\n
|
||||
.It Li \&.Li \een
|
||||
.Li \en
|
||||
.It Li \&.Li M1 M2 M3\ ;
|
||||
.Li M1 M2 M3 ;
|
||||
.It Li \&.Li cntrl-D\ )\ ,
|
||||
|
@ -2647,11 +2647,11 @@ macro name, a new and nested list is assumed.
|
|||
.Sh PREDEFINED STRINGS
|
||||
The following strings are predefined as may be used by
|
||||
preceding with the troff string interpreting sequence
|
||||
.Ql \&\\*(xx
|
||||
.Ql \&\e*(xx
|
||||
where
|
||||
.Em xx
|
||||
is the name of the defined string or as
|
||||
.Ql \&\\*x
|
||||
.Ql \&\e*x
|
||||
where
|
||||
.Em x
|
||||
is the name of the string.
|
||||
|
@ -2685,7 +2685,7 @@ The interpreting sequence may be used any where in the text.
|
|||
The string named
|
||||
.Ql q
|
||||
should be written as
|
||||
.Ql \\*q
|
||||
.Ql \e*q
|
||||
since it is only one char.
|
||||
.Sh DIAGNOSTICS
|
||||
The debugging facilities for
|
||||
|
@ -2718,7 +2718,7 @@ two lower case characters or a dot plus a letter or metacharacter
|
|||
character.
|
||||
In one of the introduction examples, it was shown how to
|
||||
prevent the interpretation of a macro name with the escape sequence
|
||||
.Ql \\& .
|
||||
.Ql \e& .
|
||||
This is sufficient for the internal register names also.
|
||||
.Pp
|
||||
.\" Every callable macro name has a corresponding register
|
||||
|
@ -2767,7 +2767,7 @@ the debug macro placed above and below an
|
|||
artificially created problem (a flag argument
|
||||
.Ql \&aC
|
||||
which should be
|
||||
.Ql \\&aC
|
||||
.Ql \e&aC
|
||||
in order to work):
|
||||
.Bd -literal -offset indent
|
||||
\&.Db on
|
||||
|
@ -2820,7 +2820,7 @@ In this next example, the offending
|
|||
is escaped:
|
||||
.Bd -literal -offset indent
|
||||
\&.Db on
|
||||
\&.Em An escaped \\&aC
|
||||
\&.Em An escaped \e&aC
|
||||
\&.Db off
|
||||
.Ed
|
||||
.Bd -literal -offset indent
|
||||
|
@ -2837,12 +2837,12 @@ DEBUGGING OFF
|
|||
.Ed
|
||||
.Pp
|
||||
The argument
|
||||
.Ql \\&aC
|
||||
.Ql \e&aC
|
||||
shows up with the same length of 2 as the
|
||||
.Ql \\&
|
||||
.Ql \e&
|
||||
sequence produces a zero width, but a register
|
||||
named
|
||||
.Ql \\&aC
|
||||
.Ql \e&aC
|
||||
was not found and the type classified as string.
|
||||
.Pp
|
||||
Other diagnostics consist of usage statements and are self explanatory.
|
||||
|
@ -2913,7 +2913,7 @@ and certainly should be able to.
|
|||
.\" boundary.
|
||||
.\" to make sure a line boundary is crossed:
|
||||
.\" .Bd -literal
|
||||
.\" \&.Fn struct\\\ dictionarytable\\\ *dictionarylookup struct\\\ dictionarytable\\\ *tab[]
|
||||
.\" \&.Fn struct\e\ dictionarytable\e\ *dictionarylookup struct\e\ dictionarytable\e\ *tab[]
|
||||
.\" .Ed
|
||||
.\" .Pp
|
||||
.\" produces, nudge nudge,
|
||||
|
|
22
man7/regex.7
22
man7/regex.7
|
@ -90,16 +90,16 @@ 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
|
||||
beginning of a line), \(aq$\(aq (matching the null string at the
|
||||
end of a line), a \(aq\\\(aq followed by one of the characters
|
||||
"\fI^.[$()|*+?{\\\fP"
|
||||
end of a line), a \(aq\e\(aq followed by one of the characters
|
||||
"\fI^.[$()|*+?{\e\fP"
|
||||
(matching that character taken as an ordinary character),
|
||||
a \(aq\\\(aq followed by any other character\*(dg
|
||||
a \(aq\e\(aq followed by any other character\*(dg
|
||||
(matching that character taken as an ordinary character,
|
||||
as if the \(aq\\\(aq had not been present\*(dg),
|
||||
as if the \(aq\e\(aq had not been present\*(dg),
|
||||
or a single character with no other significance (matching that character).
|
||||
A \(aq{\(aq followed by a character other than a digit is an ordinary
|
||||
character, not the beginning of a bound\*(dg.
|
||||
It is illegal to end an RE with \(aq\\\(aq.
|
||||
It is illegal to end an RE with \(aq\e\(aq.
|
||||
.PP
|
||||
A \fIbracket expression\fR is a list of characters enclosed in "\fI[]\fP".
|
||||
It normally matches any single character from the list (but see below).
|
||||
|
@ -123,7 +123,7 @@ 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).
|
||||
With the exception of these and some combinations using \(aq[\(aq (see next
|
||||
paragraphs), all other special characters, including \(aq\\\(aq, lose their
|
||||
paragraphs), all other special characters, including \(aq\e\(aq, lose their
|
||||
special significance within a bracket expression.
|
||||
.PP
|
||||
Within a bracket expression, a collating element (a character,
|
||||
|
@ -235,9 +235,9 @@ Obsolete ("basic") regular expressions differ in several respects.
|
|||
\(aq|\(aq, \(aq+\(aq, and \(aq?\(aq are
|
||||
ordinary characters and there is no equivalent
|
||||
for their functionality.
|
||||
The delimiters for bounds are "\fI\\{\fP" and "\fI\\}\fP",
|
||||
The delimiters for bounds are "\fI\e{\fP" and "\fI\e}\fP",
|
||||
with \(aq{\(aq and \(aq}\(aq by themselves ordinary characters.
|
||||
The parentheses for nested subexpressions are "\fI\\(\fP" and "\fI\\)\fP",
|
||||
The parentheses for nested subexpressions are "\fI\e(\fP" and "\fI\e)\fP",
|
||||
with \(aq(\(aq and \(aq)\(aq by themselves ordinary characters.
|
||||
\(aq^\(aq is an ordinary character except at the beginning of the
|
||||
RE or\*(dg the beginning of a parenthesized subexpression,
|
||||
|
@ -248,12 +248,12 @@ RE or the beginning of a parenthesized subexpression
|
|||
(after a possible leading \(aq^\(aq).
|
||||
.PP
|
||||
Finally, there is one new type of atom, a \fIback reference\fR:
|
||||
\(aq\\\(aq followed by a nonzero decimal digit \fId\fR
|
||||
\(aq\e\(aq followed by a nonzero decimal digit \fId\fR
|
||||
matches the same sequence of characters
|
||||
matched by the \fId\fRth parenthesized subexpression
|
||||
(numbering subexpressions by the positions of their opening parentheses,
|
||||
left to right),
|
||||
so that, for example, "\fI\\([bc]\\)\\1\fP" matches "bb" or "cc" but not "bc".
|
||||
so that, for example, "\fI\e([bc]\e)\e1\fP" matches "bb" or "cc" but not "bc".
|
||||
.SH BUGS
|
||||
Having two kinds of REs is a botch.
|
||||
.PP
|
||||
|
@ -267,7 +267,7 @@ Back references are a dreadful botch,
|
|||
posing major problems for efficient implementations.
|
||||
They are also somewhat vaguely defined
|
||||
(does
|
||||
"\fIa\\(\\(b\\)*\\2\\)*d\fP" match "abbbd"?).
|
||||
"\fIa\e(\e(b\e)*\e2\e)*d\fP" match "abbbd"?).
|
||||
Avoid using them.
|
||||
.PP
|
||||
POSIX.2's specification of case-independent matching is vague.
|
||||
|
|
Loading…
Reference in New Issue