bpo-35054: Add more index entries for symbols. (GH-10064)
diff --git a/Doc/library/configparser.rst b/Doc/library/configparser.rst
index 47d6172..fcca97a 100644
--- a/Doc/library/configparser.rst
+++ b/Doc/library/configparser.rst
@@ -295,6 +295,8 @@
interpolation. This means values can be preprocessed before returning them
from ``get()`` calls.
+.. index:: single: %; interpolation in configuration files
+
.. class:: BasicInterpolation()
The default implementation used by :class:`ConfigParser`. It enables
@@ -323,6 +325,8 @@
``%(my_dir)s/Pictures`` as the value of ``my_pictures`` and
``%(home_dir)s/lumberjack`` as the value of ``my_dir``.
+.. index:: single: $; interpolation in configuration files
+
.. class:: ExtendedInterpolation()
An alternative handler for interpolation which implements a more advanced
diff --git a/Doc/library/constants.rst b/Doc/library/constants.rst
index a698ff8..5017159 100644
--- a/Doc/library/constants.rst
+++ b/Doc/library/constants.rst
@@ -51,9 +51,10 @@
See :exc:`NotImplementedError` for details on when to use it.
+.. index:: single: ...; ellipsis literal
.. data:: Ellipsis
- The same as the ellipsis literal "...". Special value used mostly in conjunction
+ The same as the ellipsis literal "``...``". Special value used mostly in conjunction
with extended slicing syntax for user-defined container data types.
diff --git a/Doc/library/datetime.rst b/Doc/library/datetime.rst
index 7a276b1..e7a0fdb 100644
--- a/Doc/library/datetime.rst
+++ b/Doc/library/datetime.rst
@@ -1999,6 +1999,9 @@
The UTC timezone, ``timezone(timedelta(0))``.
+.. index::
+ single: %; datetime format
+
.. _strftime-strptime-behavior:
:meth:`strftime` and :meth:`strptime` Behavior
diff --git a/Doc/library/doctest.rst b/Doc/library/doctest.rst
index bc5a404..9988429 100644
--- a/Doc/library/doctest.rst
+++ b/Doc/library/doctest.rst
@@ -321,6 +321,10 @@
NO!!!
>>>
+.. index::
+ single: >>>; interpreter prompt
+ single: ...; interpreter prompt
+
Any expected output must immediately follow the final ``'>>> '`` or ``'... '``
line containing the code, and the expected output (if any) extends to the next
``'>>> '`` or all-whitespace line.
@@ -481,6 +485,8 @@
to test a :exc:`SyntaxError` that omits the traceback header, you will need to
manually add the traceback header line to your test example.
+.. index:: single: ^; caret
+
* For some :exc:`SyntaxError`\ s, Python displays the character position of the
syntax error, using a ``^`` marker::
@@ -532,6 +538,7 @@
option will probably go away, but not for several years.
+.. index:: single: <BLANKLINE>
.. data:: DONT_ACCEPT_BLANKLINE
By default, if an expected output block contains a line containing only the
@@ -551,6 +558,7 @@
your source.
+.. index:: single: ...; in doctests
.. data:: ELLIPSIS
When specified, an ellipsis marker (``...``) in the expected output can match
@@ -686,6 +694,10 @@
MY_FLAG = register_optionflag('MY_FLAG')
+.. index::
+ single: #; in doctests
+ single: +; in doctests
+ single: -; in doctests
.. _doctest-directives:
Directives
diff --git a/Doc/library/gettext.rst b/Doc/library/gettext.rst
index 407853c..93748a2 100644
--- a/Doc/library/gettext.rst
+++ b/Doc/library/gettext.rst
@@ -61,6 +61,7 @@
*domain*, which is returned.
+.. index:: single: _; gettext
.. function:: gettext(message)
Return the localized translation of *message*, based on the current global
diff --git a/Doc/library/os.path.rst b/Doc/library/os.path.rst
index f68fe61..379308c 100644
--- a/Doc/library/os.path.rst
+++ b/Doc/library/os.path.rst
@@ -160,6 +160,8 @@
Accepts a :term:`path-like object`.
+.. index:: single: ~; home directory expansion
+
.. function:: expanduser(path)
On Unix and Windows, return the argument with an initial component of ``~`` or
@@ -183,6 +185,9 @@
.. versionchanged:: 3.6
Accepts a :term:`path-like object`.
+.. index::
+ single: $; environment variables expansion
+ single: %; environment variables expansion (Windows)
.. function:: expandvars(path)
diff --git a/Doc/library/os.rst b/Doc/library/os.rst
index 75d473c..b174b9d 100644
--- a/Doc/library/os.rst
+++ b/Doc/library/os.rst
@@ -4086,6 +4086,7 @@
Higher-level operations on pathnames are defined in the :mod:`os.path` module.
+.. index:: single: .; in pathnames
.. data:: curdir
The constant string used by the operating system to refer to the current
@@ -4093,6 +4094,7 @@
:mod:`os.path`.
+.. index:: single: ..; in pathnames
.. data:: pardir
The constant string used by the operating system to refer to the parent
@@ -4100,6 +4102,8 @@
:mod:`os.path`.
+.. index:: single: /; in pathnames
+.. index:: single: \; in pathnames (Windows)
.. data:: sep
The character used by the operating system to separate pathname components.
@@ -4109,6 +4113,7 @@
useful. Also available via :mod:`os.path`.
+.. index:: single: /; in pathnames
.. data:: altsep
An alternative character used by the operating system to separate pathname
@@ -4117,12 +4122,14 @@
:mod:`os.path`.
+.. index:: single: .; in pathnames
.. data:: extsep
The character which separates the base filename from the extension; for example,
the ``'.'`` in :file:`os.py`. Also available via :mod:`os.path`.
+.. index:: single: :; path separator (POSIX)
.. data:: pathsep
The character conventionally used by the operating system to separate search
diff --git a/Doc/library/re.rst b/Doc/library/re.rst
index 67f8570..57d7402 100644
--- a/Doc/library/re.rst
+++ b/Doc/library/re.rst
@@ -93,15 +93,21 @@
The special characters are:
+.. index:: single: .; in regular expressions
+
``.``
(Dot.) In the default mode, this matches any character except a newline. If
the :const:`DOTALL` flag has been specified, this matches any character
including a newline.
+.. index:: single: ^; in regular expressions
+
``^``
(Caret.) Matches the start of the string, and in :const:`MULTILINE` mode also
matches immediately after each newline.
+.. index:: single: $; in regular expressions
+
``$``
Matches the end of the string or just before the newline at the end of the
string, and in :const:`MULTILINE` mode also matches before a newline. ``foo``
@@ -111,20 +117,31 @@
a single ``$`` in ``'foo\n'`` will find two (empty) matches: one just before
the newline, and one at the end of the string.
+.. index:: single: *; in regular expressions
+
``*``
Causes the resulting RE to match 0 or more repetitions of the preceding RE, as
many repetitions as are possible. ``ab*`` will match 'a', 'ab', or 'a' followed
by any number of 'b's.
+.. index:: single: +; in regular expressions
+
``+``
Causes the resulting RE to match 1 or more repetitions of the preceding RE.
``ab+`` will match 'a' followed by any non-zero number of 'b's; it will not
match just 'a'.
+.. index:: single: ?; in regular expressions
+
``?``
Causes the resulting RE to match 0 or 1 repetitions of the preceding RE.
``ab?`` will match either 'a' or 'ab'.
+.. index::
+ single: *?; in regular expressions
+ single: +?; in regular expressions
+ single: ??; in regular expressions
+
``*?``, ``+?``, ``??``
The ``'*'``, ``'+'``, and ``'?'`` qualifiers are all :dfn:`greedy`; they match
as much text as possible. Sometimes this behaviour isn't desired; if the RE
@@ -134,6 +151,10 @@
characters as possible will be matched. Using the RE ``<.*?>`` will match
only ``'<a>'``.
+.. index::
+ single: {; in regular expressions
+ single: }; in regular expressions
+
``{m}``
Specifies that exactly *m* copies of the previous RE should be matched; fewer
matches cause the entire RE not to match. For example, ``a{6}`` will match
@@ -155,6 +176,8 @@
6-character string ``'aaaaaa'``, ``a{3,5}`` will match 5 ``'a'`` characters,
while ``a{3,5}?`` will only match 3 characters.
+.. index:: single: \; in regular expressions
+
``\``
Either escapes special characters (permitting you to match characters like
``'*'``, ``'?'``, and so forth), or signals a special sequence; special
@@ -168,12 +191,18 @@
is complicated and hard to understand, so it's highly recommended that you use
raw strings for all but the simplest expressions.
+.. index::
+ single: [; in regular expressions
+ single: ]; in regular expressions
+
``[]``
Used to indicate a set of characters. In a set:
* Characters can be listed individually, e.g. ``[amk]`` will match ``'a'``,
``'m'``, or ``'k'``.
+ .. index:: single: -; in regular expressions
+
* Ranges of characters can be indicated by giving two characters and separating
them by a ``'-'``, for example ``[a-z]`` will match any lowercase ASCII letter,
``[0-5][0-9]`` will match all the two-digits numbers from ``00`` to ``59``, and
@@ -185,10 +214,14 @@
``[(+*)]`` will match any of the literal characters ``'('``, ``'+'``,
``'*'``, or ``')'``.
+ .. index:: single: \; in regular expressions
+
* Character classes such as ``\w`` or ``\S`` (defined below) are also accepted
inside a set, although the characters they match depends on whether
:const:`ASCII` or :const:`LOCALE` mode is in force.
+ .. index:: single: ^; in regular expressions
+
* Characters that are not within a range can be matched by :dfn:`complementing`
the set. If the first character of the set is ``'^'``, all the characters
that are *not* in the set will be matched. For example, ``[^5]`` will match
@@ -200,6 +233,11 @@
place it at the beginning of the set. For example, both ``[()[\]{}]`` and
``[]()[{}]`` will both match a parenthesis.
+ .. .. index:: single: --; in regular expressions
+ .. .. index:: single: &&; in regular expressions
+ .. .. index:: single: ~~; in regular expressions
+ .. .. index:: single: ||; in regular expressions
+
* Support of nested sets and set operations as in `Unicode Technical
Standard #18`_ might be added in the future. This would change the
syntax, so to facilitate this change a :exc:`FutureWarning` will be raised
@@ -214,6 +252,8 @@
:exc:`FutureWarning` is raised if a character set contains constructs
that will change semantically in the future.
+.. index:: single: |; in regular expressions
+
``|``
``A|B``, where *A* and *B* can be arbitrary REs, creates a regular expression that
will match either *A* or *B*. An arbitrary number of REs can be separated by the
@@ -225,6 +265,10 @@
greedy. To match a literal ``'|'``, use ``\|``, or enclose it inside a
character class, as in ``[|]``.
+.. index::
+ single: (; in regular expressions
+ single: ); in regular expressions
+
``(...)``
Matches whatever regular expression is inside the parentheses, and indicates the
start and end of a group; the contents of a group can be retrieved after a match
@@ -232,6 +276,8 @@
special sequence, described below. To match the literals ``'('`` or ``')'``,
use ``\(`` or ``\)``, or enclose them inside a character class: ``[(]``, ``[)]``.
+.. index:: single: (?; in regular expressions
+
``(?...)``
This is an extension notation (a ``'?'`` following a ``'('`` is not meaningful
otherwise). The first character after the ``'?'`` determines what the meaning
@@ -253,6 +299,8 @@
:func:`re.compile` function. Flags should be used first in the
expression string.
+.. index:: single: (?:; in regular expressions
+
``(?:...)``
A non-capturing version of regular parentheses. Matches whatever regular
expression is inside the parentheses, but the substring matched by the group
@@ -285,6 +333,8 @@
.. versionchanged:: 3.7
The letters ``'a'``, ``'L'`` and ``'u'`` also can be used in a group.
+.. index:: single: (?P<; in regular expressions
+
``(?P<name>...)``
Similar to regular parentheses, but the substring matched by the group is
accessible via the symbolic group name *name*. Group names must be valid
@@ -310,10 +360,14 @@
| | * ``\1`` |
+---------------------------------------+----------------------------------+
+.. index:: single: (?P=; in regular expressions
+
``(?P=name)``
A backreference to a named group; it matches whatever text was matched by the
earlier group named *name*.
+.. index:: single: (?#; in regular expressions
+
``(?#...)``
A comment; the contents of the parentheses are simply ignored.
@@ -322,11 +376,15 @@
called a :dfn:`lookahead assertion`. For example, ``Isaac (?=Asimov)`` will match
``'Isaac '`` only if it's followed by ``'Asimov'``.
+.. index:: single: (?!; in regular expressions
+
``(?!...)``
Matches if ``...`` doesn't match next. This is a :dfn:`negative lookahead assertion`.
For example, ``Isaac (?!Asimov)`` will match ``'Isaac '`` only if it's *not*
followed by ``'Asimov'``.
+.. index:: single: (?<=; in regular expressions
+
``(?<=...)``
Matches if the current position in the string is preceded by a match for ``...``
that ends at the current position. This is called a :dfn:`positive lookbehind
@@ -352,6 +410,8 @@
.. versionchanged:: 3.5
Added support for group references of fixed length.
+.. index:: single: (?<!; in regular expressions
+
``(?<!...)``
Matches if the current position in the string is not preceded by a match for
``...``. This is called a :dfn:`negative lookbehind assertion`. Similar to
@@ -373,6 +433,8 @@
resulting RE will match the second character. For example, ``\$`` matches the
character ``'$'``.
+.. index:: single: \; in regular expressions
+
``\number``
Matches the contents of the group of the same number. Groups are numbered
starting from 1. For example, ``(.+) \1`` matches ``'the the'`` or ``'55 55'``,
@@ -383,9 +445,13 @@
``'['`` and ``']'`` of a character class, all numeric escapes are treated as
characters.
+.. index:: single: \A; in regular expressions
+
``\A``
Matches only at the start of the string.
+.. index:: single: \b; in regular expressions
+
``\b``
Matches the empty string, but only at the beginning or end of a word.
A word is defined as a sequence of word characters. Note that formally,
@@ -400,6 +466,8 @@
Inside a character range, ``\b`` represents the backspace character, for
compatibility with Python's string literals.
+.. index:: single: \B; in regular expressions
+
``\B``
Matches the empty string, but only when it is *not* at the beginning or end
of a word. This means that ``r'py\B'`` matches ``'python'``, ``'py3'``,
@@ -409,6 +477,8 @@
be changed by using the :const:`ASCII` flag. Word boundaries are
determined by the current locale if the :const:`LOCALE` flag is used.
+.. index:: single: \d; in regular expressions
+
``\d``
For Unicode (str) patterns:
Matches any Unicode decimal digit (that is, any character in
@@ -419,11 +489,15 @@
For 8-bit (bytes) patterns:
Matches any decimal digit; this is equivalent to ``[0-9]``.
+.. index:: single: \D; in regular expressions
+
``\D``
Matches any character which is not a decimal digit. This is
the opposite of ``\d``. If the :const:`ASCII` flag is used this
becomes the equivalent of ``[^0-9]``.
+.. index:: single: \s; in regular expressions
+
``\s``
For Unicode (str) patterns:
Matches Unicode whitespace characters (which includes
@@ -436,11 +510,15 @@
Matches characters considered whitespace in the ASCII character set;
this is equivalent to ``[ \t\n\r\f\v]``.
+.. index:: single: \S; in regular expressions
+
``\S``
Matches any character which is not a whitespace character. This is
the opposite of ``\s``. If the :const:`ASCII` flag is used this
becomes the equivalent of ``[^ \t\n\r\f\v]``.
+.. index:: single: \w; in regular expressions
+
``\w``
For Unicode (str) patterns:
Matches Unicode word characters; this includes most characters
@@ -454,6 +532,8 @@
used, matches characters considered alphanumeric in the current locale
and the underscore.
+.. index:: single: \W; in regular expressions
+
``\W``
Matches any character which is not a word character. This is
the opposite of ``\w``. If the :const:`ASCII` flag is used this
@@ -461,9 +541,25 @@
used, matches characters considered alphanumeric in the current locale
and the underscore.
+.. index:: single: \Z; in regular expressions
+
``\Z``
Matches only at the end of the string.
+.. index::
+ single: \a; in regular expressions
+ single: \b; in regular expressions
+ single: \f; in regular expressions
+ single: \n; in regular expressions
+ single: \N; in regular expressions
+ single: \r; in regular expressions
+ single: \t; in regular expressions
+ single: \u; in regular expressions
+ single: \U; in regular expressions
+ single: \v; in regular expressions
+ single: \x; in regular expressions
+ single: \\; in regular expressions
+
Most of the standard escapes supported by Python string literals are also
accepted by the regular expression parser::
@@ -623,6 +719,8 @@
.. data:: X
VERBOSE
+ .. index:: single: #; in regular expressions
+
This flag allows you to write regular expressions that look nicer and are
more readable by allowing you to visually separate logical sections of the
pattern and add comments. Whitespace within the pattern is ignored, except
@@ -779,6 +877,8 @@
when not adjacent to a previous empty match, so ``sub('x*', '-', 'abxd')`` returns
``'-a-b--d-'``.
+ .. index:: single: \g; in regular expressions
+
In string-type *repl* arguments, in addition to the character escapes and
backreferences described above,
``\g<name>`` will use the substring matched by the group named ``name``, as
diff --git a/Doc/library/site.rst b/Doc/library/site.rst
index 5b5ed93..e6a2980 100644
--- a/Doc/library/site.rst
+++ b/Doc/library/site.rst
@@ -49,6 +49,10 @@
(case-insensitive), the system-level prefixes will still also be
searched for site-packages; otherwise they won't.
+.. index::
+ single: #; comment
+ statement: import
+
A path configuration file is a file whose name has the form :file:`{name}.pth`
and exists in one of the four directories mentioned above; its contents are
additional items (one per line) to be added to ``sys.path``. Non-existing items
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index 01fb5d5..381374c 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -246,8 +246,12 @@
builtin: int
builtin: float
builtin: complex
- operator: +
- operator: -
+ single: operator; +
+ single: +; unary operator
+ single: +; binary operator
+ single: operator; -
+ single: -; unary operator
+ single: -; binary operator
operator: *
operator: /
operator: //
@@ -2115,8 +2119,7 @@
single: string; interpolation, printf
single: printf-style formatting
single: sprintf-style formatting
- single: % formatting
- single: % interpolation
+ single: %; printf-style formatting
.. note::
@@ -2144,16 +2147,24 @@
#. The ``'%'`` character, which marks the start of the specifier.
+.. index::
+ single: (; in printf-style formatting
+ single: ); in printf-style formatting
+
#. Mapping key (optional), consisting of a parenthesised sequence of characters
(for example, ``(somename)``).
#. Conversion flags (optional), which affect the result of some conversion
types.
+.. index:: single: *; in printf-style formatting
+
#. Minimum field width (optional). If specified as an ``'*'`` (asterisk), the
actual width is read from the next element of the tuple in *values*, and the
object to convert comes after the minimum field width and optional precision.
+.. index:: single: .; in printf-style formatting
+
#. Precision (optional), given as a ``'.'`` (dot) followed by the precision. If
specified as ``'*'`` (an asterisk), the actual precision is read from the next
element of the tuple in *values*, and the value to convert comes after the
@@ -2177,6 +2188,12 @@
The conversion flag characters are:
+.. index::
+ single: #; in printf-style formatting
+ single: -; in printf-style formatting
+ single: +; in printf-style formatting
+ single: space; in printf-style formatting
+
+---------+---------------------------------------------------------------------+
| Flag | Meaning |
+=========+=====================================================================+
@@ -3229,18 +3246,17 @@
----------------------------------
.. index::
- single: formatting, bytes (%)
- single: formatting, bytearray (%)
- single: interpolation, bytes (%)
- single: interpolation, bytearray (%)
+ single: formatting; bytes (%)
+ single: formatting; bytearray (%)
+ single: interpolation; bytes (%)
+ single: interpolation; bytearray (%)
single: bytes; formatting
single: bytearray; formatting
single: bytes; interpolation
single: bytearray; interpolation
single: printf-style formatting
single: sprintf-style formatting
- single: % formatting
- single: % interpolation
+ single: %; printf-style formatting
.. note::
@@ -3266,16 +3282,24 @@
#. The ``'%'`` character, which marks the start of the specifier.
+.. index::
+ single: (; in printf-style formatting
+ single: ); in printf-style formatting
+
#. Mapping key (optional), consisting of a parenthesised sequence of characters
(for example, ``(somename)``).
#. Conversion flags (optional), which affect the result of some conversion
types.
+.. index:: single: *; in printf-style formatting
+
#. Minimum field width (optional). If specified as an ``'*'`` (asterisk), the
actual width is read from the next element of the tuple in *values*, and the
object to convert comes after the minimum field width and optional precision.
+.. index:: single: .; in printf-style formatting
+
#. Precision (optional), given as a ``'.'`` (dot) followed by the precision. If
specified as ``'*'`` (an asterisk), the actual precision is read from the next
element of the tuple in *values*, and the value to convert comes after the
@@ -3299,6 +3323,12 @@
The conversion flag characters are:
+.. index::
+ single: #; in printf-style formatting
+ single: -; in printf-style formatting
+ single: +; in printf-style formatting
+ single: space; in printf-style formatting
+
+---------+---------------------------------------------------------------------+
| Flag | Meaning |
+=========+=====================================================================+
@@ -4620,6 +4650,7 @@
It is written as ``None``.
+.. index:: single: ...; ellipsis literal
.. _bltin-ellipsis-object:
The Ellipsis Object
diff --git a/Doc/library/string.rst b/Doc/library/string.rst
index 0fec3df..55913f8 100644
--- a/Doc/library/string.rst
+++ b/Doc/library/string.rst
@@ -192,6 +192,15 @@
related to that of :ref:`formatted string literals <f-strings>`, but
there are differences.
+.. index::
+ single: {; in string formatting
+ single: }; in string formatting
+ single: .; in string formatting
+ single: [; in string formatting
+ single: ]; in string formatting
+ single: !; in string formatting
+ single: :; in string formatting
+
Format strings contain "replacement fields" surrounded by curly braces ``{}``.
Anything that is not contained in braces is considered literal text, which is
copied unchanged to the output. If you need to include a brace character in the
@@ -323,6 +332,12 @@
The meaning of the various alignment options is as follows:
+ .. index::
+ single: <; in string formatting
+ single: >; in string formatting
+ single: =; in string formatting
+ single: ^; in string formatting
+
+---------+----------------------------------------------------------+
| Option | Meaning |
+=========+==========================================================+
@@ -349,6 +364,11 @@
The *sign* option is only valid for number types, and can be one of the
following:
+ .. index::
+ single: +; in string formatting
+ single: -; in string formatting
+ single: space; in string formatting
+
+---------+----------------------------------------------------------+
| Option | Meaning |
+=========+==========================================================+
@@ -363,6 +383,8 @@
+---------+----------------------------------------------------------+
+.. index:: single: #; in string formatting
+
The ``'#'`` option causes the "alternate form" to be used for the
conversion. The alternate form is defined differently for different
types. This option is only valid for integer, float, complex and
@@ -375,6 +397,8 @@
only if a digit follows it. In addition, for ``'g'`` and ``'G'``
conversions, trailing zeros are not removed from the result.
+.. index:: single: ,; in string formatting
+
The ``','`` option signals the use of a comma for a thousands separator.
For a locale aware separator, use the ``'n'`` integer presentation type
instead.
@@ -382,6 +406,8 @@
.. versionchanged:: 3.1
Added the ``','`` option (see also :pep:`378`).
+.. index:: single: _; in string formatting
+
The ``'_'`` option signals the use of an underscore for a thousands
separator for floating point presentation types and for integer
presentation type ``'d'``. For integer presentation types ``'b'``,
@@ -668,6 +694,8 @@
strings for i18n, see the
`flufl.i18n <http://flufli18n.readthedocs.io/en/latest/>`_ package.
+.. index:: single: $; in template strings
+
Template strings support ``$``-based substitutions, using the following rules:
* ``$$`` is an escape; it is replaced with a single ``$``.
diff --git a/Doc/library/struct.rst b/Doc/library/struct.rst
index bad33ac..9ba4047 100644
--- a/Doc/library/struct.rst
+++ b/Doc/library/struct.rst
@@ -117,6 +117,13 @@
order, and properly aligned by skipping pad bytes if necessary (according to the
rules used by the C compiler).
+.. index::
+ single: @; in struct format strings
+ single: =; in struct format strings
+ single: <; in struct format strings
+ single: >; in struct format strings
+ single: !; in struct format strings
+
Alternatively, the first character of the format string can be used to indicate
the byte order, size and alignment of the packed data, according to the
following table:
diff --git a/Doc/library/sys.rst b/Doc/library/sys.rst
index 46d8db0..c7d2686 100644
--- a/Doc/library/sys.rst
+++ b/Doc/library/sys.rst
@@ -1064,6 +1064,8 @@
.. index::
single: interpreter prompts
single: prompts, interpreter
+ single: >>>; interpreter prompt
+ single: ...; interpreter prompt
Strings specifying the primary and secondary prompt of the interpreter. These
are only defined if the interpreter is in interactive mode. Their initial
diff --git a/Doc/library/time.rst b/Doc/library/time.rst
index 56f972c..d76e089 100644
--- a/Doc/library/time.rst
+++ b/Doc/library/time.rst
@@ -369,6 +369,9 @@
:pep:`475` for the rationale).
+.. index::
+ single: %; datetime format
+
.. function:: strftime(format[, t])
Convert a tuple or :class:`struct_time` representing a time as returned by
@@ -500,6 +503,9 @@
it is 3.
+.. index::
+ single: %; datetime format
+
.. function:: strptime(string[, format])
Parse a string representing a time according to a format. The return value
diff --git a/Doc/library/traceback.rst b/Doc/library/traceback.rst
index 7ac3cacd..a21ef8e 100644
--- a/Doc/library/traceback.rst
+++ b/Doc/library/traceback.rst
@@ -44,7 +44,11 @@
* if *tb* is not ``None``, it prints a header ``Traceback (most recent
call last):``
+
* it prints the exception *etype* and *value* after the stack trace
+
+ .. index:: single: ^; caret
+
* if *type(value)* is :exc:`SyntaxError` and *value* has the appropriate
format, it prints the line where the syntax error occurred with a caret
indicating the approximate position of the error.
diff --git a/Doc/library/urllib.request.rst b/Doc/library/urllib.request.rst
index cbbec0c..982f57f 100644
--- a/Doc/library/urllib.request.rst
+++ b/Doc/library/urllib.request.rst
@@ -297,7 +297,7 @@
Cause requests to go through a proxy. If *proxies* is given, it must be a
dictionary mapping protocol names to URLs of proxies. The default is to read
the list of proxies from the environment variables
- :envvar:`<protocol>_proxy`. If no proxy environment variables are set, then
+ ``<protocol>_proxy``. If no proxy environment variables are set, then
in a Windows environment proxy settings are obtained from the registry's
Internet Settings section, and in a Mac OS X environment proxy information
is retrieved from the OS X System Configuration Framework.
diff --git a/Doc/library/winreg.rst b/Doc/library/winreg.rst
index 14f7896..99be47f 100644
--- a/Doc/library/winreg.rst
+++ b/Doc/library/winreg.rst
@@ -224,6 +224,9 @@
See :ref:`above <exception-changed>`.
+.. index::
+ single: %; environment variables expansion (Windows)
+
.. function:: ExpandEnvironmentStrings(str)
Expands environment variable placeholders ``%NAME%`` in strings like