Correct “an” → “a” with “Unicode”, “user”, “UTF”, etc
This affects documentation and code comments.
diff --git a/Doc/c-api/unicode.rst b/Doc/c-api/unicode.rst
index 13a2807..3262354 100644
--- a/Doc/c-api/unicode.rst
+++ b/Doc/c-api/unicode.rst
@@ -234,7 +234,7 @@
.. c:function:: PyObject *PyUnicode_FromString(const char *u)
- Create a Unicode object from an UTF-8 encoded null-terminated char buffer
+ Create a Unicode object from a UTF-8 encoded null-terminated char buffer
*u*.
.. versionadded:: 2.6
@@ -347,7 +347,7 @@
.. c:function:: PyObject* PyUnicode_FromEncodedObject(PyObject *obj, const char *encoding, const char *errors)
- Coerce an encoded object *obj* to an Unicode object and return a reference with
+ Coerce an encoded object *obj* to a Unicode object and return a reference with
incremented refcount.
String and other char buffer compatible objects are decoded according to the
@@ -663,7 +663,7 @@
If *Py_UNICODE_WIDE* is defined, a single :c:type:`Py_UNICODE` value may get
represented as a surrogate pair. If it is not defined, each :c:type:`Py_UNICODE`
- values is interpreted as an UCS-2 character.
+ values is interpreted as a UCS-2 character.
Return *NULL* if an exception was raised by the codec.
diff --git a/Doc/howto/urllib2.rst b/Doc/howto/urllib2.rst
index 30763a2..42e84d3 100644
--- a/Doc/howto/urllib2.rst
+++ b/Doc/howto/urllib2.rst
@@ -55,7 +55,7 @@
html = response.read()
Many uses of urllib2 will be that simple (note that instead of an 'http:' URL we
-could have used an URL starting with 'ftp:', 'file:', etc.). However, it's the
+could have used a URL starting with 'ftp:', 'file:', etc.). However, it's the
purpose of this tutorial to explain the more complicated cases, concentrating on
HTTP.
diff --git a/Doc/library/ctypes.rst b/Doc/library/ctypes.rst
index 3687f86..e58d954 100644
--- a/Doc/library/ctypes.rst
+++ b/Doc/library/ctypes.rst
@@ -1873,7 +1873,7 @@
allows specifying the size of the array if the length of the string should not
be used.
- If the first parameter is a 8-bit string, it is converted into an unicode string
+ If the first parameter is a 8-bit string, it is converted into a unicode string
according to ctypes conversion rules.
diff --git a/Doc/library/heapq.rst b/Doc/library/heapq.rst
index 16b2fd5..3dce037 100644
--- a/Doc/library/heapq.rst
+++ b/Doc/library/heapq.rst
@@ -244,7 +244,7 @@
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
-In the tree above, each cell *k* is topping ``2*k+1`` and ``2*k+2``. In an usual
+In the tree above, each cell *k* is topping ``2*k+1`` and ``2*k+2``. In a usual
binary tournament we see in sports, each cell is the winner over the two cells
it tops, and we can trace the winner down the tree to see all opponents s/he
had. However, in many computer applications of such tournaments, we do not need
diff --git a/Doc/library/ic.rst b/Doc/library/ic.rst
index ab40e7a..5067084 100644
--- a/Doc/library/ic.rst
+++ b/Doc/library/ic.rst
@@ -83,7 +83,7 @@
.. method:: IC.parseurl(data[, start[, end[, hint]]])
- Find an URL somewhere in *data* and return start position, end position and the
+ Find a URL somewhere in *data* and return start position, end position and the
URL. The optional *start* and *end* can be used to limit the search, so for
instance if a user clicks in a long text field you can pass the whole text field
and the click-position in *start* and this routine will return the whole URL in
diff --git a/Doc/library/io.rst b/Doc/library/io.rst
index 6743b27..3d28e63 100644
--- a/Doc/library/io.rst
+++ b/Doc/library/io.rst
@@ -661,7 +661,7 @@
.. class:: TextIOBase
- Base class for text streams. This class provides an unicode character
+ Base class for text streams. This class provides a unicode character
and line based interface to stream I/O. There is no :meth:`readinto`
method because Python's :class:`unicode` strings are immutable.
It inherits :class:`IOBase`. There is no public constructor.
diff --git a/Doc/library/logging.handlers.rst b/Doc/library/logging.handlers.rst
index 6731abc..3690d86 100644
--- a/Doc/library/logging.handlers.rst
+++ b/Doc/library/logging.handlers.rst
@@ -743,7 +743,7 @@
.. method:: emit(record)
- Sends the record to the Web server as an URL-encoded dictionary. The
+ Sends the record to the Web server as a URL-encoded dictionary. The
:meth:`mapLogRecord` method is used to convert the record to the
dictionary to be sent.
diff --git a/Doc/library/ttk.rst b/Doc/library/ttk.rst
index 051601d..bf15e71 100644
--- a/Doc/library/ttk.rst
+++ b/Doc/library/ttk.rst
@@ -686,7 +686,7 @@
headings. Columns may be accessed by number or symbolic names listed in the
widget option columns. See `Column Identifiers`_.
-Each item is identified by an unique name. The widget will generate item IDs
+Each item is identified by a unique name. The widget will generate item IDs
if they are not supplied by the caller. There is a distinguished root item,
named ``{}``. The root item itself is not displayed; its children appear at the
top level of the hierarchy.
diff --git a/Doc/library/webbrowser.rst b/Doc/library/webbrowser.rst
index 64e7099..f74b89f 100644
--- a/Doc/library/webbrowser.rst
+++ b/Doc/library/webbrowser.rst
@@ -33,7 +33,7 @@
browser and wait.
The script :program:`webbrowser` can be used as a command-line interface for the
-module. It accepts an URL as the argument. It accepts the following optional
+module. It accepts a URL as the argument. It accepts the following optional
parameters: ``-n`` opens the URL in a new browser window, if possible;
``-t`` opens the URL in a new browser page ("tab"). The options are,
naturally, mutually exclusive. Usage example::
diff --git a/Doc/library/xml.etree.elementtree.rst b/Doc/library/xml.etree.elementtree.rst
index 212a9e1..b588598 100644
--- a/Doc/library/xml.etree.elementtree.rst
+++ b/Doc/library/xml.etree.elementtree.rst
@@ -901,7 +901,7 @@
to get proper namespace handling on output. *text_or_uri* is a string
containing the QName value, in the form {uri}local, or, if the tag argument
is given, the URI part of a QName. If *tag* is given, the first argument is
- interpreted as an URI, and this argument is interpreted as a local name.
+ interpreted as a URI, and this argument is interpreted as a local name.
:class:`QName` instances are opaque.
diff --git a/Doc/library/xml.sax.reader.rst b/Doc/library/xml.sax.reader.rst
index 6956cd1..7270153 100644
--- a/Doc/library/xml.sax.reader.rst
+++ b/Doc/library/xml.sax.reader.rst
@@ -101,7 +101,7 @@
Process an input source, producing SAX events. The *source* object can be a
system identifier (a string identifying the input source -- typically a file
- name or an URL), a file-like object, or an :class:`InputSource` object. When
+ name or a URL), a file-like object, or an :class:`InputSource` object. When
:meth:`parse` returns, the input is completely processed, and the parser object
can be discarded or reset. As a limitation, the current implementation only
accepts byte streams; processing of character streams is for further study.
diff --git a/Doc/library/xmlrpclib.rst b/Doc/library/xmlrpclib.rst
index 627a282..60fe579 100644
--- a/Doc/library/xmlrpclib.rst
+++ b/Doc/library/xmlrpclib.rst
@@ -434,11 +434,11 @@
error.
In the following example we're going to intentionally cause a :exc:`ProtocolError`
-by providing an URI that doesn't point to an XMLRPC server::
+by providing a URI that doesn't point to an XMLRPC server::
import xmlrpclib
- # create a ServerProxy with an URI that doesn't respond to XMLRPC requests
+ # create a ServerProxy with a URI that doesn't respond to XMLRPC requests
proxy = xmlrpclib.ServerProxy("http://www.google.com/")
try: