Remove duplication.
diff --git a/Doc/c-api/exceptions.rst b/Doc/c-api/exceptions.rst
index a001145..beedfbe 100644
--- a/Doc/c-api/exceptions.rst
+++ b/Doc/c-api/exceptions.rst
@@ -475,7 +475,7 @@
Marks a point where a recursive C-level call is about to be performed.
- If :const:`USE_STACKCHECK` is defined, this function checks if the the OS
+ If :const:`USE_STACKCHECK` is defined, this function checks if the OS
stack overflowed using :cfunc:`PyOS_CheckStack`. In this is the case, it
sets a :exc:`MemoryError` and returns a nonzero value.
diff --git a/Doc/distutils/apiref.rst b/Doc/distutils/apiref.rst
index eae9078..c394eee 100644
--- a/Doc/distutils/apiref.rst
+++ b/Doc/distutils/apiref.rst
@@ -1741,7 +1741,7 @@
Set final values for all the options that this command supports. This is
always called as late as possible, ie. after any option assignments from the
command-line or from other commands have been done. Thus, this is the place
- to to code option dependencies: if *foo* depends on *bar*, then it is safe to
+ to code option dependencies: if *foo* depends on *bar*, then it is safe to
set *foo* from *bar* as long as *foo* still has the same value it was
assigned in :meth:`initialize_options`.
diff --git a/Doc/howto/logging-cookbook.rst b/Doc/howto/logging-cookbook.rst
index ad9f666..b1f5c7c 100644
--- a/Doc/howto/logging-cookbook.rst
+++ b/Doc/howto/logging-cookbook.rst
@@ -679,6 +679,6 @@
``.1``. Each of the existing backup files is renamed to increment the suffix
(``.1`` becomes ``.2``, etc.) and the ``.6`` file is erased.
-Obviously this example sets the log length much much too small as an extreme
+Obviously this example sets the log length much too small as an extreme
example. You would want to set *maxBytes* to an appropriate value.
diff --git a/Doc/howto/pyporting.rst b/Doc/howto/pyporting.rst
index 124ef33..309f3f7 100644
--- a/Doc/howto/pyporting.rst
+++ b/Doc/howto/pyporting.rst
@@ -328,7 +328,7 @@
textual data, people have over the years been rather loose in their delineation
of what ``str`` instances held text compared to bytes. In Python 3 you cannot
be so care-free anymore and need to properly handle the difference. The key
-handling this issue to to make sure that **every** string literal in your
+handling this issue to make sure that **every** string literal in your
Python 2 code is either syntactically of functionally marked as either bytes or
text data. After this is done you then need to make sure your APIs are designed
to either handle a specific type or made to be properly polymorphic.
diff --git a/Doc/howto/webservers.rst b/Doc/howto/webservers.rst
index 03853f4..42cdff8 100644
--- a/Doc/howto/webservers.rst
+++ b/Doc/howto/webservers.rst
@@ -264,7 +264,7 @@
* `FastCGI, SCGI, and Apache: Background and Future
<http://www.vmunix.com/mark/blog/archives/2006/01/02/fastcgi-scgi-and-apache-background-and-future/>`_
- is a discussion on why the concept of FastCGI and SCGI is better that that
+ is a discussion on why the concept of FastCGI and SCGI is better than that
of mod_python.
diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst
index 90f7e3c..b315a73 100644
--- a/Doc/library/collections.rst
+++ b/Doc/library/collections.rst
@@ -188,7 +188,7 @@
* The multiset methods are designed only for use cases with positive values.
The inputs may be negative or zero, but only outputs with positive values
are created. There are no type restrictions, but the value type needs to
- support support addition, subtraction, and comparison.
+ support addition, subtraction, and comparison.
* The :meth:`elements` method requires integer counts. It ignores zero and
negative counts.
diff --git a/Doc/library/ctypes.rst b/Doc/library/ctypes.rst
index d94b04e..1a3e2f5 100644
--- a/Doc/library/ctypes.rst
+++ b/Doc/library/ctypes.rst
@@ -2000,7 +2000,7 @@
.. function:: string_at(address[, size])
- This function returns the string starting at memory address address. If size
+ This function returns the string starting at memory address *address*. If size
is specified, it is used as size, otherwise the string is assumed to be
zero-terminated.
diff --git a/Doc/library/email.message.rst b/Doc/library/email.message.rst
index a570d81..77ce99e 100644
--- a/Doc/library/email.message.rst
+++ b/Doc/library/email.message.rst
@@ -295,7 +295,7 @@
Content-Disposition: attachment; filename="bud.gif"
- An example with with non-ASCII characters::
+ An example with non-ASCII characters::
msg.add_header('Content-Disposition', 'attachment',
filename=('iso-8859-1', '', 'Fußballer.ppt'))
diff --git a/Doc/library/email.mime.rst b/Doc/library/email.mime.rst
index a092feb..78fdc76 100644
--- a/Doc/library/email.mime.rst
+++ b/Doc/library/email.mime.rst
@@ -196,6 +196,6 @@
.. versionchanged:: 2.4
The previously deprecated *_encoding* argument has been removed. Content
- Transfer Encoding now happens happens implicitly based on the *_charset*
+ Transfer Encoding now happens implicitly based on the *_charset*
argument.
diff --git a/Doc/library/httplib.rst b/Doc/library/httplib.rst
index fc26f24..58b1bb7 100644
--- a/Doc/library/httplib.rst
+++ b/Doc/library/httplib.rst
@@ -452,7 +452,7 @@
Set the host and the port for HTTP Connect Tunnelling. Normally used when
it is required to do HTTPS Conection through a proxy server.
- The headers argument should be a mapping of extra HTTP headers to to sent
+ The headers argument should be a mapping of extra HTTP headers to sent
with the CONNECT request.
.. versionadded:: 2.7
diff --git a/Doc/library/mailbox.rst b/Doc/library/mailbox.rst
index 92f37cb..d51f340 100644
--- a/Doc/library/mailbox.rst
+++ b/Doc/library/mailbox.rst
@@ -765,7 +765,7 @@
There is no requirement that :class:`Message` instances be used to represent
messages retrieved using :class:`Mailbox` instances. In some situations, the
time and memory required to generate :class:`Message` representations might
- not not acceptable. For such situations, :class:`Mailbox` instances also
+ not be acceptable. For such situations, :class:`Mailbox` instances also
offer string and file-like representations, and a custom message factory may
be specified when a :class:`Mailbox` instance is initialized.
diff --git a/Doc/library/multiprocessing.rst b/Doc/library/multiprocessing.rst
index 30c4b10..c0c0ae8 100644
--- a/Doc/library/multiprocessing.rst
+++ b/Doc/library/multiprocessing.rst
@@ -1494,7 +1494,7 @@
a new shared object -- see documentation for the *method_to_typeid*
argument of :meth:`BaseManager.register`.
- If an exception is raised by the call, then then is re-raised by
+ If an exception is raised by the call, then is re-raised by
:meth:`_callmethod`. If some other exception is raised in the manager's
process then this is converted into a :exc:`RemoteError` exception and is
raised by :meth:`_callmethod`.
@@ -1617,7 +1617,7 @@
The *chunksize* argument is the same as the one used by the :meth:`.map`
method. For very long iterables using a large value for *chunksize* can
- make make the job complete **much** faster than using the default value of
+ make the job complete **much** faster than using the default value of
``1``.
Also if *chunksize* is ``1`` then the :meth:`!next` method of the iterator
diff --git a/Doc/library/sqlite3.rst b/Doc/library/sqlite3.rst
index 3ef108c..50a036f 100644
--- a/Doc/library/sqlite3.rst
+++ b/Doc/library/sqlite3.rst
@@ -240,7 +240,7 @@
.. method:: Connection.commit()
This method commits the current transaction. If you don't call this method,
- anything you did since the last call to ``commit()`` is not visible from from
+ anything you did since the last call to ``commit()`` is not visible from
other database connections. If you wonder why you don't see the data you've
written to the database, please check you didn't forget to call this method.
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index 30faddb..26f200d 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -1311,7 +1311,7 @@
Return ``True`` if there are only decimal characters in S, ``False``
otherwise. Decimal characters include digit characters, and all characters
- that that can be used to form decimal-radix numbers, e.g. U+0660,
+ that can be used to form decimal-radix numbers, e.g. U+0660,
ARABIC-INDIC DIGIT ZERO.
diff --git a/Doc/library/string.rst b/Doc/library/string.rst
index 20fcae9..67547ad 100644
--- a/Doc/library/string.rst
+++ b/Doc/library/string.rst
@@ -243,7 +243,7 @@
See also the :ref:`formatspec` section.
-The *field_name* itself begins with an *arg_name* that is either either a number or a
+The *field_name* itself begins with an *arg_name* that is either a number or a
keyword. If it's a number, it refers to a positional argument, and if it's a keyword,
it refers to a named keyword argument. If the numerical arg_names in a format string
are 0, 1, 2, ... in sequence, they can all be omitted (not just some)
diff --git a/Doc/library/ttk.rst b/Doc/library/ttk.rst
index ebfdede..6e8ff89 100644
--- a/Doc/library/ttk.rst
+++ b/Doc/library/ttk.rst
@@ -1243,7 +1243,7 @@
*layoutspec*, if specified, is expected to be a list or some other
sequence type (excluding strings), where each item should be a tuple and
the first item is the layout name and the second item should have the
- format described described in `Layouts`_.
+ format described in `Layouts`_.
To understand the format, see the following example (it is not
intended to do anything useful)::
diff --git a/Doc/reference/compound_stmts.rst b/Doc/reference/compound_stmts.rst
index 7015a7f..c99b65a 100644
--- a/Doc/reference/compound_stmts.rst
+++ b/Doc/reference/compound_stmts.rst
@@ -470,7 +470,7 @@
**Default parameter values are evaluated when the function definition is
executed.** This means that the expression is evaluated once, when the function
-is defined, and that that same "pre-computed" value is used for each call. This
+is defined, and that the same "pre-computed" value is used for each call. This
is especially important to understand when a default parameter is a mutable
object, such as a list or a dictionary: if the function modifies the object
(e.g. by appending an item to a list), the default value is in effect modified.
diff --git a/Doc/whatsnew/2.4.rst b/Doc/whatsnew/2.4.rst
index fadde50..a602f75 100644
--- a/Doc/whatsnew/2.4.rst
+++ b/Doc/whatsnew/2.4.rst
@@ -947,7 +947,7 @@
:meth:`__len__` method. (Contributed by Raymond Hettinger.)
* The methods :meth:`list.__getitem__`, :meth:`dict.__getitem__`, and
- :meth:`dict.__contains__` are are now implemented as :class:`method_descriptor`
+ :meth:`dict.__contains__` are now implemented as :class:`method_descriptor`
objects rather than :class:`wrapper_descriptor` objects. This form of access
doubles their performance and makes them more suitable for use as arguments to
functionals: ``map(mydict.__getitem__, keylist)``. (Contributed by Raymond