Rob W. W. Hooft's spelling fixes for the Library Reference. I hope
SourceForge doesn't choke on this batch :-)

I'm not entirely sure this is 100% correct. The patch changes an
\index{persistency} to \index{presistence}, and I don't know what \index{}
does. But it seems to do so persi--er, consistently, so I hope it isn't a
problem.
diff --git a/Doc/lib/liballos.tex b/Doc/lib/liballos.tex
index 4d926c4..dd046c9 100644
--- a/Doc/lib/liballos.tex
+++ b/Doc/lib/liballos.tex
@@ -2,7 +2,7 @@
 
 The modules described in this chapter provide interfaces to operating
 system features that are available on (almost) all operating systems,
-such as files and a clock.  The interfaces are generally modelled
+such as files and a clock.  The interfaces are generally modeled
 after the \UNIX{} or C interfaces, but they are available on most
 other systems as well.  Here's an overview:
 
diff --git a/Doc/lib/libascii.tex b/Doc/lib/libascii.tex
index d71aa2e..af40c2b 100644
--- a/Doc/lib/libascii.tex
+++ b/Doc/lib/libascii.tex
@@ -18,7 +18,7 @@
   \lineii{NUL}{}
   \lineii{SOH}{Start of heading, console interrupt}
   \lineii{STX}{Start of text}
-  \lineii{ETX}{Ennd of text}
+  \lineii{ETX}{End of text}
   \lineii{EOT}{End of transmission}
   \lineii{ENQ}{Enquiry, goes with \constant{ACK} flow control}
   \lineii{ACK}{Acknowledgement}
diff --git a/Doc/lib/libasyncore.tex b/Doc/lib/libasyncore.tex
index 4bcd496..5b39090 100644
--- a/Doc/lib/libasyncore.tex
+++ b/Doc/lib/libasyncore.tex
@@ -107,7 +107,7 @@
   Each time through the \method{select()} loop, the set of sockets 
   is scanned, and this method is called to see if there is any 
   interest in writing.  The default method simply returns \code{1}, 
-  indiciating that by default, all channels will be interested.
+  indicating that by default, all channels will be interested.
 \end{methoddesc}
 
 In addition, there are the basic methods needed to construct and
diff --git a/Doc/lib/libaudioop.tex b/Doc/lib/libaudioop.tex
index 88bf046..00a91d1 100644
--- a/Doc/lib/libaudioop.tex
+++ b/Doc/lib/libaudioop.tex
@@ -151,7 +151,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{mul}{fragment, width, factor}
-Return a fragment that has all samples in the original framgent
+Return a fragment that has all samples in the original fragment
 multiplied by the floating-point value \var{factor}.  Overflow is
 silently ignored.
 \end{funcdesc}
@@ -161,7 +161,7 @@
 Convert the frame rate of the input fragment.
 
 \var{state} is a tuple containing the state of the converter.  The
-converter returns a tupl \code{(\var{newfragment}, \var{newstate})},
+converter returns a tuple \code{(\var{newfragment}, \var{newstate})},
 and \var{newstate} should be passed to the next call of
 \function{ratecv()}.
 
diff --git a/Doc/lib/libbasehttp.tex b/Doc/lib/libbasehttp.tex
index 82714b1..0c9f705 100644
--- a/Doc/lib/libbasehttp.tex
+++ b/Doc/lib/libbasehttp.tex
@@ -90,7 +90,7 @@
 
 \begin{memberdesc}{wfile}
 Contains the output stream for writing a response back to the client.
-Proper adherance to the HTTP protocol must be used when writing
+Proper adherence to the HTTP protocol must be used when writing
 to this stream.
 \end{memberdesc}
 
@@ -115,7 +115,7 @@
 Specifies a format string for building an error response to the
 client. It uses parenthesized, keyed format specifiers, so the
 format operand must be a dictionary. The \var{code} key should
-be an integer, specifing the numeric HTTP error code value.
+be an integer, specifying the numeric HTTP error code value.
 \var{message} should be a string containing a (detailed) error
 message of what occurred, and \var{explain} should be an
 explanation of the error code number. Default \var{message}
diff --git a/Doc/lib/libbinascii.tex b/Doc/lib/libbinascii.tex
index bbc7f44..8694ca9 100644
--- a/Doc/lib/libbinascii.tex
+++ b/Doc/lib/libbinascii.tex
@@ -11,7 +11,7 @@
 representations. Normally, you will not use these functions directly
 but use wrapper modules like \refmodule{uu}\refstmodindex{uu} or
 \refmodule{binhex}\refstmodindex{binhex} instead, this module solely
-exists because bit-manipuation of large amounts of data is slow in
+exists because bit-manipulation of large amounts of data is slow in
 Python.
 
 The \module{binascii} module defines the following functions:
diff --git a/Doc/lib/libcd.tex b/Doc/lib/libcd.tex
index 6f48fcf..0e7f90c 100644
--- a/Doc/lib/libcd.tex
+++ b/Doc/lib/libcd.tex
@@ -86,7 +86,7 @@
 \end{datadesc}
 
 \begin{datadesc}{ERROR}
-An error aoocurred while trying to read the disc or its table of
+An error occurred while trying to read the disc or its table of
 contents.
 \end{datadesc}
 
@@ -194,7 +194,7 @@
 \end{methoddesc}
 
 \begin{methoddesc}[CD player]{playtrackabs}{track, minutes, seconds, frames, play}
-Like \method{play()}, except that playing begins at the spcified
+Like \method{play()}, except that playing begins at the specified
 absolute time and ends at the end of the specified track.
 \end{methoddesc}
 
diff --git a/Doc/lib/libcfgparser.tex b/Doc/lib/libcfgparser.tex
index 805767d..1905e62 100644
--- a/Doc/lib/libcfgparser.tex
+++ b/Doc/lib/libcfgparser.tex
@@ -56,7 +56,7 @@
 \end{excdesc}
 
 \begin{excdesc}{DuplicateSectionError}
-Exception raised when mutliple sections with the same name are found,
+Exception raised when multiple sections with the same name are found,
 or if \method{add_section()} is called with the name of a section that 
 is already present.
 \end{excdesc}
diff --git a/Doc/lib/libcgi.tex b/Doc/lib/libcgi.tex
index 3b755a0..e90bf1c 100644
--- a/Doc/lib/libcgi.tex
+++ b/Doc/lib/libcgi.tex
@@ -104,7 +104,7 @@
 name, the object retrieved by \samp{form[\var{key}]} is not a
 \class{FieldStorage} or \class{MiniFieldStorage}
 instance but a list of such instances.  If you expect this possibility
-(i.e., when your HTML form comtains multiple fields with the same
+(i.e., when your HTML form contains multiple fields with the same
 name), use the \function{type()} function to determine whether you
 have a single instance or a list of instances.  For example, here's
 code that concatenates any number of username fields, separated by
@@ -131,7 +131,7 @@
 entire file in memory as a string.  This may not be what you want.
 You can test for an uploaded file by testing either the filename
 attribute or the file attribute.  You can then read the data at
-leasure from the file attribute:
+leisure from the file attribute:
 
 \begin{verbatim}
 fileitem = form["userfile"]
diff --git a/Doc/lib/libcgihttp.tex b/Doc/lib/libcgihttp.tex
index a2f453a..3343314 100644
--- a/Doc/lib/libcgihttp.tex
+++ b/Doc/lib/libcgihttp.tex
@@ -11,7 +11,7 @@
 
 The \module{CGIHTTPServer} module defines a request-handler class,
 interface compatible with
-\class{BaseHTTPServer.BaseHTTPRequestHandler} and inherits behaviour
+\class{BaseHTTPServer.BaseHTTPRequestHandler} and inherits behavior
 from \class{SimpleHTTPServer.SimpleHTTPRequestHandler} but can also
 run CGI scripts.
 
diff --git a/Doc/lib/libchunk.tex b/Doc/lib/libchunk.tex
index 0825a25..c580c77 100644
--- a/Doc/lib/libchunk.tex
+++ b/Doc/lib/libchunk.tex
@@ -24,7 +24,7 @@
   \lineiii{4}{4}{Size of chunk in big-endian byte order, not including the 
                  header}
   \lineiii{8}{\var{n}}{Data bytes, where \var{n} is the size given in
-                       the preceeding field}
+                       the preceding field}
   \lineiii{8 + \var{n}}{0 or 1}{Pad byte needed if \var{n} is odd and
                                 chunk alignment is used}
 \end{tableiii}
diff --git a/Doc/lib/libcode.tex b/Doc/lib/libcode.tex
index 4b66394..0566768 100644
--- a/Doc/lib/libcode.tex
+++ b/Doc/lib/libcode.tex
@@ -103,7 +103,7 @@
 Execute a code object.
 When an exception occurs, \method{showtraceback()} is called to
 display a traceback.  All exceptions are caught except
-\exception{SystemExit}, which is allowed to propogate.
+\exception{SystemExit}, which is allowed to propagate.
 
 A note about \exception{KeyboardInterrupt}: this exception may occur
 elsewhere in this code, and may not always be caught.  The caller
diff --git a/Doc/lib/libcurses.tex b/Doc/lib/libcurses.tex
index c46cbe5..bb2109d 100644
--- a/Doc/lib/libcurses.tex
+++ b/Doc/lib/libcurses.tex
@@ -1,5 +1,5 @@
 \section{\module{curses} ---
-         Terminal independant console handling}
+         Terminal independent console handling}
 
 \declaremodule{extension}{curses}
 \sectionauthor{Moshe Zadka}{mzadka@geocities.com}
@@ -243,7 +243,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{mouseinterval}{interval}
-Sets the maximum time in millisecondsthat can elapse between press and
+Sets the maximum time in milliseconds that can elapse between press and
 release events in order for them to be recognized as a click, and
 returns the previous interval value.  The default value is 200 msec,
 or one fifth of a second.
@@ -846,7 +846,7 @@
 \end{methoddesc}
 
 \begin{methoddesc}{timeout}{delay}
-Sets blocking or non-blocking read behaviour for the window.  If
+Sets blocking or non-blocking read behavior for the window.  If
 \var{delay} is negative, blocking read is used, which will wait
 indefinitely for input).  If \var{delay} is zero, then non-blocking
 read is used, and -1 will be returned by \method{getch()} if no input
diff --git a/Doc/lib/libdircache.tex b/Doc/lib/libdircache.tex
index f75bb53..45ac01a 100644
--- a/Doc/lib/libdircache.tex
+++ b/Doc/lib/libdircache.tex
@@ -22,7 +22,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{opendir}{path}
-Same as \function{listdir()}. Defined for backwards compatability.
+Same as \function{listdir()}. Defined for backwards compatibility.
 \end{funcdesc}
 
 \begin{funcdesc}{annotate}{head, list}
diff --git a/Doc/lib/libdl.tex b/Doc/lib/libdl.tex
index 31a3793..00c8ee5 100644
--- a/Doc/lib/libdl.tex
+++ b/Doc/lib/libdl.tex
@@ -8,7 +8,7 @@
 The \module{dl} module defines an interface to the
 \cfunction{dlopen()} function, which is the most common interface on
 \UNIX{} platforms for handling dynamically linked libraries. It allows
-the program to call arbitary functions in such a library.
+the program to call arbitrary functions in such a library.
 
 \strong{Note:} This module will not work unless
 \begin{verbatim}
@@ -23,7 +23,7 @@
 Open a shared object file, and return a handle. Mode
 signifies late binding (\constant{RTLD_LAZY}) or immediate binding
 (\constant{RTLD_NOW}). Default is \constant{RTLD_LAZY}. Note that some
-sytems do not support \constant{RTLD_NOW}.
+systems do not support \constant{RTLD_NOW}.
 
 Return value is a \pytype{dlobject}.
 \end{funcdesc}
@@ -44,7 +44,7 @@
 The \module{dl} module defines the following exception:
 
 \begin{excdesc}{error}
-Exception raised when an error has occured inside the dynamic loading
+Exception raised when an error has occurred inside the dynamic loading
 and linking routines.
 \end{excdesc}
 
diff --git a/Doc/lib/libformatter.tex b/Doc/lib/libformatter.tex
index fcda71d..7271982 100644
--- a/Doc/lib/libformatter.tex
+++ b/Doc/lib/libformatter.tex
@@ -6,7 +6,7 @@
 
 
 
-This module supports two interface definitions, each with mulitple
+This module supports two interface definitions, each with multiple
 implementations.  The \emph{formatter} interface is used by the
 \class{HTMLParser} class of the \refmodule{htmllib} module, and the
 \emph{writer} interface is required by the formatter interface.
@@ -75,8 +75,8 @@
 \end{methoddesc}
 
 \begin{methoddesc}[formatter]{add_flowing_data}{data}
-Provide data which should be formatted with collapsed whitespaces.
-Whitespace from preceeding and successive calls to
+Provide data which should be formatted with collapsed whitespace.
+Whitespace from preceding and successive calls to
 \method{add_flowing_data()} is considered as well when the whitespace
 collapse is performed.  The data which is passed to this method is
 expected to be word-wrapped by the output device.  Note that any
@@ -106,7 +106,7 @@
 string is copied to the label value, with some characters recognized
 to indicate a transform on the counter value.  Specifically, the
 character \character{1} represents the counter value formatter as an
-arabic number, the characters \character{A} and \character{a}
+Arabic number, the characters \character{A} and \character{a}
 represent alphabetic representations of the counter value in upper and
 lower case, respectively, and \character{I} and \character{i}
 represent the counter value in Roman numerals, in upper and lower
@@ -264,7 +264,7 @@
 
 \begin{methoddesc}[writer]{send_paragraph}{blankline}
 Produce a paragraph separation of at least \var{blankline} blank
-lines, or the equivelent.  The \var{blankline} value will be an
+lines, or the equivalent.  The \var{blankline} value will be an
 integer.  Note that the implementation will receive a call to
 \method{send_line_break()} before this call if a line break is needed; 
 this method should not include ending the last line of the paragraph.
diff --git a/Doc/lib/libftplib.tex b/Doc/lib/libftplib.tex
index d4813a5..3a9e636 100644
--- a/Doc/lib/libftplib.tex
+++ b/Doc/lib/libftplib.tex
@@ -265,6 +265,6 @@
 already closed connection (e.g.\ after a successful call to
 \method{quit()}.  After this call the \class{FTP} instance should not
 be used any more (i.e., after a call to \method{close()} or
-\method{quit()} you cannot reopen the connection by issueing another
+\method{quit()} you cannot reopen the connection by issuing another
 \method{login()} method).
 \end{methoddesc}
diff --git a/Doc/lib/libhtmllib.tex b/Doc/lib/libhtmllib.tex
index ec2b89a..508d004 100644
--- a/Doc/lib/libhtmllib.tex
+++ b/Doc/lib/libhtmllib.tex
@@ -124,9 +124,9 @@
 
 \begin{methoddesc}{save_end}{}
 Ends buffering character data and returns all data saved since the
-preceeding call to \method{save_bgn()}.  If the \member{nofill} flag is
+preceding call to \method{save_bgn()}.  If the \member{nofill} flag is
 false, whitespace is collapsed to single spaces.  A call to this
-method without a preceeding call to \method{save_bgn()} will raise a
+method without a preceding call to \method{save_bgn()} will raise a
 \exception{TypeError} exception.
 \end{methoddesc}
 
diff --git a/Doc/lib/libimageop.tex b/Doc/lib/libimageop.tex
index b364387..0f611e7 100644
--- a/Doc/lib/libimageop.tex
+++ b/Doc/lib/libimageop.tex
@@ -46,7 +46,7 @@
 
 \begin{funcdesc}{grey2mono}{image, width, height, threshold}
 Convert a 8-bit deep greyscale image to a 1-bit deep image by
-tresholding all the pixels.  The resulting image is tightly packed and
+thresholding all the pixels.  The resulting image is tightly packed and
 is probably only useful as an argument to \function{mono2grey()}.
 \end{funcdesc}
 
diff --git a/Doc/lib/libimaplib.tex b/Doc/lib/libimaplib.tex
index 9e57818..8fdc359 100644
--- a/Doc/lib/libimaplib.tex
+++ b/Doc/lib/libimaplib.tex
@@ -42,7 +42,7 @@
 \end{excdesc}
 
 \begin{excdesc}{IMAP4.readonly}
-This exception is raised when a writeable mailbox has its status changed by the server.  This is a
+This exception is raised when a writable mailbox has its status changed by the server.  This is a
 sub-class of \exception{IMAP4.error}.  Some other client now has write permission,
 and the mailbox will need to be re-opened to re-obtain write permission.
 \end{excdesc}
diff --git a/Doc/lib/libimp.tex b/Doc/lib/libimp.tex
index 9279591..4c66736 100644
--- a/Doc/lib/libimp.tex
+++ b/Doc/lib/libimp.tex
@@ -52,7 +52,7 @@
 If the module does not live in a file, the returned \var{file} is
 \code{None}, \var{filename} is the empty string, and the
 \var{description} tuple contains empty strings for its suffix and
-mode; the module type is as indicate in parentheses dabove.  If the
+mode; the module type is as indicate in parentheses above.  If the
 search is unsuccessful, \exception{ImportError} is raised.  Other
 exceptions indicate problems with the arguments or environment.
 
@@ -187,7 +187,7 @@
 argument must point to the shared library.  The \var{name} argument is
 used to construct the name of the initialization function: an external
 C function called \samp{init\var{name}()} in the shared library is
-called.  The optional \var{file} argment is ignored.  (Note: using
+called.  The optional \var{file} argument is ignored.  (Note: using
 shared libraries is highly system dependent, and not all systems
 support it.)
 \end{funcdesc}
diff --git a/Doc/lib/libintro.tex b/Doc/lib/libintro.tex
index 70c7c70..c17484f 100644
--- a/Doc/lib/libintro.tex
+++ b/Doc/lib/libintro.tex
@@ -25,7 +25,7 @@
 operating systems, such as access to specific hardware; others provide
 interfaces that are
 specific to a particular application domain, like the World-Wide Web.
-Some modules are avaiable in all versions and ports of Python; others
+Some modules are available in all versions and ports of Python; others
 are only available when the underlying system supports or requires
 them; yet others are available only when a particular configuration
 option was chosen at the time when Python was compiled and installed.
diff --git a/Doc/lib/liblocale.tex b/Doc/lib/liblocale.tex
index bb84343..ee7665b 100644
--- a/Doc/lib/liblocale.tex
+++ b/Doc/lib/liblocale.tex
@@ -258,7 +258,7 @@
 \samp{C}.
 
 The \function{setlocale()} function in the \module{locale} module
-gives the Python progammer the impression that you can manipulate the
+gives the Python programmer the impression that you can manipulate the
 \constant{LC_NUMERIC} locale setting, but this not the case at the C
 level: C code will always find that the \constant{LC_NUMERIC} locale
 setting is \samp{C}.  This is because too much would break when the
diff --git a/Doc/lib/libmarshal.tex b/Doc/lib/libmarshal.tex
index 4b0589f..5686451 100644
--- a/Doc/lib/libmarshal.tex
+++ b/Doc/lib/libmarshal.tex
@@ -19,7 +19,7 @@
   convert some data from internal to external form (in an RPC buffer for
   instance) and ``unmarshalling'' for the reverse process.}
 
-This is not a general ``persistency'' module.  For general persistency
+This is not a general ``persistence'' module.  For general persistence
 and transfer of Python objects through RPC calls, see the modules
 \refmodule{pickle} and \refmodule{shelve}.  The \module{marshal} module exists
 mainly to support reading and writing the ``pseudo-compiled'' code for
diff --git a/Doc/lib/libmd5.tex b/Doc/lib/libmd5.tex
index eac1a61..8800e50 100644
--- a/Doc/lib/libmd5.tex
+++ b/Doc/lib/libmd5.tex
@@ -12,7 +12,7 @@
 You can now feed this object with arbitrary strings using the
 \method{update()} method, and at any point you can ask it for the
 \dfn{digest} (a strong kind of 128-bit checksum,
-a.k.a. ``fingerprint'') of the contatenation of the strings fed to it
+a.k.a. ``fingerprint'') of the concatenation of the strings fed to it
 so far using the \method{digest()} method.
 \index{checksum!MD5}
 
diff --git a/Doc/lib/libmutex.tex b/Doc/lib/libmutex.tex
index d6e3707..773f9eb 100644
--- a/Doc/lib/libmutex.tex
+++ b/Doc/lib/libmutex.tex
@@ -7,7 +7,7 @@
 \modulesynopsis{Lock and queue for mutual exclusion.}
 
 The \module{mutex} defines a class that allows mutual-exclusion
-via aquiring and releasing locks. It does not require (or imply)
+via acquiring and releasing locks. It does not require (or imply)
 threading or multi-tasking, though it could be useful for
 those purposes.
 
@@ -27,7 +27,7 @@
 implying it now has the lock.
 
 Of course, no multi-threading is implied -- hence the funny interface
-for lock, where a function is called once the lock is aquired.
+for lock, where a function is called once the lock is acquired.
 \end{classdesc}
 
 
diff --git a/Doc/lib/libnetrc.tex b/Doc/lib/libnetrc.tex
index 9ad8d70..d11ed01 100644
--- a/Doc/lib/libnetrc.tex
+++ b/Doc/lib/libnetrc.tex
@@ -14,7 +14,7 @@
 used by the \UNIX{} \program{ftp} program and other FTP clients.
 
 \begin{classdesc}{netrc}{\optional{file}}
-A \class{netrc} instance or subclass instance enapsulates data from 
+A \class{netrc} instance or subclass instance encapsulates data from 
 a netrc file.  The initialization argument, if present, specifies the
 file to parse.  If no argument is given, the file \file{.netrc} in the
 user's home directory will be read.  Parse errors will raise
diff --git a/Doc/lib/libnis.tex b/Doc/lib/libnis.tex
index d7060fa..34ca329 100644
--- a/Doc/lib/libnis.tex
+++ b/Doc/lib/libnis.tex
@@ -19,7 +19,7 @@
 Return the match for \var{key} in map \var{mapname}, or raise an
 error (\exception{nis.error}) if there is none.
 Both should be strings, \var{key} is 8-bit clean.
-Return value is an arbitary array of bytes (i.e., may contain \code{NULL}
+Return value is an arbitrary array of bytes (i.e., may contain \code{NULL}
 and other joys).
 
 Note that \var{mapname} is first checked if it is an alias to another name.
@@ -28,7 +28,7 @@
 \begin{funcdesc}{cat}{mapname}
 Return a dictionary mapping \var{key} to \var{value} such that
 \code{match(\var{key}, \var{mapname})==\var{value}}.
-Note that both keys and values of the dictionary are arbitary
+Note that both keys and values of the dictionary are arbitrary
 arrays of bytes.
 
 Note that \var{mapname} is first checked if it is an alias to another name.
diff --git a/Doc/lib/libos.tex b/Doc/lib/libos.tex
index 803d90b..cb55eb5 100644
--- a/Doc/lib/libos.tex
+++ b/Doc/lib/libos.tex
@@ -325,7 +325,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{fpathconf}{fd, name}
-Return system configration information relevant to an open file.
+Return system configuration information relevant to an open file.
 \var{name} specifies the configuration value to retrieve; it may be a
 string which is the name of a defined system value; these names are
 specified in a number of standards (\POSIX.1, Unix95, Unix98, and
@@ -575,7 +575,7 @@
 \end{funcdesc}
 
 \begin{funcdesc}{pathconf}{path, name}
-Return system configration information relevant to a named file.
+Return system configuration information relevant to a named file.
 \var{name} specifies the configuration value to retrieve; it may be a
 string which is the name of a defined system value; these names are
 specified in a number of standards (\POSIX.1, Unix95, Unix98, and
@@ -983,7 +983,7 @@
 \end{funcdesc}
 
 
-\subsection{Miscellanenous System Information \label{os-path}}
+\subsection{Miscellaneous System Information \label{os-path}}
 
 
 \begin{funcdesc}{confstr}{name}
diff --git a/Doc/lib/libpanel.tex b/Doc/lib/libpanel.tex
index cc56dad..dc201fc 100644
--- a/Doc/lib/libpanel.tex
+++ b/Doc/lib/libpanel.tex
@@ -64,7 +64,7 @@
 \code{panel-request@nas.nasa.gov}).
 All access to it should be done through the standard module
 \code{panel}\refstmodindex{panel},
-which transparantly exports most functions from
+which transparently exports most functions from
 \code{pnl}
 but redefines
 \code{pnl.dopanel()}.
diff --git a/Doc/lib/libparser.tex b/Doc/lib/libparser.tex
index c478b93..96256ad 100644
--- a/Doc/lib/libparser.tex
+++ b/Doc/lib/libparser.tex
@@ -593,7 +593,7 @@
 define both types of elements.
 
 Most of the accessor functions are declared in \class{SuiteInfoBase}
-and do not need to be overriden by subclasses.  More importantly, the
+and do not need to be overridden by subclasses.  More importantly, the
 extraction of most information from a parse tree is handled through a
 method called by the \class{SuiteInfoBase} constructor.  The example
 code for most of the classes is clear when read alongside the formal
@@ -684,7 +684,7 @@
 something else.  For the definition statements, the name of the
 element defined is extracted and a representation object
 appropriate to the definition is created with the defining subtree
-passed as an argument to the constructor.  The repesentation objects
+passed as an argument to the constructor.  The representation objects
 are stored in instance variables and may be retrieved by name using
 the appropriate accessor methods.
 
diff --git a/Doc/lib/libpdb.tex b/Doc/lib/libpdb.tex
index 13514f5..40fcdad 100644
--- a/Doc/lib/libpdb.tex
+++ b/Doc/lib/libpdb.tex
@@ -153,7 +153,7 @@
 read in and executed as if it had been typed at the debugger prompt.
 This is particularly useful for aliases.  If both files exist, the one
 in the home directory is read first and aliases defined there can be
-overriden by the local file.
+overridden by the local file.
 
 \begin{description}
 
diff --git a/Doc/lib/libpickle.tex b/Doc/lib/libpickle.tex
index ebc8975..2c59c82 100644
--- a/Doc/lib/libpickle.tex
+++ b/Doc/lib/libpickle.tex
@@ -5,7 +5,7 @@
 \modulesynopsis{Convert Python objects to streams of bytes and back.}
 % Substantial improvements by Jim Kerr <jbkerr@sr.hp.com>.
 
-\index{persistency}
+\index{persistence}
 \indexii{persistent}{objects}
 \indexii{serializing}{objects}
 \indexii{marshalling}{objects}
@@ -17,7 +17,7 @@
 for ``pickling'' (a.k.a.\ serializing, marshalling or flattening)
 nearly arbitrary Python objects.  This is the act of converting
 objects to a stream of bytes (and back: ``unpickling'').  This is a
-more primitive notion than persistency --- although \module{pickle}
+more primitive notion than persistence --- although \module{pickle}
 reads and writes file objects, it does not handle the issue of naming
 persistent objects, nor the (even more complicated) area of concurrent
 access to persistent objects.  The \module{pickle} module can
@@ -92,7 +92,7 @@
 to be used for reading and writing code objects), and at least this
 avoids the possibility of smuggling Trojan horses into a program.
 
-For the benefit of persistency modules written using \module{pickle}, it
+For the benefit of persistence modules written using \module{pickle}, it
 supports the notion of a reference to an object outside the pickled
 data stream.  Such objects are referenced by a name, which is an
 arbitrary string of printable \ASCII{} characters.  The resolution of
@@ -250,7 +250,7 @@
 module defines the following functions, and an exception:
 
 \begin{funcdesc}{dump}{object, file\optional{, bin}}
-Write a pickled representation of \var{obect} to the open file object
+Write a pickled representation of \var{object} to the open file object
 \var{file}.  This is equivalent to
 \samp{Pickler(\var{file}, \var{bin}).dump(\var{object})}.
 If the optional \var{bin} argument is present and nonzero, the binary
@@ -380,7 +380,7 @@
 
 The format of the pickle data is identical to that produced using the
 \refmodule{pickle} module, so it is possible to use \refmodule{pickle} and
-\module{cPickle} interchangably with existing pickles.
+\module{cPickle} interchangeably with existing pickles.
 
 (Since the pickle data format is actually a tiny stack-oriented
 programming language, and there are some freedoms in the encodings of
diff --git a/Doc/lib/libpipes.tex b/Doc/lib/libpipes.tex
index e91f05b..6d389d8 100644
--- a/Doc/lib/libpipes.tex
+++ b/Doc/lib/libpipes.tex
@@ -62,7 +62,7 @@
 a given file on the command line) or \code{'.'} (which means the commands
 reads no input, and hence must be first.)
 
-Similarily, the second letter can be either of \code{'-'} (which means 
+Similarly, the second letter can be either of \code{'-'} (which means 
 the command writes to standard output), \code{'f'} (which means the 
 command writes a file on the command line) or \code{'.'} (which means
 the command does not write anything, and hence must be last.)
diff --git a/Doc/lib/libpoplib.tex b/Doc/lib/libpoplib.tex
index 4408ef3..d75e6da 100644
--- a/Doc/lib/libpoplib.tex
+++ b/Doc/lib/libpoplib.tex
@@ -13,7 +13,7 @@
 
 This module defines a class, \class{POP3}, which encapsulates a
 connection to an POP3 server and implements protocol as defined in
-\rfc{1725}.  The \class{POP3} class supports both the minmal and
+\rfc{1725}.  The \class{POP3} class supports both the minimal and
 optional command sets.
 
 A single class is provided by the \module{poplib} module:
@@ -46,7 +46,7 @@
 
 
 \begin{methoddesc}{user}{username}
-Send user commad, response should indicate that a password is required.
+Send user command, response should indicate that a password is required.
 \end{methoddesc}
 
 \begin{methoddesc}{pass_}{password}
diff --git a/Doc/lib/librotor.tex b/Doc/lib/librotor.tex
index 5cfe2b7..799df83 100644
--- a/Doc/lib/librotor.tex
+++ b/Doc/lib/librotor.tex
@@ -98,7 +98,7 @@
 The original Enigma cipher was broken in 1944. % XXX: Is this right?
 The version implemented here is probably a good deal more difficult to crack
 (especially if you use many rotors), but it won't be impossible for
-a truly skilful and determined attacker to break the cipher.  So if you want
+a truly skillful and determined attacker to break the cipher.  So if you want
 to keep the NSA out of your files, this rotor cipher may well be unsafe, but
 for discouraging casual snooping through your files, it will probably be
 just fine, and may be somewhat safer than using the \UNIX{} \program{crypt}
diff --git a/Doc/lib/libsched.tex b/Doc/lib/libsched.tex
index 21366f5..42d2481 100644
--- a/Doc/lib/libsched.tex
+++ b/Doc/lib/libsched.tex
@@ -92,6 +92,6 @@
 
 If a sequence of events takes longer to run than the time available
 before the next event, the scheduler will simply fall behind.  No
-events will be dropped; the calling code is responsible for cancelling 
+events will be dropped; the calling code is responsible for canceling 
 events which are no longer pertinent.
 \end{methoddesc}
diff --git a/Doc/lib/libsgmllib.tex b/Doc/lib/libsgmllib.tex
index 5a644b6..9907caa 100644
--- a/Doc/lib/libsgmllib.tex
+++ b/Doc/lib/libsgmllib.tex
@@ -34,7 +34,7 @@
 \item
 SGML comments of the form \samp{<!--\var{text}-->}.  Note that
 spaces, tabs, and newlines are allowed between the trailing
-\samp{>} and the immediately preceeding \samp{--}.
+\samp{>} and the immediately preceding \samp{--}.
 
 \end{itemize}
 \end{classdesc}
diff --git a/Doc/lib/libsha.tex b/Doc/lib/libsha.tex
index 1b1ce50..17ed3e9 100644
--- a/Doc/lib/libsha.tex
+++ b/Doc/lib/libsha.tex
@@ -11,7 +11,7 @@
 the same way as the \refmodule{md5} module:\ use the \function{new()}
 to create an sha object, then feed this object with arbitrary strings
 using the \method{update()} method, and at any point you can ask it
-for the \dfn{digest} of the contatenation of the strings fed to it
+for the \dfn{digest} of the concatenation of the strings fed to it
 so far.\index{checksum!SHA}  SHA digests are 160 bits instead of 128
 bits.
 
diff --git a/Doc/lib/libshelve.tex b/Doc/lib/libshelve.tex
index 171daee..76eaaf4 100644
--- a/Doc/lib/libshelve.tex
+++ b/Doc/lib/libshelve.tex
@@ -1,8 +1,8 @@
 \section{\module{shelve} ---
-         Python object persistency}
+         Python object persistence}
 
 \declaremodule{standard}{shelve}
-\modulesynopsis{Python object persistency.}
+\modulesynopsis{Python object persistence.}
 
 
 A ``shelf'' is a persistent, dictionary-like object.  The difference
diff --git a/Doc/lib/libshlex.tex b/Doc/lib/libshlex.tex
index f1eea3a..85cbbcd 100644
--- a/Doc/lib/libshlex.tex
+++ b/Doc/lib/libshlex.tex
@@ -21,7 +21,7 @@
 input will be taken from \code{sys.stdin}.  The second optional 
 argument is a filename string, which sets the initial value of the
 \member{infile} member.  If the stream argument is omitted or
-equal to \code{sys.stdin}, this second argument defauilts to ``stdin''.
+equal to \code{sys.stdin}, this second argument defaults to ``stdin''.
 \end{classdesc}
 
 
diff --git a/Doc/lib/libsignal.tex b/Doc/lib/libsignal.tex
index f2624e6..ce23da1 100644
--- a/Doc/lib/libsignal.tex
+++ b/Doc/lib/libsignal.tex
@@ -56,7 +56,7 @@
 will be the only one to receive signals (this is enforced by the
 Python \module{signal} module, even if the underlying thread
 implementation supports sending signals to individual threads).  This
-means that signals can't be used as a means of interthread
+means that signals can't be used as a means of inter-thread
 communication.  Use locks instead.
 
 \end{itemize}
diff --git a/Doc/lib/libsmtplib.tex b/Doc/lib/libsmtplib.tex
index 9638425..13bf340 100644
--- a/Doc/lib/libsmtplib.tex
+++ b/Doc/lib/libsmtplib.tex
@@ -56,7 +56,7 @@
 
 \begin{excdesc}{SMTPRecipientsRefused}
   All recipient addresses refused.  The errors for each recipient are
-  accessable through the attribute \member{recipients}, which is a
+  accessible through the attribute \member{recipients}, which is a
   dictionary of exactly the same sort as \method{SMTP.sendmail()}
   returns.
 \end{excdesc}
diff --git a/Doc/lib/libsomeos.tex b/Doc/lib/libsomeos.tex
index eea2321..680c590 100644
--- a/Doc/lib/libsomeos.tex
+++ b/Doc/lib/libsomeos.tex
@@ -3,7 +3,7 @@
 
 The modules described in this chapter provide interfaces to operating
 system features that are available on selected operating systems only.
-The interfaces are generally modelled after the \UNIX{} or \C{}
+The interfaces are generally modeled after the \UNIX{} or \C{}
 interfaces but they are available on some other systems as well
 (e.g. Windows or NT).  Here's an overview:
 
diff --git a/Doc/lib/libstatvfs.tex b/Doc/lib/libstatvfs.tex
index ca96212..6b38d7a 100644
--- a/Doc/lib/libstatvfs.tex
+++ b/Doc/lib/libstatvfs.tex
@@ -47,7 +47,7 @@
 \end{datadesc}
 
 \begin{datadesc}{F_FLAG}
-Flags. System dependant: see \cfunction{statvfs()} man page.
+Flags. System dependent: see \cfunction{statvfs()} man page.
 \end{datadesc}
 
 \begin{datadesc}{F_NAMEMAX}
diff --git a/Doc/lib/libstdwin.tex b/Doc/lib/libstdwin.tex
index a4fa557..df12299 100644
--- a/Doc/lib/libstdwin.tex
+++ b/Doc/lib/libstdwin.tex
@@ -259,7 +259,7 @@
 \begin{funcdesc}{textbreak}{str, width}
 Return the number of characters of the string that fit into a space of
 \var{width}
-bits wide when drawn in the curent font.
+bits wide when drawn in the current font.
 \end{funcdesc}
 
 \begin{funcdesc}{textwidth}{str}
diff --git a/Doc/lib/libsunau.tex b/Doc/lib/libsunau.tex
index 3850ce9..82c66c6 100644
--- a/Doc/lib/libsunau.tex
+++ b/Doc/lib/libsunau.tex
@@ -95,7 +95,7 @@
 \end{methoddesc}
 
 The following two methods define a term ``position'' which is compatible
-between them, and is otherwise implementation dependant.
+between them, and is otherwise implementation dependent.
 
 \begin{methoddesc}[AU_read]{setpos}{pos}
 Set the file pointer to the specified position.
diff --git a/Doc/lib/libsymbol.tex b/Doc/lib/libsymbol.tex
index 9b27277..f963b53 100644
--- a/Doc/lib/libsymbol.tex
+++ b/Doc/lib/libsymbol.tex
@@ -9,7 +9,7 @@
 This module provides constants which represent the numeric values of
 internal nodes of the parse tree.  Unlike most Python constants, these
 use lower-case names.  Refer to the file \file{Grammar/Grammar} in the
-Python distribution for the defintions of the names in the context of
+Python distribution for the definitions of the names in the context of
 the language grammar.  The specific numeric values which the names map
 to may change between Python versions.
 
diff --git a/Doc/lib/libtelnetlib.tex b/Doc/lib/libtelnetlib.tex
index 64c5099..50d0c53 100644
--- a/Doc/lib/libtelnetlib.tex
+++ b/Doc/lib/libtelnetlib.tex
@@ -140,7 +140,7 @@
 The first argument is a list of regular expressions, either
 compiled (\class{re.RegexObject} instances) or uncompiled (strings).
 The optional second argument is a timeout, in seconds; the default
-is to block indefinately.
+is to block indefinitely.
 
 Return a tuple of three items: the index in the list of the
 first regular expression that matches; the match object
@@ -153,7 +153,7 @@
 
 If a regular expression ends with a greedy match (e.g. \regexp{.*})
 or if more than one expression can match the same input, the
-results are undeterministic, and may depend on the I/O timing.
+results are indeterministic, and may depend on the I/O timing.
 \end{methoddesc}
 
 
diff --git a/Doc/lib/libtempfile.tex b/Doc/lib/libtempfile.tex
index b3e528b..e752ba4 100644
--- a/Doc/lib/libtempfile.tex
+++ b/Doc/lib/libtempfile.tex
@@ -26,7 +26,7 @@
                                 bufsize\optional{, suffix}}}}
 Return a file (or file-like) object that can be used as a temporary
 storage area.  The file is created in the most secure manner available
-in the appporpriate temporary directory for the host platform.  Under
+in the appropriate temporary directory for the host platform.  Under
 \UNIX, the directory entry to the file is removed so that it is secure
 against attacks which involve creating symbolic links to the file or
 replacing the file with a symbolic link to some other file.  For other
diff --git a/Doc/lib/libtime.tex b/Doc/lib/libtime.tex
index 7226b6c..b343c95 100644
--- a/Doc/lib/libtime.tex
+++ b/Doc/lib/libtime.tex
@@ -86,7 +86,7 @@
   \lineiii{3}{hour}{range [0,23]}
   \lineiii{4}{minute}{range [0,59]}
   \lineiii{5}{second}{range [0,61]; see \strong{(1)} in \function{strftime()} description}
-  \lineiii{6}{weekday}{range [0,6], monday is 0}
+  \lineiii{6}{weekday}{range [0,6], Monday is 0}
   \lineiii{7}{Julian day}{range [1,366]}
   \lineiii{8}{daylight savings flag}{0, 1 or -1; see below}
 \end{tableiii}
@@ -125,7 +125,7 @@
 
 \begin{funcdesc}{clock}{}
 Return the current CPU time as a floating point number expressed in
-seconds.  The precision, and in fact the very definiton of the meaning
+seconds.  The precision, and in fact the very definition of the meaning
 of ``CPU time''\index{CPU time}, depends on that of the C function
 of the same name, but in any case, this is the function to use for
 benchmarking\index{benchmarking} Python or timing algorithms.
diff --git a/Doc/lib/libtoken.tex b/Doc/lib/libtoken.tex
index 4215106..a15a78c 100644
--- a/Doc/lib/libtoken.tex
+++ b/Doc/lib/libtoken.tex
@@ -8,7 +8,7 @@
 
 This module provides constants which represent the numeric values of
 leaf nodes of the parse tree (terminal tokens).  Refer to the file
-\file{Grammar/Grammar} in the Python distribution for the defintions
+\file{Grammar/Grammar} in the Python distribution for the definitions
 of the names in the context of the language grammar.  The specific
 numeric values which the names map to may change between Python
 versions.
diff --git a/Doc/lib/libtraceback.tex b/Doc/lib/libtraceback.tex
index 20dc019..a9a3ffe 100644
--- a/Doc/lib/libtraceback.tex
+++ b/Doc/lib/libtraceback.tex
@@ -104,7 +104,7 @@
 have the same meaning as the corresponding arguments to
 \function{print_exception()}.  The return value is a list of strings,
 each ending in a newline and some containing internal newlines.  When
-these lines are contatenated and printed, exactly the same text is
+these lines are concatenated and printed, exactly the same text is
 printed as does \function{print_exception()}.
 \end{funcdesc}
 
diff --git a/Doc/lib/libundoc.tex b/Doc/lib/libundoc.tex
index 28be620..79977bd 100644
--- a/Doc/lib/libundoc.tex
+++ b/Doc/lib/libundoc.tex
@@ -134,7 +134,7 @@
 
 \item[\module{lockfile}]
 --- wrapper around FCNTL file locking (use
-\function{fcntl.lockf()}/\function{flock()} intead; see \refmodule{fcntl})
+\function{fcntl.lockf()}/\function{flock()} instead; see \refmodule{fcntl})
 
 \item[\module{newdir}]
 --- New \function{dir()} function (the standard \function{dir()} is
diff --git a/Doc/lib/liburllib.tex b/Doc/lib/liburllib.tex
index c781ebc..1056431 100644
--- a/Doc/lib/liburllib.tex
+++ b/Doc/lib/liburllib.tex
@@ -261,7 +261,7 @@
 \sectionauthor{Skip Montanaro}{skip@mojam.com}
 
 \class{URLopener} and \class{FancyURLopener} objects have the
-following methodsL
+following methods.
 
 \begin{methoddesc}{open}{fullurl\optional{, data}}
 Open \var{fullurl} using the appropriate protocol.  This method sets 
diff --git a/Doc/lib/liburlparse.tex b/Doc/lib/liburlparse.tex
index 60c83cc..05a7460 100644
--- a/Doc/lib/liburlparse.tex
+++ b/Doc/lib/liburlparse.tex
@@ -12,7 +12,7 @@
 
 
 This module defines a standard interface to break URL strings up in
-components (addessing scheme, network location, path etc.), to combine
+components (addressing scheme, network location, path etc.), to combine
 the components back into a URL string, and to convert a ``relative
 URL'' to an absolute URL given a ``base URL.''
 
diff --git a/Doc/lib/libuser.tex b/Doc/lib/libuser.tex
index cd460ea..4a79a54 100644
--- a/Doc/lib/libuser.tex
+++ b/Doc/lib/libuser.tex
@@ -23,7 +23,7 @@
 \end{verbatim}
 
 The \module{user} module looks for a file \file{.pythonrc.py} in the user's
-home directory and if it can be opened, exececutes it (using
+home directory and if it can be opened, executes it (using
 \function{execfile()}\bifuncindex{execfile}) in its own (i.e. the
 module \module{user}'s) global namespace.  Errors during this phase
 are not caught; that's up to the program that imports the
diff --git a/Doc/lib/libuserdict.tex b/Doc/lib/libuserdict.tex
index f859a27..51b7f55 100644
--- a/Doc/lib/libuserdict.tex
+++ b/Doc/lib/libuserdict.tex
@@ -8,11 +8,11 @@
 dictionary objects.  It is a useful base class for
 your own dictionary-like classes, which can inherit from
 them and override existing methods or add new ones.  In this way one
-can add new behaviours to dictionaries.
+can add new behaviors to dictionaries.
 
 The \module{UserDict} module defines the \class{UserDict} class:
 
-\begin{classdesc}{UserDict}{\optional{intialdata}}
+\begin{classdesc}{UserDict}{\optional{initialdata}}
 Return a class instance that simulates a dictionary.  The instance's
 contents are kept in a regular dictionary, which is accessible via the
 \member{data} attribute of \class{UserDict} instances.  If
@@ -42,7 +42,7 @@
 list objects.  It is a useful base class for
 your own list-like classes, which can inherit from
 them and override existing methods or add new ones.  In this way one
-can add new behaviours to lists.
+can add new behaviors to lists.
 
 The \module{UserList} module defines the \class{UserList} class:
 
@@ -77,7 +77,7 @@
 string objects.  It is a useful base class for
 your own string-like classes, which can inherit from
 them and override existing methods or add new ones.  In this way one
-can add new behaviours to strings.
+can add new behaviors to strings.
 
 The \module{UserString} module defines the \class{UserString} class:
 
@@ -109,5 +109,5 @@
 example for inheritance and necessity to remove (override) the
 \function{__hash__} method in order to trap attempts to use a
 mutable object as dictionary key, which would be otherwise very
-errorprone and hard to track down.
+error prone and hard to track down.
 \end{classdesc}
diff --git a/Doc/lib/libwave.tex b/Doc/lib/libwave.tex
index cac09d3..7c3c464 100644
--- a/Doc/lib/libwave.tex
+++ b/Doc/lib/libwave.tex
@@ -102,7 +102,7 @@
 \end{methoddesc}
 
 The following two methods define a term ``position'' which is compatible
-between them, and is otherwise implementation dependant.
+between them, and is otherwise implementation dependent.
 
 \begin{methoddesc}[Wave_read]{setpos}{pos}
 Set the file pointer to the specified position.
diff --git a/Doc/lib/libwinsound.tex b/Doc/lib/libwinsound.tex
index 153088d..e87c2c3 100644
--- a/Doc/lib/libwinsound.tex
+++ b/Doc/lib/libwinsound.tex
@@ -53,7 +53,7 @@
   image of a WAV file.
 
   \strong{Note:}  This module does not support playing from a memory
-  image asynchonously, so a combination of this flag and
+  image asynchronously, so a combination of this flag and
   \constant{SND_ASYNC} will raise a \exception{RuntimeError}.
 \end{datadesc}
 
diff --git a/Doc/lib/libxmllib.tex b/Doc/lib/libxmllib.tex
index 5d67fad..378a3cf8 100644
--- a/Doc/lib/libxmllib.tex
+++ b/Doc/lib/libxmllib.tex
@@ -197,7 +197,7 @@
 This method is called when a syntax error is encountered.  The
 \var{message} is a description of what was wrong.  The default method 
 raises a \exception{RuntimeError} exception.  If this method is
-overridden, it is permissable for it to return.  This method is only
+overridden, it is permissible for it to return.  This method is only
 called when the error can be recovered from.  Unrecoverable errors
 raise a \exception{RuntimeError} without first calling
 \method{syntax_error()}.