Global change to many pages...

Various pages use inconsistent terms for 'null byte' (which
is the C99/SUSv3 term for the '\0' character).
To rectify this the following changes were made in these pages:

Replace 'zero byte' with 'null byte'.
Replace 'null character' with 'null byte'.
Replace 'nulls' with 'null bytes'.
Replace 'NUL-terminated' by 'null-terminated'.
Replace 'NUL' by 'null byte'.
Replace 'terminating NUL' by 'terminating null byte'.
Replace 'final NUL' by 'terminating null byte'.
Replace 'NUL character' by 'null byte'.
This commit is contained in:
Michael Kerrisk 2006-01-13 02:09:44 +00:00
parent 89c9a3145e
commit 28d88c1751
46 changed files with 126 additions and 84 deletions

33
Changes
View File

@ -16,6 +16,21 @@ Apologies if I missed anyone!
Global changes
--------------
Various pages use inconsistent terms for 'null byte' (which
is the C99/SUSv3 term for the '\0' character).
To rectify this the following changes were made in the above pages:
Replace 'zero byte' with 'null byte'.
Replace 'null character' with 'null byte'.
Replace 'nulls' with 'null bytes'.
Replace 'NUL-terminated' by 'null-terminated'.
Replace 'NUL' by 'null byte'.
Replace 'terminating NUL' by 'terminating null byte'.
Replace 'final NUL' by 'terminating null byte'.
Replace 'NUL character' by 'null byte'.
Typographical or grammatical errors have been corrected in several
places.
@ -27,6 +42,24 @@ epoll_ctl.2
mtk
Noted that EPOLLONESHOT was added in 2.6.2.
gethostname.2
mtk
Added GLIBC NOTES describing operation of glibc's
gethostname() wrapper function.
fmemopen.3
mtk
Rewrote substantial parts of the page, and relicensed under GPL.
getopt.3
mtk
Noted historical use of <stdio.h> to declare getopt().
proc.5
mtk
Noted that /proc/mounts is pollable since kernel 2.6.15.
Documented /proc/PID/task.
Noted that the contents of /proc/PID/{cwd,exe,fd,root,task}
are not available if the main thread has terminated.

View File

@ -254,11 +254,13 @@ Remove each existing destination file before copying.
With file-utils 4.0 this option was implied by \-f.
.TP
.BI "\-\-sparse=" "WHEN"
A `sparse file' contains `holes' \(em sequences of zero bytes that
do not occupy any physical disk blocks; the `read' system call
reads these as zeroes. This can both save considerable disk space
A `sparse file' contains `holes' \(em sequences of null bytes ('\\0') that
do not occupy any physical disk blocks;
.BR read (2)
reads these as null bytes ('\\0').
This can both save considerable disk space
and increase speed, since many binary files contain lots of
consecutive zero bytes. By default,
consecutive null bytes. By default,
.B cp
detects holes in input source files via a crude heuristic
and makes the corresponding output file sparse as well.

View File

@ -36,8 +36,9 @@ was specified, it writes the amount of data read (which could be smaller
than what was requested) in a separate output block. This output block
has precisely the same length as was read unless the
.B sync
conversion was specified, in which case the data is padded with NULs
(or spaces, see below).
conversion was specified, in which case the data is padded with null
bytes (NUL, '\\0';
or with spaces, see below).
.PP
Otherwise, the input, read one block at a time, is processed
and the resulting output is collected and written in blocks
@ -183,7 +184,7 @@ Do not truncate the output file.
.B sync
Pad every input block to size of
.B ibs
with trailing zero bytes.
with trailing null bytes ('\\0').
.RE
.SH "GNU STANDARD OPTIONS"
.TP
@ -206,7 +207,7 @@ Often a tape drive will not accept arbitrarily sized blocks, and
would get an I/O error for the last fragment of data that does not
fill an entire block. Use `dd if=myfile of=/dev/mytape conv=sync'
to get everything on tape. Of course, reading it back will now
produce a slightly larger file, with nulls added at the end.
produce a slightly larger file, with null bytes added at the end.
.SH BUGS
Commands like `dd if=myfile of=/dev/fd0 bs=1k seek=172' fail
on some systems because

View File

@ -37,7 +37,7 @@ getdomainname, setdomainname \- get/set domain name
.SH DESCRIPTION
These functions are used to access or to change the domain name of the
current processor.
If the NUL-terminated domain name requires more than \fIlen\fP bytes,
If the null-terminated domain name requires more than \fIlen\fP bytes,
.BR getdomainname ()
returns the first \fIlen\fP bytes (glibc) or returns an error (libc).
.SH "RETURN VALUE"

View File

@ -42,12 +42,12 @@ These system calls are used to access or to change the host name of the
current processor.
The
.BR gethostname ()
system call returns a NUL-terminated hostname (set earlier by
system call returns a null-terminated hostname (set earlier by
.BR sethostname ())
in the array \fIname\fP that has a length of \fIlen\fP bytes.
In case the NUL-terminated hostname does not fit, no error is
In case the null-terminated hostname does not fit, no error is
returned, but the hostname is truncated. It is unspecified
whether the truncated hostname will be NUL-terminated.
whether the truncated hostname will be null-terminated.
.SH "RETURN VALUE"
On success, zero is returned. On error, \-1 is returned, and
.I errno
@ -86,7 +86,7 @@ but not
.SH NOTES
SUSv2 guarantees that `Host names are limited to 255 bytes'.
POSIX 1003.1-2001 guarantees that `Host names (not including
the terminating NUL) are limited to HOST_NAME_MAX bytes'.
the terminating null byte) are limited to HOST_NAME_MAX bytes'.
.SH "GLIBC NOTES"
The GNU C library implements
.BR gethostname ()

View File

@ -96,7 +96,7 @@ size of a buffer which is sufficiently large to hold the list of names.
The
.I list
of names is returned as an unordered array of null-terminated character
strings (attribute names are separated by NUL characters), like this:
strings (attribute names are separated by null bytes ('\\0')), like this:
.fam C
.RS
.nf

View File

@ -81,8 +81,8 @@ The
function allows the file offset to be set beyond the end of the existing
end-of-file of the file (but this does not change the size of the file).
If data is later written at this point, subsequent reads of the data
in the gap return bytes of zeros (until data is actually written into
the gap).
in the gap return null bytes ('\\0') until data is actually written into
the gap.
.SH "RETURN VALUE"
Upon successful completion,
.BR lseek ()

View File

@ -51,9 +51,7 @@ in the buffer
which has size
.IR bufsiz .
.BR readlink ()
does not append a
.B NUL
character to
does not append a null byte to
.IR buf .
It will truncate the contents (to a length of
.I bufsiz

View File

@ -118,7 +118,7 @@ The
field gives the size of the file (if it is a regular
file or a symbolic link) in bytes.
The size of a symlink is the length of the pathname
it contains, without trailing NUL.
it contains, without a trailing null byte.
The
.I st_blocks

View File

@ -50,7 +50,7 @@ into a file-system type index.
.B 2
Translate the file-system type index
.I fs_index
into a NUL-terminated file-system identifier string. This string will
into a null-terminated file-system identifier string. This string will
be written to the buffer pointed to by
.IR buf .
Make sure that

View File

@ -64,7 +64,7 @@ bytes.
.LP
If the file previously was larger than this size, the extra data is lost.
If the file previously was shorter, it is extended, and
the extended part reads as zero bytes.
the extended part reads as null bytes ('\\0').
.LP
The file offset is not changed.
.LP

View File

@ -55,7 +55,7 @@ char domainname[];
.RE
The length of the arrays in a
.I struct utsname
is unspecified; the fields are NUL-terminated.
is unspecified; the fields are terminated by a null byte (''\0').
.SH "RETURN VALUE"
On success, zero is returned. On error, \-1 is returned, and
.I errno

View File

@ -62,7 +62,7 @@ char f_fpack[6]; /* Filsys pack name */
.PP
The last two fields, f_fname and f_fpack, are not implemented and will
always be filled with NUL characters.
always be filled with null bytes ('\\0').
.SH "RETURN VALUE"
On success, zero is returned and the ustat structure pointed to by
.I ubuf

View File

@ -66,8 +66,8 @@ These functions are glibc-specific.
.LP
An argz vector is a pointer to a character buffer together with a length.
The intended interpretation of the character buffer is array
of strings, where the strings are separated by NUL bytes.
If the length is non-zero, the last byte of the buffer must be a NUL.
of strings, where the strings are separated by null bytes ('\\0').
If the length is non-zero, the last byte of the buffer must be a null byte.
.LP
These functions are for handling argz vectors.
The pair (NULL,0) is an argz vector, and, conversely,
@ -111,7 +111,8 @@ will be increased by
.IR buf_len .)
.LP
.BR argz_count ()
counts the number of strings, that is, the number of NUL bytes, in
counts the number of strings, that is,
the number of null bytes ('\\0'), in
.RI ( argz , argz_len ).
.LP
.BR argz_create ()
@ -121,7 +122,7 @@ terminated by (char *) 0, into an argz vector
.RI (* argz ,* argz_len ).
.LP
.BR argz_create_sep ()
converts the NUL-terminated string
converts the null-terminated string
.I str
into an argz vector
.RI (* argz ,* argz_len )
@ -193,14 +194,14 @@ will be incremented by the number of replacements.
is the opposite of
.BR argz_create_sep ().
It transforms the argz vector into a normal string by replacing
all NULs except the last by
all null bytes ('\\0') except the last by
.IR sep .
.SH "RETURN VALUE"
All argz functions that do memory allocation have a return type of
\fIerror_t\fP, and return 0 for success, and \fBENOMEM\fP
if an allocation error occurs.
.SH BUGS
Argz vectors without final NUL may lead to Segmentation Faults.
Argz vectors without a terminating null byte may lead to Segmentation Faults.
.SH NOTES
These functions are a GNU extension. Handle with care.
.SH "SEE ALSO"

View File

@ -43,7 +43,7 @@ are analogues of
and
.BR vsprintf (),
except that they allocate a string large enough to hold the output
including the terminating NUL,
including the terminating null byte,
and return a pointer to it via the first parameter.
This pointer should be passed to
.BR free (3)

View File

@ -62,7 +62,7 @@ memmove, memset \- byte string operations
.fi
.SH DESCRIPTION
The byte string functions perform operations on strings (byte arrays)
that are not necessarily NUL-terminated. See the individual man pages
that are not necessarily null-terminated. See the individual man pages
for descriptions of each function.
.SH NOTE
The functions

View File

@ -28,7 +28,7 @@
.\" Modified Tue Oct 22 23:49:37 1996 by Eric S. Raymond <esr@thyrsus.com>
.TH BZERO 3 2002-12-31 "Linux" "Linux Programmer's Manual"
.SH NAME
bzero \- write zero bytes
bzero \- write zero-valued bytes
.SH SYNOPSIS
.nf
.B #include <strings.h>
@ -42,7 +42,7 @@ function sets the first
.I n
bytes of the byte area starting at
.I s
to zero.
to zero (bytes containing '\\0').
.SH "RETURN VALUE"
None.
.SH "CONFORMING TO"

View File

@ -72,7 +72,7 @@ copies the value of the string to
.I buf
truncated to
.I len \- 1
characters if necessary, with a null character as termination.
characters if necessary, with a null byte ('\\0') as terminator.
This can be detected by comparing the return value of
.BR confstr ()
against

View File

@ -191,8 +191,10 @@ fails for any reason, it returns NULL.
.SS "dlsym"
The function
.BR dlsym ()
takes a "handle" of a dynamic library returned by dlopen and the
NUL-terminated symbol name, returning the address where that symbol is
takes a "handle" of a dynamic library returned by
.BR dlopen ()
and the
null-terminated symbol name, returning the address where that symbol is
loaded into memory. If the symbol is not found, in the specified
library or any of the libraries that were automatically loaded by
.BR dlopen ()

View File

@ -41,7 +41,7 @@ current orientation, as above.
.SH "RETURN VALUE"
The \fBfwide\fP() function returns the stream's orientation, after possibly
changing it. A return value > 0 means wide-character oriented. A return value
< 0 means byte oriented. A return value zero means undecided.
< 0 means byte oriented. A return value of zero means undecided.
.SH "CONFORMING TO"
ISO/ANSI C, UNIX98
.SH "SEE ALSO"

View File

@ -180,7 +180,7 @@ The members of the \fIhostent\fP structure are:
The official name of the host.
.TP
.I h_aliases
A zero-terminated array of alternative names for the host.
An array of alternative names for the host, terminated by a NULL pointer.
.TP
.I h_addrtype
The type of address; always
@ -193,8 +193,8 @@ at present.
The length of the address in bytes.
.TP
.I h_addr_list
A zero-terminated array of network addresses for the host in network byte
order.
An array of pointers to network addresses for the host (in network byte
order), terminated by a NULL pointer.
.TP
.I h_addr
The first address in \fIh_addr_list\fP for backward compatibility.

View File

@ -85,8 +85,8 @@ On success,
and
.BR getdelim ()
return the number of characters read, including the delimiter character,
but not including the terminating null character. This value can be used
to handle embedded null characters in the line read.
but not including the terminating null byte. This value can be used
to handle embedded null bytes in the line read.
Both functions return \-1 on failure to read a line (including end of file
condition).

View File

@ -88,7 +88,8 @@ The calling process has no controlling tty.
.TP
.B ERANGE
(getlogin_r)
The length of the user name, including final NUL, is larger than
The length of the user name, including the terminating null byte,
is larger than
.IR bufsize .
.LP
Linux/glibc also has

View File

@ -89,7 +89,7 @@ stream (TCP) based. This is required for the few ports (512-514)
that have different services for UDP and TCP.
.SH "RETURN VALUE"
On success 0 is returned, and node and service names, if requested,
are filled with NUL-terminated strings, possibly truncated to fit
are filled with null-terminated strings, possibly truncated to fit
the specified buffer lengths.
On error one of the following non-zero error codes is returned:
.TP

View File

@ -45,7 +45,7 @@ The function
.BR getpass ()
returns a pointer to a static buffer containing the
(first PASS_MAX bytes of) the password without the trailing
newline, terminated by a NUL.
newline, terminated by a null byte ('\\0').
This buffer may be overwritten by a following call.
On error, the terminal state is restored,
.I errno

View File

@ -77,7 +77,7 @@ The argument \fIitem\fP is of type \fBENTRY\fP, which is a typedef defined in
} ENTRY;
.fi
.sp
The field \fIkey\fP points to the NUL-terminated string which is the
The field \fIkey\fP points to the null-terminated string which is the
search key.
The field \fIdata\fP points to the data associated with that key.
The function \fBhsearch\fP() searches the hash table for an

View File

@ -51,7 +51,7 @@ First (if
.I s
is not NULL and
.RI * s
is not NUL) the argument string
is not a null byte ('\\0')) the argument string
.I s
is printed, followed by a colon and a blank.
Then the message and a new-line.

View File

@ -642,14 +642,11 @@ modifier is present: The
.I "const char *"
argument is expected to be a pointer to an array of character type (pointer
to a string). Characters from the array are written up to (but not
including) a terminating
.B NUL
character; if a precision is specified, no more than the number specified
are written. If a precision is given, no null character need be present;
including) a terminating null byte ('\\0');
if a precision is specified, no more than the number specified
are written. If a precision is given, no null byte need be present;
if the precision is not specified, or is greater than the size of the
array, the array must contain a terminating
.B NUL
character.
array, the array must contain a terminating null byte.
If an
.B l

View File

@ -67,7 +67,7 @@ structure contains a field
.I "char d_name[]"
of unspecified size, with at most
.B NAME_MAX
characters preceding the terminating null character.
characters preceding the terminating null byte.
POSIX 1003.1-2001 also documents the field
.I "ino_t d_ino"
as an XSI extension.
@ -76,7 +76,9 @@ as an XSI extension.
The data returned by \fBreaddir\fP() may be overwritten by subsequent
calls to \fBreaddir\fP() for the same directory stream.
.SH "RETURN VALUE"
The \fBreaddir\fP() function returns a pointer to a dirent structure, or
The \fBreaddir\fP() function returns a pointer to a
.I dirent
structure, or
NULL if an error occurs or end-of-file is reached.
On error,
.I errno

View File

@ -440,7 +440,7 @@ Matches a sequence of characters whose length is specified by the
(default 1); the next pointer must be a pointer to
.IR char ,
and there must be enough room for all the characters (no terminating
null character
null byte
is added). The usual skip of leading white space is suppressed. To skip
white space first, use an explicit space in the format.
.TP
@ -449,7 +449,7 @@ Matches a nonempty sequence of characters from the specified set of
accepted characters; the next pointer must be a pointer to
.IR char ,
and there must be enough room for all the characters in the string, plus a
terminating null character.
terminating null byte.
The usual skip of leading white space is suppressed. The
string is to be made up of characters in (or not in) a particular set; the
set is defined by the characters between the open bracket

View File

@ -40,7 +40,7 @@ The \fBstpcpy\fP() function copies the string pointed to by \fIsrc\fP
\fIdest\fP must be large enough to receive the copy.
.SH "RETURN VALUE"
\fBstpcpy\fP() returns a pointer to the \fBend\fP of the string
\fIdest\fP (that is, the address of the terminating null character)
\fIdest\fP (that is, the address of the terminating null byte)
rather than the beginning.
.SH EXAMPLE
For example, this program uses \fBstpcpy\fP() to concatenate \fBfoo\fP and

View File

@ -53,7 +53,7 @@ obtained with \fBmalloc\fP(3), and can be freed with \fBfree\fP(3).
The \fBstrndup\fP() function is similar, but only copies at most
\fIn\fP characters. If \fIs\fP is longer than \fIn\fP, only \fIn\fP
characters are copied, and a terminating NUL is added.
characters are copied, and a terminating null byte ('\\0') is added.
\fBstrdupa\fP() and \fBstrndupa\fP() are similar, but use \fBalloca(3)\fP
to allocate the buffer. They are only available when using the GNU

View File

@ -102,8 +102,8 @@ One argument of type double is converted using the locale's
national currency format.
.SH "RETURN VALUE"
The \fBstrfmon\fP() function returns the number of characters placed
in the array \fIs\fP, not including the terminating NUL character,
provided the string, including the terminating NUL, fits.
in the array \fIs\fP, not including the terminating null byte,
provided the string, including the terminating null byte, fits.
Otherwise, it sets
.I errno
to E2BIG, returns \-1, and the contents of the array is undefined.

View File

@ -237,8 +237,8 @@ See also
.BR ctime (3).
.SH "RETURN VALUE"
The \fBstrftime\fP() function returns the number of characters placed
in the array \fIs\fP, not including the terminating NUL character,
provided the string, including the terminating NUL, fits.
in the array \fIs\fP, not including the terminating null byte,
provided the string, including the terminating null byte, fits.
Otherwise, it returns 0, and the contents of the array is undefined.
(Thus at least since libc 4.4.4; very old versions of libc,
such as libc 4.4.1, would return \fImax\fP if the array was too small.)

View File

@ -84,7 +84,7 @@ strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex
.BI "size_t strxfrm(char *" dest ", const char *" src ", size_t " n );
.fi
.SH DESCRIPTION
The string functions perform string operations on NUL-terminated
The string functions perform string operations on null-terminated
strings. See the individual man pages for descriptions of each
function.
.SH "SEE ALSO"

View File

@ -259,7 +259,7 @@ The return value of the function is a pointer to the first character
not processed in this function call. In case the input string
contains more characters than required by the format string the return
value points right after the last consumed input character. In case
the whole input string is consumed the return value points to the NUL
the whole input string is consumed the return value points to the null
byte at the end of the string. If \fBstrptime\fP() fails to match all
of the format string and therefore an error occurred the function
returns NULL.

View File

@ -133,12 +133,13 @@ The max number of simultaneous processes per user ID.
Must not be less than _POSIX_CHILD_MAX (25).
.TP
.BR HOST_NAME_MAX " - " _SC_HOST_NAME_MAX
Max length of a hostname, not including the final NUL, as returned by
Max length of a hostname, not including the terminating null byte,
as returned by
.BR gethostname (2).
Must not be less than _POSIX_HOST_NAME_MAX (255).
.TP
.BR LOGIN_NAME_MAX " - " _SC_LOGIN_NAME_MAX
Maximum length of a login name, including the final NUL.
Maximum length of a login name, including the terminating null byte.
Must not be less than _POSIX_LOGIN_NAME_MAX (9).
.TP
.BR "" "clock ticks - " _SC_CLK_TCK
@ -175,7 +176,8 @@ The maximum number of symbolic links seen in a pathname before resolution
returns ELOOP. Must not be less than _POSIX_SYMLOOP_MAX (8).
.TP
.BR TTY_NAME_MAX " - " _SC_TTY_NAME_MAX
The maximum length of terminal device name, including final NUL.
The maximum length of terminal device name,
including the terminating null byte.
Must not be less than _POSIX_TTY_NAME_MAX (9).
.TP
.BR TZNAME_MAX " - " _SC_TZNAME_MAX

View File

@ -98,7 +98,7 @@ queues to be flushed, and if the terminal is the controlling
terminal of a foreground process group, it will cause a
\fBSIGINT\fP to be sent to this foreground process group.
When neither \fBIGNBRK\fP nor \fBBRKINT\fP are set, a BREAK
reads as a NUL character, except when \fBPARMRK\fP is set,
reads as a null byte ('\\0'), except when \fBPARMRK\fP is set,
in which case it reads as the sequence \\377 \\0 \\0.
.TP
.B IGNPAR
@ -169,7 +169,7 @@ Send fill characters for a delay, rather than using a timed delay.
.TP
.B OFDEL
(not in POSIX) Fill character is ASCII DEL (0177).
If unset, fill character is ASCII NUL.
If unset, fill character is ASCII NUL ('\\0').
.TP
.B NLDLY
Newline delay mask. Values are \fBNL0\fP and \fBNL1\fP.

View File

@ -37,7 +37,7 @@ ttyname, ttyname_r \- return name of a terminal
.SH DESCRIPTION
The function
.BR ttyname ()
returns a pointer to the NUL-terminated pathname of the terminal device
returns a pointer to the null-terminated pathname of the terminal device
that is open on the file descriptor \fIfd\fP, or NULL on error
(for example, if \fIfd\fP is not connected to a terminal).
The return value may point to static data, possibly overwritten by the

View File

@ -77,7 +77,7 @@ DSP56001.
sets the receive word size. Allowed values are in the range 1 to 4,
and is the number of bytes that will be received at a time from the
DSP56001. These data quantities will either truncated, or padded with
a zero byte to fit the native 24-bit data format of the DSP56001.
a null byte ('\\0') to fit the native 24-bit data format of the DSP56001.
.IP \fBDSP56K_HOST_FLAGS\fP
read and write the host flags. The host flags are four
general-purpose bits that can be read by both the hosting computer and

View File

@ -268,8 +268,9 @@ Can be applied to the master side of a pseudo-terminal only (and will return
ENOTTY otherwise). In packet mode, each subsequent
.BR read (2)
will return a packet that either contains a single non-zero control byte,
or has a single zero byte followed by data written on the slave side of
the pty. If the first byte is not TIOCPKT_DATA (0), it is an OR of one
or has a single byte containing zero (''\0') followed by data
written on the slave side of the pty.
If the first byte is not TIOCPKT_DATA (0), it is an OR of one
or more of the following bits:
.nf

View File

@ -1149,9 +1149,9 @@ and section names.
One references a string as an index into the string
table section.
The first byte, which is index zero, is defined to hold
a null character.
a null byte ('\\0').
Similarly, a string table's last byte is defined to
hold a null character, ensuring null termination for all strings.
hold a null byte, ensuring null termination for all strings.
.Pp
An object file's symbol table holds information needed to locate and
relocate a program's symbolic definitions and references.

View File

@ -108,8 +108,8 @@ are not available if the main thread has already terminated
.TP
.I /proc/[number]/environ
This file contains the environment for the process.
The entries are separated by null characters,
and there may be a null character at the end.
The entries are separated by null bytes ('\\0'),
and there may be a null bytes at the end.
Thus, to print out the environment of process 1, you would do:
.br
@ -1702,7 +1702,8 @@ This is useful for analysing virtual memory behaviour.
.I /usr/src/linux/Documentation/filesystems/proc.txt
.SH CAVEATS
Note that many strings (i.e., the environment and command line) are in
the internal format, with sub-fields terminated by NUL bytes, so you
the internal format, with sub-fields terminated by null bytes ('\\0'),
so you
may find that things are more readable if you use \fIod \-c\fP or \fItr
"\\000" "\\n"\fP to read them.
Alternatively, \fIecho `cat <file>`\fP works well.

View File

@ -95,7 +95,7 @@ hc This is a hardcopy terminal
HC The cursor is hard to see when not on bottom line
hs Has a status line
hz Hazeltine bug, the terminal can not print tilde characters
in Terminal inserts nulls, not spaces, to fill whitespace
in Terminal inserts null bytes, not spaces, to fill whitespace
km Terminal has a meta key
mi Cursor movement works in insert mode
ms Cursor movement works in standout/underline mode

View File

@ -237,7 +237,7 @@ which can be quite large for 16-bit codes.
Note that UTF-8 is self-synchronizing: 10xxxxxx is a tail, any other
byte is the head of a code. Note that the only way ASCII bytes occur
in a UTF-8 stream, is as themselves. In particular, there are no
embedded NULs or '/'s that form part of some larger code.
embedded NULs ('\\0') or '/'s that form part of some larger code.
.LP
Since ASCII, and, in particular, NUL and '/', are unchanged, the
kernel does not notice that UTF-8 is being used. It does not care at

View File

@ -79,7 +79,8 @@ always contains
contains the zero-terminated pathname of the socket in the file system.
If
.B sun_path
starts with a zero byte it refers to the abstract namespace maintained by
starts with a null byte (''\0'),
then it refers to the abstract namespace maintained by
the Unix protocol module.
The socket's address in this namespace is given by the rest of the
bytes in