changes (suggested) by Soren Larsen
diff --git a/Doc/lib/libarray.tex b/Doc/lib/libarray.tex
index 034ac32..ea68fb1 100644
--- a/Doc/lib/libarray.tex
+++ b/Doc/lib/libarray.tex
@@ -63,8 +63,8 @@
 \end{funcdesc}
 
 \begin{funcdesc}{fromlist}{list}
-Appends items from the list.  This is equivalent to
-\code{for x in \var{list}: a.append(x)}
+Append items from the list.  This is equivalent to
+\code{for x in \var{list}:\ a.append(x)}
 except that if there is a type error, the array is unchanged.
 \end{funcdesc}
 
diff --git a/Doc/lib/libcgi.tex b/Doc/lib/libcgi.tex
index a5d1cdf..082a2a1 100644
--- a/Doc/lib/libcgi.tex
+++ b/Doc/lib/libcgi.tex
@@ -62,7 +62,9 @@
 the form was submitted through a POST request).  The keys in the
 resulting dictionary are the field names used in the submission; the
 values are {\em lists} of the field values (since field name may be
-used multiple times in a single form).  As a side effect, it sets
+used multiple times in a single form).  \samp{\%} escapes in the
+values are translated to their single-character equivalent using
+\code{urllib.unquote()}.  As a side effect, this function sets
 \code{environ['QUERY_STRING']} to the raw query string, if it isn't
 already set.
 \end{funcdesc}
@@ -79,7 +81,9 @@
 \end{funcdesc}
 
 \begin{funcdesc}{print_form}{form}
-Print a piece of HTML text showing the contents of the \var{form}.
+Print a piece of HTML text showing the contents of the \var{form} (a
+dictionary, an instance of the \code{FormContentDict} class defined
+below, or a subclass thereof).
 This is mainly useful when debugging a CGI script.
 \end{funcdesc}
 
diff --git a/Doc/lib/libfuncs.tex b/Doc/lib/libfuncs.tex
index 91a9ec9..9ebe210 100644
--- a/Doc/lib/libfuncs.tex
+++ b/Doc/lib/libfuncs.tex
@@ -42,7 +42,7 @@
 
 \begin{funcdesc}{compile}{string\, filename\, kind}
   Compile the \var{string} into a code object.  Code objects can be
-  executed by a \code{exec()} statement or evaluated by a call to
+  executed by an \code{exec} statement or evaluated by a call to
   \code{eval()}.  The \var{filename} argument should
   give the file from which the code was read; pass e.g. \code{'<string>'}
   if it wasn't read from a file.  The \var{kind} argument specifies
@@ -56,7 +56,7 @@
   object and a string.  The string must be the name
   of one of the object's attributes.  The function deletes
   the named attribute, provided the object allows it.  For example,
-  \code{setattr(\var{x}, '\var{foobar}')} is equivalent to
+  \code{delattr(\var{x}, '\var{foobar}')} is equivalent to
   \code{del \var{x}.\var{foobar}}.
 \end{funcdesc}
 
@@ -106,13 +106,15 @@
 \end{verbatim}\ecode
 
   This function can also be used to execute arbitrary code objects
-  (e.g. created by \code{compile()}).  In this case pass a code
+  (e.g.\ created by \code{compile()}).  In this case pass a code
   object instead of a string.  The code object must have been compiled
   passing \code{'eval'} to the \var{kind} argument.
 
-  Note: dynamic execution of statements is supported by the
+  Hints: dynamic execution of statements is supported by the
   \code{exec} statement.  Execution of statements from a file is
-  supported by the \code{execfile()} function.
+  supported by the \code{execfile()} function.  The \code{vars()}
+  function returns the current local dictionary, which may be useful
+  to pass around for use by \code{eval()} or \code{execfile()}.
 
 \end{funcdesc}
 
@@ -138,7 +140,7 @@
 \var{function} returns true.  If \var{list} is a string or a tuple,
 the result also has that type; otherwise it is always a list.  If
 \var{function} is \code{None}, the identity function is assumed,
-i.e. all elements of \var{list} that are false (zero or empty) are
+i.e.\ all elements of \var{list} that are false (zero or empty) are
 removed.
 \end{funcdesc}
 
@@ -268,7 +270,7 @@
 \begin{funcdesc}{pow}{x\, y\optional{\, z}}
   Return \var{x} to the power \var{y}; if \var{z} is present, return
   \var{x} to the power \var{y}, modulo \var{z} (computed more
-  efficiently that \code{pow(\var{x}, \var{y}) \% \var{z}}).
+  efficiently than \code{pow(\var{x}, \var{y}) \% \var{z}}).
   The arguments must have
   numeric types.  With mixed operand types, the rules for binary
   arithmetic operators apply.  The effective operand type is also the
@@ -378,7 +380,7 @@
 \begin{funcdesc}{str}{object}
 Return a string containing a nicely printable representation of an
 object.  For strings, this returns the string itself.  The difference
-with \code{repr(\var{object}} is that \code{str(\var{object}} does not
+with \code{repr(\var{object})} is that \code{str(\var{object})} does not
 always attempt to return a string that is acceptable to \code{eval()};
 its goal is to return a printable string.
 \end{funcdesc}
@@ -412,7 +414,7 @@
 corresponding symbol table are undefined.%
 \footnote{In the current implementation, local variable bindings
 cannot normally be affected this way, but variables retrieved from
-other scopes can be.  This may change.}
+other scopes (e.g. modules) can be.  This may change.}
 \end{funcdesc}
 
 \begin{funcdesc}{xrange}{\optional{start\,} end\optional{\, step}}
diff --git a/Doc/lib/libhttplib.tex b/Doc/lib/libhttplib.tex
index e36bba4..0d7ac4f 100644
--- a/Doc/lib/libhttplib.tex
+++ b/Doc/lib/libhttplib.tex
@@ -6,7 +6,7 @@
 
 This module defines a class which implements the client side of the
 HTTP protocol.  It is normally not used directly --- the module
-\code{urlllib} module uses it to handle URLs that use HTTP.
+\code{urllib} uses it to handle URLs that use HTTP.
 \stmodindex{urllib}
 
 The module defines one class, \code{HTTP}.  An \code{HTTP} instance
@@ -80,7 +80,7 @@
 Complete the request by shutting down the sending end of the socket,
 read the reply from the server, and return a triple (\var{replycode},
 \var{message}, \var{headers}).  Here \var{replycode} is the integer
-reply code from the request (e.g. \code{200} if the request was
+reply code from the request (e.g.\ \code{200} if the request was
 handled properly); \var{message} is the message string corresponding
 to the reply code; and \var{header} is an instance of the class
 \code{rfc822.Message} containing the headers received from the server.
diff --git a/Doc/lib/libimp.tex b/Doc/lib/libimp.tex
index befde61..72f71a2 100644
--- a/Doc/lib/libimp.tex
+++ b/Doc/lib/libimp.tex
@@ -2,7 +2,7 @@
 \bimodindex{imp}
 \index{import}
 
-This module provides an interface to the mechanisms use to implement
+This module provides an interface to the mechanisms used to implement
 the \code{import} statement.  It defines the following constants and
 functions:
 
diff --git a/Doc/lib/libpdb.tex b/Doc/lib/libpdb.tex
index ea03abf..7b3f1d4 100644
--- a/Doc/lib/libpdb.tex
+++ b/Doc/lib/libpdb.tex
@@ -99,7 +99,7 @@
 command (but not ``\code{he}'' or ``\code{hel}'', nor ``\code{H}'' or
 ``\code{Help} or ``\code{HELP}'').  Arguments to commands must be
 separated by whitespace (spaces or tabs).  Optional arguments are
-enclosed in square brackets (``\code{[]}'')in the command syntax; the
+enclosed in square brackets (``\code{[]}'') in the command syntax; the
 square brackets must not be typed.  Alternatives in the command syntax
 are separated by a vertical bar (``\code{|}'').
 
diff --git a/Doc/lib/libprofile.tex b/Doc/lib/libprofile.tex
index 8c2599e..29cd01b 100644
--- a/Doc/lib/libprofile.tex
+++ b/Doc/lib/libprofile.tex
@@ -6,7 +6,7 @@
 
 Written by James Roskind%
 \footnote{
-Updated and converted to LaTeX by Guido van Rossum.  The references to
+Updated and converted to \LaTeX\ by Guido van Rossum.  The references to
 the old profiler are left in the text, although it no longer exists.
 }
 
diff --git a/Doc/lib/libregex.tex b/Doc/lib/libregex.tex
index 10abece..dae6666 100644
--- a/Doc/lib/libregex.tex
+++ b/Doc/lib/libregex.tex
@@ -19,7 +19,7 @@
 they are followed by an unrecognized escape character.
 \emph{However}, if you want to include a literal \dfn{backslash} in a
 regular expression represented as a string literal, you have to
-\emph{quadruple} it.  E.g.  to extract LaTeX \samp{\e section\{{\rm
+\emph{quadruple} it.  E.g.\  to extract \LaTeX\ \samp{\e section\{{\rm
 \ldots}\}} headers from a document, you can use this pattern:
 \code{'\e \e \e\e section\{\e (.*\e )\}'}.
 
@@ -84,7 +84,7 @@
 
 \begin{funcdesc}{symcomp}{pattern\optional{\, translate}}
 This is like \code{compile}, but supports symbolic group names: if a
-parentheses-enclosed group begins with a group name in angular
+parenthesis-enclosed group begins with a group name in angular
 brackets, e.g. \code{'\e(<id>[a-z][a-z0-9]*\e)'}, the group can
 be referenced by its name in arguments to the \code{group} method of
 the resulting compiled regular expression object, like this:
diff --git a/Doc/lib/librfc822.tex b/Doc/lib/librfc822.tex
index 641ea85..602b6ef 100644
--- a/Doc/lib/librfc822.tex
+++ b/Doc/lib/librfc822.tex
@@ -29,7 +29,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{getallmatchingheaders}{name}
-Return a list of lines consisting of all headers whose header matches
+Return a list of lines consisting of all headers matching
 \var{name}, if any.  Each physical line, whether it is a continuation
 line or not, is a separate list item.  Return the empty list if no
 header matches \var{name}.
@@ -60,12 +60,12 @@
 \var{name} exists, return \code{None, None}; otherwise both the full
 name and the address are (possibly empty )strings.
 
-Example: if \code{m}'s first \code{From} header contains the string
+Example: If \code{m}'s first \code{From} header contains the string
 \code{'guido@cwi.nl (Guido van Rossum)'}, then
 \code{m.getaddr('From')} will yield the pair
-\code{('Guido van Rossum', 'guido\@cwi.nl')}.
+\code{('Guido van Rossum', 'guido@cwi.nl')}.
 If the header contained
-\code{'Guido van Rossum <guido\@cwi.nl>'} instead, it would yield the
+\code{'Guido van Rossum <guido@cwi.nl>'} instead, it would yield the
 exact same result.
 \end{funcdesc}
 
@@ -82,7 +82,7 @@
 
 \begin{funcdesc}{getdate}{name}
 Retrieve a header using \code{getheader} and parse it into a 9-tuple
-compatible with \code{time.kmtime()}.  If there is no header matching
+compatible with \code{time.mktime()}.  If there is no header matching
 \var{name}, or it is unparsable, return \code{None}.
 
 Date parsing appears to be a black art, and not all mailers adhere to
diff --git a/Doc/lib/libsgmllib.tex b/Doc/lib/libsgmllib.tex
index 29e26c2..8abcb41 100644
--- a/Doc/lib/libsgmllib.tex
+++ b/Doc/lib/libsgmllib.tex
@@ -7,7 +7,7 @@
 This module defines a class \code{SGMLParser} which serves as the
 basis for parsing text files formatted in SGML (Standard Generalized
 Mark-up Language).  In fact, it does not provide a full SGML parser
---- it only parses SGML insofar as it is used by HTML, and module only
+--- it only parses SGML insofar as it is used by HTML, and the module only
 exists as a basis for the \code{htmllib} module.
 \stmodindex{htmllib}
 
@@ -77,8 +77,8 @@
 ``\code{\&\var{ref};}'' where \var{ref} is an alphabetic entity
 reference.  It looks for \var{ref} in the instance (or class)
 variable \code{entitydefs} which should give the entity's translation.
-If a translation is found, it callse the method \code{handle_data()}
-with the translation; otherwise, it callse the method
+If a translation is found, it calls the method \code{handle_data()}
+with the translation; otherwise, it calls the method
 \code{unknown_entityref(\var{ref})}.
 \end{funcdesc}
 
@@ -142,7 +142,7 @@
 
 Note that the parser maintains a stack of opening tags for which no
 matching closing tag has been found yet.  Only tags processed by
-\code{start_\var{tag}()} are pushed on this stack.  Definition if a
+\code{start_\var{tag}()} are pushed on this stack.  Definition of a
 \code{end_\var{tag}()} method is optional for these tags.  For tags
 processed by \code{do_\var{tag}()} or by \code{unknown_tag()}, no
 \code{end_\var{tag}()} method must be defined.
diff --git a/Doc/lib/libstruct.tex b/Doc/lib/libstruct.tex
index 5b4a9aa..280fe55 100644
--- a/Doc/lib/libstruct.tex
+++ b/Doc/lib/libstruct.tex
@@ -49,7 +49,7 @@
   \lineiii{d}{double}{float}
 \end{tableiii}
 
-A format character may be preceded by an integral repeat count; e.g.
+A format character may be preceded by an integral repeat count; e.g.\
 the format string \code{'4h'} means exactly the same as \code{'hhhh'}.
 
 C numbers are represented in the machine's native format and byte
@@ -66,10 +66,10 @@
 
 Hint: to align the end of a structure to the alignment requirement of
 a particular type, end the format with the code for that type with a
-repeat count of zero, e.g. the format \code{'llh0l'} specifies two
+repeat count of zero, e.g.\ the format \code{'llh0l'} specifies two
 pad bytes at the end, assuming longs are aligned on 4-byte boundaries.
 
-(More format characters are planned, e.g. \code{'s'} for character
+(More format characters are planned, e.g.\ \code{'s'} for character
 arrays, upper case for unsigned variants, and a way to specify the
 byte order, which is useful for [de]constructing network packets and
 reading/writing portable binary file formats like TIFF and AIFF.)
diff --git a/Doc/lib/libsys.tex b/Doc/lib/libsys.tex
index fc71139..ffda68d 100644
--- a/Doc/lib/libsys.tex
+++ b/Doc/lib/libsys.tex
@@ -88,7 +88,7 @@
 as thread switches and signal handlers.  The default is 10, meaning
 the check is performed every 10 Python virtual instructions.  Setting
 it to a larger value may increase performance for programs using
-threads.  Setting it to a value <= 0 checks every virtual instruction,
+threads.  Setting it to a value $\leq 0$ checks every virtual instruction,
 maximizing responsiveness as well as overhead.
 \end{funcdesc}
 
diff --git a/Doc/lib/libtime.tex b/Doc/lib/libtime.tex
index 3106542..1bc5ffa 100644
--- a/Doc/lib/libtime.tex
+++ b/Doc/lib/libtime.tex
@@ -30,7 +30,7 @@
 \item
 The precision of the various real-time functions may be less than
 suggested by the units in which their value or argument is expressed.
-E.g. on most UNIX systems, the clock ``ticks'' only every 1/50th or
+E.g.\ on most UNIX systems, the clock ``ticks'' only every 1/50th or
 1/100th of a second, and on the Mac, it ticks 60 times a second.
 
 \end{itemize}
@@ -73,9 +73,9 @@
 
 \begin{funcdesc}{gmtime}{secs}
 Convert a time expressed in seconds since the epoch to a tuple of 9
-integers, in UTC: year (e.g. 1993), month (1-12), day (1-31), hour
-(0-23), minute (0-59), second (0-59), weekday (0-6, monday is 0),
-julian day (1-366), dst flag (always zero).  Fractions of a second are
+integers, in UTC: year (e.g.\ 1993), month (1--12), day (1--31), hour
+(0--23), minute (0--59), second (0--59), weekday (0--6, monday is 0),
+Julian day (1--366), dst flag (always zero).  Fractions of a second are
 ignored.  Note subtle differences with the C function of this name.
 \end{funcdesc}
 
diff --git a/Doc/lib/liburllib.tex b/Doc/lib/liburllib.tex
index a6000a7..aa672d4 100644
--- a/Doc/lib/liburllib.tex
+++ b/Doc/lib/liburllib.tex
@@ -37,7 +37,7 @@
 
 \begin{funcdesc}{urlretrieve}{url}
 Copy a network object denoted by a URL to a local file, if necessary.
-If the URL points to a local file, or a valid cached copy of the the
+If the URL points to a local file, or a valid cached copy of the
 object exists, the object is not copied.  Return a tuple (\var{filename},
 \var{headers}) where \var{filename} is the local file name under which
 the object can be found, and \var{headers} is either \code{None} (for
@@ -61,7 +61,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{unquote}{string}
-Remove \code{\%xx} escapes by their single-character equivalent.
+Replace \samp{\%xx} escapes by their single-character equivalent.
 
 Example: \code{unquote('/\%7Econnolly/')} yields \code{'/\~connolly/'}.
 \end{funcdesc}
@@ -82,7 +82,7 @@
 find the time to hack proper processing of Expiration time headers.
 
 \item
-There should be an function to query whether a particular URL is in
+There should be a function to query whether a particular URL is in
 the cache.
 
 \item
diff --git a/Doc/libarray.tex b/Doc/libarray.tex
index 034ac32..ea68fb1 100644
--- a/Doc/libarray.tex
+++ b/Doc/libarray.tex
@@ -63,8 +63,8 @@
 \end{funcdesc}
 
 \begin{funcdesc}{fromlist}{list}
-Appends items from the list.  This is equivalent to
-\code{for x in \var{list}: a.append(x)}
+Append items from the list.  This is equivalent to
+\code{for x in \var{list}:\ a.append(x)}
 except that if there is a type error, the array is unchanged.
 \end{funcdesc}
 
diff --git a/Doc/libcgi.tex b/Doc/libcgi.tex
index a5d1cdf..082a2a1 100644
--- a/Doc/libcgi.tex
+++ b/Doc/libcgi.tex
@@ -62,7 +62,9 @@
 the form was submitted through a POST request).  The keys in the
 resulting dictionary are the field names used in the submission; the
 values are {\em lists} of the field values (since field name may be
-used multiple times in a single form).  As a side effect, it sets
+used multiple times in a single form).  \samp{\%} escapes in the
+values are translated to their single-character equivalent using
+\code{urllib.unquote()}.  As a side effect, this function sets
 \code{environ['QUERY_STRING']} to the raw query string, if it isn't
 already set.
 \end{funcdesc}
@@ -79,7 +81,9 @@
 \end{funcdesc}
 
 \begin{funcdesc}{print_form}{form}
-Print a piece of HTML text showing the contents of the \var{form}.
+Print a piece of HTML text showing the contents of the \var{form} (a
+dictionary, an instance of the \code{FormContentDict} class defined
+below, or a subclass thereof).
 This is mainly useful when debugging a CGI script.
 \end{funcdesc}
 
diff --git a/Doc/libfuncs.tex b/Doc/libfuncs.tex
index 91a9ec9..9ebe210 100644
--- a/Doc/libfuncs.tex
+++ b/Doc/libfuncs.tex
@@ -42,7 +42,7 @@
 
 \begin{funcdesc}{compile}{string\, filename\, kind}
   Compile the \var{string} into a code object.  Code objects can be
-  executed by a \code{exec()} statement or evaluated by a call to
+  executed by an \code{exec} statement or evaluated by a call to
   \code{eval()}.  The \var{filename} argument should
   give the file from which the code was read; pass e.g. \code{'<string>'}
   if it wasn't read from a file.  The \var{kind} argument specifies
@@ -56,7 +56,7 @@
   object and a string.  The string must be the name
   of one of the object's attributes.  The function deletes
   the named attribute, provided the object allows it.  For example,
-  \code{setattr(\var{x}, '\var{foobar}')} is equivalent to
+  \code{delattr(\var{x}, '\var{foobar}')} is equivalent to
   \code{del \var{x}.\var{foobar}}.
 \end{funcdesc}
 
@@ -106,13 +106,15 @@
 \end{verbatim}\ecode
 
   This function can also be used to execute arbitrary code objects
-  (e.g. created by \code{compile()}).  In this case pass a code
+  (e.g.\ created by \code{compile()}).  In this case pass a code
   object instead of a string.  The code object must have been compiled
   passing \code{'eval'} to the \var{kind} argument.
 
-  Note: dynamic execution of statements is supported by the
+  Hints: dynamic execution of statements is supported by the
   \code{exec} statement.  Execution of statements from a file is
-  supported by the \code{execfile()} function.
+  supported by the \code{execfile()} function.  The \code{vars()}
+  function returns the current local dictionary, which may be useful
+  to pass around for use by \code{eval()} or \code{execfile()}.
 
 \end{funcdesc}
 
@@ -138,7 +140,7 @@
 \var{function} returns true.  If \var{list} is a string or a tuple,
 the result also has that type; otherwise it is always a list.  If
 \var{function} is \code{None}, the identity function is assumed,
-i.e. all elements of \var{list} that are false (zero or empty) are
+i.e.\ all elements of \var{list} that are false (zero or empty) are
 removed.
 \end{funcdesc}
 
@@ -268,7 +270,7 @@
 \begin{funcdesc}{pow}{x\, y\optional{\, z}}
   Return \var{x} to the power \var{y}; if \var{z} is present, return
   \var{x} to the power \var{y}, modulo \var{z} (computed more
-  efficiently that \code{pow(\var{x}, \var{y}) \% \var{z}}).
+  efficiently than \code{pow(\var{x}, \var{y}) \% \var{z}}).
   The arguments must have
   numeric types.  With mixed operand types, the rules for binary
   arithmetic operators apply.  The effective operand type is also the
@@ -378,7 +380,7 @@
 \begin{funcdesc}{str}{object}
 Return a string containing a nicely printable representation of an
 object.  For strings, this returns the string itself.  The difference
-with \code{repr(\var{object}} is that \code{str(\var{object}} does not
+with \code{repr(\var{object})} is that \code{str(\var{object})} does not
 always attempt to return a string that is acceptable to \code{eval()};
 its goal is to return a printable string.
 \end{funcdesc}
@@ -412,7 +414,7 @@
 corresponding symbol table are undefined.%
 \footnote{In the current implementation, local variable bindings
 cannot normally be affected this way, but variables retrieved from
-other scopes can be.  This may change.}
+other scopes (e.g. modules) can be.  This may change.}
 \end{funcdesc}
 
 \begin{funcdesc}{xrange}{\optional{start\,} end\optional{\, step}}
diff --git a/Doc/libhttplib.tex b/Doc/libhttplib.tex
index e36bba4..0d7ac4f 100644
--- a/Doc/libhttplib.tex
+++ b/Doc/libhttplib.tex
@@ -6,7 +6,7 @@
 
 This module defines a class which implements the client side of the
 HTTP protocol.  It is normally not used directly --- the module
-\code{urlllib} module uses it to handle URLs that use HTTP.
+\code{urllib} uses it to handle URLs that use HTTP.
 \stmodindex{urllib}
 
 The module defines one class, \code{HTTP}.  An \code{HTTP} instance
@@ -80,7 +80,7 @@
 Complete the request by shutting down the sending end of the socket,
 read the reply from the server, and return a triple (\var{replycode},
 \var{message}, \var{headers}).  Here \var{replycode} is the integer
-reply code from the request (e.g. \code{200} if the request was
+reply code from the request (e.g.\ \code{200} if the request was
 handled properly); \var{message} is the message string corresponding
 to the reply code; and \var{header} is an instance of the class
 \code{rfc822.Message} containing the headers received from the server.
diff --git a/Doc/libimp.tex b/Doc/libimp.tex
index befde61..72f71a2 100644
--- a/Doc/libimp.tex
+++ b/Doc/libimp.tex
@@ -2,7 +2,7 @@
 \bimodindex{imp}
 \index{import}
 
-This module provides an interface to the mechanisms use to implement
+This module provides an interface to the mechanisms used to implement
 the \code{import} statement.  It defines the following constants and
 functions:
 
diff --git a/Doc/libpdb.tex b/Doc/libpdb.tex
index ea03abf..7b3f1d4 100644
--- a/Doc/libpdb.tex
+++ b/Doc/libpdb.tex
@@ -99,7 +99,7 @@
 command (but not ``\code{he}'' or ``\code{hel}'', nor ``\code{H}'' or
 ``\code{Help} or ``\code{HELP}'').  Arguments to commands must be
 separated by whitespace (spaces or tabs).  Optional arguments are
-enclosed in square brackets (``\code{[]}'')in the command syntax; the
+enclosed in square brackets (``\code{[]}'') in the command syntax; the
 square brackets must not be typed.  Alternatives in the command syntax
 are separated by a vertical bar (``\code{|}'').
 
diff --git a/Doc/libprofile.tex b/Doc/libprofile.tex
index 8c2599e..29cd01b 100644
--- a/Doc/libprofile.tex
+++ b/Doc/libprofile.tex
@@ -6,7 +6,7 @@
 
 Written by James Roskind%
 \footnote{
-Updated and converted to LaTeX by Guido van Rossum.  The references to
+Updated and converted to \LaTeX\ by Guido van Rossum.  The references to
 the old profiler are left in the text, although it no longer exists.
 }
 
diff --git a/Doc/libregex.tex b/Doc/libregex.tex
index 10abece..dae6666 100644
--- a/Doc/libregex.tex
+++ b/Doc/libregex.tex
@@ -19,7 +19,7 @@
 they are followed by an unrecognized escape character.
 \emph{However}, if you want to include a literal \dfn{backslash} in a
 regular expression represented as a string literal, you have to
-\emph{quadruple} it.  E.g.  to extract LaTeX \samp{\e section\{{\rm
+\emph{quadruple} it.  E.g.\  to extract \LaTeX\ \samp{\e section\{{\rm
 \ldots}\}} headers from a document, you can use this pattern:
 \code{'\e \e \e\e section\{\e (.*\e )\}'}.
 
@@ -84,7 +84,7 @@
 
 \begin{funcdesc}{symcomp}{pattern\optional{\, translate}}
 This is like \code{compile}, but supports symbolic group names: if a
-parentheses-enclosed group begins with a group name in angular
+parenthesis-enclosed group begins with a group name in angular
 brackets, e.g. \code{'\e(<id>[a-z][a-z0-9]*\e)'}, the group can
 be referenced by its name in arguments to the \code{group} method of
 the resulting compiled regular expression object, like this:
diff --git a/Doc/librfc822.tex b/Doc/librfc822.tex
index 641ea85..602b6ef 100644
--- a/Doc/librfc822.tex
+++ b/Doc/librfc822.tex
@@ -29,7 +29,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{getallmatchingheaders}{name}
-Return a list of lines consisting of all headers whose header matches
+Return a list of lines consisting of all headers matching
 \var{name}, if any.  Each physical line, whether it is a continuation
 line or not, is a separate list item.  Return the empty list if no
 header matches \var{name}.
@@ -60,12 +60,12 @@
 \var{name} exists, return \code{None, None}; otherwise both the full
 name and the address are (possibly empty )strings.
 
-Example: if \code{m}'s first \code{From} header contains the string
+Example: If \code{m}'s first \code{From} header contains the string
 \code{'guido@cwi.nl (Guido van Rossum)'}, then
 \code{m.getaddr('From')} will yield the pair
-\code{('Guido van Rossum', 'guido\@cwi.nl')}.
+\code{('Guido van Rossum', 'guido@cwi.nl')}.
 If the header contained
-\code{'Guido van Rossum <guido\@cwi.nl>'} instead, it would yield the
+\code{'Guido van Rossum <guido@cwi.nl>'} instead, it would yield the
 exact same result.
 \end{funcdesc}
 
@@ -82,7 +82,7 @@
 
 \begin{funcdesc}{getdate}{name}
 Retrieve a header using \code{getheader} and parse it into a 9-tuple
-compatible with \code{time.kmtime()}.  If there is no header matching
+compatible with \code{time.mktime()}.  If there is no header matching
 \var{name}, or it is unparsable, return \code{None}.
 
 Date parsing appears to be a black art, and not all mailers adhere to
diff --git a/Doc/libsgmllib.tex b/Doc/libsgmllib.tex
index 29e26c2..8abcb41 100644
--- a/Doc/libsgmllib.tex
+++ b/Doc/libsgmllib.tex
@@ -7,7 +7,7 @@
 This module defines a class \code{SGMLParser} which serves as the
 basis for parsing text files formatted in SGML (Standard Generalized
 Mark-up Language).  In fact, it does not provide a full SGML parser
---- it only parses SGML insofar as it is used by HTML, and module only
+--- it only parses SGML insofar as it is used by HTML, and the module only
 exists as a basis for the \code{htmllib} module.
 \stmodindex{htmllib}
 
@@ -77,8 +77,8 @@
 ``\code{\&\var{ref};}'' where \var{ref} is an alphabetic entity
 reference.  It looks for \var{ref} in the instance (or class)
 variable \code{entitydefs} which should give the entity's translation.
-If a translation is found, it callse the method \code{handle_data()}
-with the translation; otherwise, it callse the method
+If a translation is found, it calls the method \code{handle_data()}
+with the translation; otherwise, it calls the method
 \code{unknown_entityref(\var{ref})}.
 \end{funcdesc}
 
@@ -142,7 +142,7 @@
 
 Note that the parser maintains a stack of opening tags for which no
 matching closing tag has been found yet.  Only tags processed by
-\code{start_\var{tag}()} are pushed on this stack.  Definition if a
+\code{start_\var{tag}()} are pushed on this stack.  Definition of a
 \code{end_\var{tag}()} method is optional for these tags.  For tags
 processed by \code{do_\var{tag}()} or by \code{unknown_tag()}, no
 \code{end_\var{tag}()} method must be defined.
diff --git a/Doc/libstruct.tex b/Doc/libstruct.tex
index 5b4a9aa..280fe55 100644
--- a/Doc/libstruct.tex
+++ b/Doc/libstruct.tex
@@ -49,7 +49,7 @@
   \lineiii{d}{double}{float}
 \end{tableiii}
 
-A format character may be preceded by an integral repeat count; e.g.
+A format character may be preceded by an integral repeat count; e.g.\
 the format string \code{'4h'} means exactly the same as \code{'hhhh'}.
 
 C numbers are represented in the machine's native format and byte
@@ -66,10 +66,10 @@
 
 Hint: to align the end of a structure to the alignment requirement of
 a particular type, end the format with the code for that type with a
-repeat count of zero, e.g. the format \code{'llh0l'} specifies two
+repeat count of zero, e.g.\ the format \code{'llh0l'} specifies two
 pad bytes at the end, assuming longs are aligned on 4-byte boundaries.
 
-(More format characters are planned, e.g. \code{'s'} for character
+(More format characters are planned, e.g.\ \code{'s'} for character
 arrays, upper case for unsigned variants, and a way to specify the
 byte order, which is useful for [de]constructing network packets and
 reading/writing portable binary file formats like TIFF and AIFF.)
diff --git a/Doc/libsys.tex b/Doc/libsys.tex
index fc71139..ffda68d 100644
--- a/Doc/libsys.tex
+++ b/Doc/libsys.tex
@@ -88,7 +88,7 @@
 as thread switches and signal handlers.  The default is 10, meaning
 the check is performed every 10 Python virtual instructions.  Setting
 it to a larger value may increase performance for programs using
-threads.  Setting it to a value <= 0 checks every virtual instruction,
+threads.  Setting it to a value $\leq 0$ checks every virtual instruction,
 maximizing responsiveness as well as overhead.
 \end{funcdesc}
 
diff --git a/Doc/libtime.tex b/Doc/libtime.tex
index 3106542..1bc5ffa 100644
--- a/Doc/libtime.tex
+++ b/Doc/libtime.tex
@@ -30,7 +30,7 @@
 \item
 The precision of the various real-time functions may be less than
 suggested by the units in which their value or argument is expressed.
-E.g. on most UNIX systems, the clock ``ticks'' only every 1/50th or
+E.g.\ on most UNIX systems, the clock ``ticks'' only every 1/50th or
 1/100th of a second, and on the Mac, it ticks 60 times a second.
 
 \end{itemize}
@@ -73,9 +73,9 @@
 
 \begin{funcdesc}{gmtime}{secs}
 Convert a time expressed in seconds since the epoch to a tuple of 9
-integers, in UTC: year (e.g. 1993), month (1-12), day (1-31), hour
-(0-23), minute (0-59), second (0-59), weekday (0-6, monday is 0),
-julian day (1-366), dst flag (always zero).  Fractions of a second are
+integers, in UTC: year (e.g.\ 1993), month (1--12), day (1--31), hour
+(0--23), minute (0--59), second (0--59), weekday (0--6, monday is 0),
+Julian day (1--366), dst flag (always zero).  Fractions of a second are
 ignored.  Note subtle differences with the C function of this name.
 \end{funcdesc}
 
diff --git a/Doc/liburllib.tex b/Doc/liburllib.tex
index a6000a7..aa672d4 100644
--- a/Doc/liburllib.tex
+++ b/Doc/liburllib.tex
@@ -37,7 +37,7 @@
 
 \begin{funcdesc}{urlretrieve}{url}
 Copy a network object denoted by a URL to a local file, if necessary.
-If the URL points to a local file, or a valid cached copy of the the
+If the URL points to a local file, or a valid cached copy of the
 object exists, the object is not copied.  Return a tuple (\var{filename},
 \var{headers}) where \var{filename} is the local file name under which
 the object can be found, and \var{headers} is either \code{None} (for
@@ -61,7 +61,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{unquote}{string}
-Remove \code{\%xx} escapes by their single-character equivalent.
+Replace \samp{\%xx} escapes by their single-character equivalent.
 
 Example: \code{unquote('/\%7Econnolly/')} yields \code{'/\~connolly/'}.
 \end{funcdesc}
@@ -82,7 +82,7 @@
 find the time to hack proper processing of Expiration time headers.
 
 \item
-There should be an function to query whether a particular URL is in
+There should be a function to query whether a particular URL is in
 the cache.
 
 \item