summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Turner <9087854+AA-Turner@users.noreply.github.com>2023-05-04 08:17:12 (GMT)
committerGitHub <noreply@github.com>2023-05-04 08:17:12 (GMT)
commitd0122372f2acb4cc56b89ab8c577ff9039d17d89 (patch)
treef50db57b34be236de4b6c7a829897d932468fbaf
parentcd9a56c2b0e14f56f2e83dd4db43c5c69a74b232 (diff)
downloadcpython-d0122372f2acb4cc56b89ab8c577ff9039d17d89.zip
cpython-d0122372f2acb4cc56b89ab8c577ff9039d17d89.tar.gz
cpython-d0122372f2acb4cc56b89ab8c577ff9039d17d89.tar.bz2
GH-97950: Use new-style index directive ('module') (#103996)
* Use new-style index directive ('module') - C API * Use new-style index directive ('module') - Library * Use new-style index directive ('module') - Reference * Use new-style index directive ('module') - Tutorial * Uncomment module removal in pairindextypes * Use new-style index directive ('module') - C API * Use new-style index directive ('module') - Library * Use new-style index directive ('module') - Reference
-rw-r--r--Doc/c-api/exceptions.rst6
-rw-r--r--Doc/c-api/init.rst14
-rw-r--r--Doc/c-api/intro.rst6
-rw-r--r--Doc/library/_thread.rst2
-rw-r--r--Doc/library/binascii.rst4
-rw-r--r--Doc/library/cmath.rst2
-rw-r--r--Doc/library/copy.rst2
-rw-r--r--Doc/library/copyreg.rst4
-rw-r--r--Doc/library/exceptions.rst2
-rw-r--r--Doc/library/fnmatch.rst4
-rw-r--r--Doc/library/functions.rst4
-rw-r--r--Doc/library/http.client.rst2
-rw-r--r--Doc/library/internet.rst2
-rw-r--r--Doc/library/locale.rst4
-rw-r--r--Doc/library/marshal.rst4
-rw-r--r--Doc/library/os.path.rst2
-rw-r--r--Doc/library/os.rst4
-rw-r--r--Doc/library/pdb.rst4
-rw-r--r--Doc/library/posix.rst2
-rw-r--r--Doc/library/pwd.rst2
-rw-r--r--Doc/library/pyexpat.rst2
-rw-r--r--Doc/library/runpy.rst4
-rw-r--r--Doc/library/shelve.rst6
-rw-r--r--Doc/library/site.rst4
-rw-r--r--Doc/library/socket.rst2
-rw-r--r--Doc/library/stdtypes.rst8
-rw-r--r--Doc/reference/compound_stmts.rst2
-rw-r--r--Doc/reference/datamodel.rst8
-rw-r--r--Doc/reference/executionmodel.rst2
-rw-r--r--Doc/reference/toplevel_components.rst8
-rw-r--r--Doc/tools/extensions/pyspecific.py6
-rw-r--r--Doc/tutorial/inputoutput.rst2
-rw-r--r--Doc/tutorial/modules.rst4
33 files changed, 65 insertions, 69 deletions
diff --git a/Doc/c-api/exceptions.rst b/Doc/c-api/exceptions.rst
index 49d2f18..4ed96f0 100644
--- a/Doc/c-api/exceptions.rst
+++ b/Doc/c-api/exceptions.rst
@@ -602,7 +602,7 @@ Signal Handling
.. c:function:: int PyErr_CheckSignals()
.. index::
- module: signal
+ pair: module; signal
single: SIGINT
single: KeyboardInterrupt (built-in exception)
@@ -633,7 +633,7 @@ Signal Handling
.. c:function:: void PyErr_SetInterrupt()
.. index::
- module: signal
+ pair: module; signal
single: SIGINT
single: KeyboardInterrupt (built-in exception)
@@ -648,7 +648,7 @@ Signal Handling
.. c:function:: int PyErr_SetInterruptEx(int signum)
.. index::
- module: signal
+ pair: module; signal
single: KeyboardInterrupt (built-in exception)
Simulate the effect of a signal arriving. The next time
diff --git a/Doc/c-api/init.rst b/Doc/c-api/init.rst
index 38e324f..2676296 100644
--- a/Doc/c-api/init.rst
+++ b/Doc/c-api/init.rst
@@ -336,9 +336,9 @@ Initializing and finalizing the interpreter
single: PyEval_InitThreads()
single: modules (in module sys)
single: path (in module sys)
- module: builtins
- module: __main__
- module: sys
+ pair: module; builtins
+ pair: module; __main__
+ pair: module; sys
triple: module; search; path
single: PySys_SetArgv()
single: PySys_SetArgvEx()
@@ -1051,7 +1051,7 @@ code, or when embedding the Python interpreter:
.. deprecated:: 3.9
- .. index:: module: _thread
+ .. index:: pair: module; _thread
.. c:function:: int PyEval_ThreadsInitialized()
@@ -1494,9 +1494,9 @@ function. You can create and destroy them using the following functions:
.. c:function:: PyThreadState* Py_NewInterpreter()
.. index::
- module: builtins
- module: __main__
- module: sys
+ pair: module; builtins
+ pair: module; __main__
+ pair: module; sys
single: stdout (in module sys)
single: stderr (in module sys)
single: stdin (in module sys)
diff --git a/Doc/c-api/intro.rst b/Doc/c-api/intro.rst
index acd4e03..1a200b9 100644
--- a/Doc/c-api/intro.rst
+++ b/Doc/c-api/intro.rst
@@ -705,9 +705,9 @@ interpreter can only be used after the interpreter has been initialized.
.. index::
single: Py_Initialize()
- module: builtins
- module: __main__
- module: sys
+ pair: module; builtins
+ pair: module; __main__
+ pair: module; sys
triple: module; search; path
single: path (in module sys)
diff --git a/Doc/library/_thread.rst b/Doc/library/_thread.rst
index 122692a..ba9314e 100644
--- a/Doc/library/_thread.rst
+++ b/Doc/library/_thread.rst
@@ -208,7 +208,7 @@ In addition to these methods, lock objects can also be used via the
**Caveats:**
- .. index:: module: signal
+ .. index:: pair: module; signal
* Threads interact strangely with interrupts: the :exc:`KeyboardInterrupt`
exception will be received by an arbitrary thread. (When the :mod:`signal`
diff --git a/Doc/library/binascii.rst b/Doc/library/binascii.rst
index 5a0815f..21960cb 100644
--- a/Doc/library/binascii.rst
+++ b/Doc/library/binascii.rst
@@ -6,8 +6,8 @@
representations.
.. index::
- module: uu
- module: base64
+ pair: module; uu
+ pair: module; base64
--------------
diff --git a/Doc/library/cmath.rst b/Doc/library/cmath.rst
index 5ed7a09..b17d58e 100644
--- a/Doc/library/cmath.rst
+++ b/Doc/library/cmath.rst
@@ -301,7 +301,7 @@ Constants
.. versionadded:: 3.6
-.. index:: module: math
+.. index:: pair: module; math
Note that the selection of functions is similar, but not identical, to that in
module :mod:`math`. The reason for having two modules is that some users aren't
diff --git a/Doc/library/copy.rst b/Doc/library/copy.rst
index a8bc2fa..8f32477 100644
--- a/Doc/library/copy.rst
+++ b/Doc/library/copy.rst
@@ -68,7 +68,7 @@ Shallow copies of dictionaries can be made using :meth:`dict.copy`, and
of lists by assigning a slice of the entire list, for example,
``copied_list = original_list[:]``.
-.. index:: module: pickle
+.. index:: pair: module; pickle
Classes can use the same interfaces to control copying that they use to control
pickling. See the description of module :mod:`pickle` for information on these
diff --git a/Doc/library/copyreg.rst b/Doc/library/copyreg.rst
index afc3e66..2a28c04 100644
--- a/Doc/library/copyreg.rst
+++ b/Doc/library/copyreg.rst
@@ -7,8 +7,8 @@
**Source code:** :source:`Lib/copyreg.py`
.. index::
- module: pickle
- module: copy
+ pair: module; pickle
+ pair: module; copy
--------------
diff --git a/Doc/library/exceptions.rst b/Doc/library/exceptions.rst
index 18c3f47..aee1cb5 100644
--- a/Doc/library/exceptions.rst
+++ b/Doc/library/exceptions.rst
@@ -318,7 +318,7 @@ The following exceptions are the exceptions that are usually raised.
.. exception:: OSError([arg])
OSError(errno, strerror[, filename[, winerror[, filename2]]])
- .. index:: module: errno
+ .. index:: pair: module; errno
This exception is raised when a system function returns a system-related
error, including I/O failures such as "file not found" or "disk full"
diff --git a/Doc/library/fnmatch.rst b/Doc/library/fnmatch.rst
index 46bf0fc..aed8991 100644
--- a/Doc/library/fnmatch.rst
+++ b/Doc/library/fnmatch.rst
@@ -8,7 +8,7 @@
.. index:: single: filenames; wildcard expansion
-.. index:: module: re
+.. index:: pair: module; re
--------------
@@ -38,7 +38,7 @@ special characters used in shell-style wildcards are:
For a literal match, wrap the meta-characters in brackets.
For example, ``'[?]'`` matches the character ``'?'``.
-.. index:: module: glob
+.. index:: pair: module; glob
Note that the filename separator (``'/'`` on Unix) is *not* special to this
module. See module :mod:`glob` for pathname expansion (:mod:`glob` uses
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 47e3880..ddb918d 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -1340,7 +1340,7 @@ are always available. They are listed here in alphabetical order.
single: I/O control; buffering
single: binary mode
single: text mode
- module: sys
+ pair: module; sys
See also the file handling modules, such as :mod:`fileinput`, :mod:`io`
(where :func:`open` is declared), :mod:`os`, :mod:`os.path`, :mod:`tempfile`,
@@ -1987,7 +1987,7 @@ are always available. They are listed here in alphabetical order.
.. index::
statement: import
- module: builtins
+ pair: module; builtins
.. note::
diff --git a/Doc/library/http.client.rst b/Doc/library/http.client.rst
index abdc6b4..eb8c1e1 100644
--- a/Doc/library/http.client.rst
+++ b/Doc/library/http.client.rst
@@ -10,7 +10,7 @@
pair: HTTP; protocol
single: HTTP; http.client (standard module)
-.. index:: module: urllib.request
+.. index:: pair: module; urllib.request
--------------
diff --git a/Doc/library/internet.rst b/Doc/library/internet.rst
index ff58dcf..681769a 100644
--- a/Doc/library/internet.rst
+++ b/Doc/library/internet.rst
@@ -9,7 +9,7 @@ Internet Protocols and Support
single: Internet
single: World Wide Web
-.. index:: module: socket
+.. index:: pair: module; socket
The modules described in this chapter implement internet protocols and support
for related technology. They are all implemented in Python. Most of these
diff --git a/Doc/library/locale.rst b/Doc/library/locale.rst
index f726f83..f2abb363 100644
--- a/Doc/library/locale.rst
+++ b/Doc/library/locale.rst
@@ -16,7 +16,7 @@ functionality. The POSIX locale mechanism allows programmers to deal with
certain cultural issues in an application, without requiring the programmer to
know all the specifics of each country where the software is executed.
-.. index:: module: _locale
+.. index:: pair: module; _locale
The :mod:`locale` module is implemented on top of the :mod:`_locale` module,
which in turn uses an ANSI C locale implementation if available.
@@ -464,7 +464,7 @@ The :mod:`locale` module defines the following exception and functions:
.. data:: LC_CTYPE
- .. index:: module: string
+ .. index:: pair: module; string
Locale category for the character type functions. Depending on the settings of
this category, the functions of module :mod:`string` dealing with case change
diff --git a/Doc/library/marshal.rst b/Doc/library/marshal.rst
index 24f9dc1..0556f19 100644
--- a/Doc/library/marshal.rst
+++ b/Doc/library/marshal.rst
@@ -15,8 +15,8 @@ undocumented on purpose; it may change between Python versions (although it
rarely does). [#]_
.. index::
- module: pickle
- module: shelve
+ pair: module; pickle
+ pair: module; shelve
This is not a general "persistence" module. For general persistence and
transfer of Python objects through RPC calls, see the modules :mod:`pickle` and
diff --git a/Doc/library/os.path.rst b/Doc/library/os.path.rst
index 96bcb48..7881c52 100644
--- a/Doc/library/os.path.rst
+++ b/Doc/library/os.path.rst
@@ -159,7 +159,7 @@ the :mod:`glob` module.)
On Unix and Windows, return the argument with an initial component of ``~`` or
``~user`` replaced by that *user*'s home directory.
- .. index:: module: pwd
+ .. index:: pair: module; pwd
On Unix, an initial ``~`` is replaced by the environment variable :envvar:`HOME`
if it is set; otherwise the current user's home directory is looked up in the
diff --git a/Doc/library/os.rst b/Doc/library/os.rst
index 76623c6..641e289 100644
--- a/Doc/library/os.rst
+++ b/Doc/library/os.rst
@@ -1284,7 +1284,7 @@ or `the MSDN <https://msdn.microsoft.com/en-us/library/z0kc8e3z.aspx>`_ on Windo
.. function:: openpty()
- .. index:: module: pty
+ .. index:: pair: module; pty
Open a new pseudo-terminal pair. Return a pair of file descriptors
``(master, slave)`` for the pty and the tty, respectively. The new file
@@ -2890,7 +2890,7 @@ features:
possible and call :func:`lstat` on the result. This does not apply to
dangling symlinks or junction points, which will raise the usual exceptions.
- .. index:: module: stat
+ .. index:: pair: module; stat
Example::
diff --git a/Doc/library/pdb.rst b/Doc/library/pdb.rst
index 8a386aa..74bffef 100644
--- a/Doc/library/pdb.rst
+++ b/Doc/library/pdb.rst
@@ -20,8 +20,8 @@ supports post-mortem debugging and can be called under program control.
.. index::
single: Pdb (class in pdb)
- module: bdb
- module: cmd
+ pair: module; bdb
+ pair: module; cmd
The debugger is extensible -- it is actually defined as the class :class:`Pdb`.
This is currently undocumented but easily understood by reading the source. The
diff --git a/Doc/library/posix.rst b/Doc/library/posix.rst
index ec04b0d..0413f9d 100644
--- a/Doc/library/posix.rst
+++ b/Doc/library/posix.rst
@@ -11,7 +11,7 @@ This module provides access to operating system functionality that is
standardized by the C Standard and the POSIX standard (a thinly disguised Unix
interface).
-.. index:: module: os
+.. index:: pair: module; os
**Do not import this module directly.** Instead, import the module :mod:`os`,
which provides a *portable* version of this interface. On Unix, the :mod:`os`
diff --git a/Doc/library/pwd.rst b/Doc/library/pwd.rst
index 98f3c45..7cafc66 100644
--- a/Doc/library/pwd.rst
+++ b/Doc/library/pwd.rst
@@ -39,7 +39,7 @@ raised if the entry asked for cannot be found.
.. note::
- .. index:: module: crypt
+ .. index:: pair: module; crypt
In traditional Unix the field ``pw_passwd`` usually contains a password
encrypted with a DES derived algorithm (see module :mod:`crypt`). However most
diff --git a/Doc/library/pyexpat.rst b/Doc/library/pyexpat.rst
index d6581e2..935e872 100644
--- a/Doc/library/pyexpat.rst
+++ b/Doc/library/pyexpat.rst
@@ -33,7 +33,7 @@ can be set to handler functions. When an XML document is then fed to the
parser, the handler functions are called for the character data and markup in
the XML document.
-.. index:: module: pyexpat
+.. index:: pair: module; pyexpat
This module uses the :mod:`pyexpat` module to provide access to the Expat
parser. Direct use of the :mod:`pyexpat` module is deprecated.
diff --git a/Doc/library/runpy.rst b/Doc/library/runpy.rst
index 501f4dd..42ed8c2 100644
--- a/Doc/library/runpy.rst
+++ b/Doc/library/runpy.rst
@@ -30,7 +30,7 @@ The :mod:`runpy` module provides two functions:
.. function:: run_module(mod_name, init_globals=None, run_name=None, alter_sys=False)
.. index::
- module: __main__
+ pair: module; __main__
Execute the code of the specified module and return the resulting module
globals dictionary. The module's code is first located using the standard
@@ -101,7 +101,7 @@ The :mod:`runpy` module provides two functions:
.. function:: run_path(path_name, init_globals=None, run_name=None)
.. index::
- module: __main__
+ pair: module; __main__
Execute the code at the named filesystem location and return the resulting
module globals dictionary. As with a script name supplied to the CPython
diff --git a/Doc/library/shelve.rst b/Doc/library/shelve.rst
index a50fc6f..dc87af3 100644
--- a/Doc/library/shelve.rst
+++ b/Doc/library/shelve.rst
@@ -6,7 +6,7 @@
**Source code:** :source:`Lib/shelve.py`
-.. index:: module: pickle
+.. index:: pair: module; pickle
--------------
@@ -95,8 +95,8 @@ Restrictions
------------
.. index::
- module: dbm.ndbm
- module: dbm.gnu
+ pair: module; dbm.ndbm
+ pair: module; dbm.gnu
* The choice of which database package will be used (such as :mod:`dbm.ndbm` or
:mod:`dbm.gnu`) depends on which interface is available. Therefore it is not
diff --git a/Doc/library/site.rst b/Doc/library/site.rst
index 4a88013..a4efefd 100644
--- a/Doc/library/site.rst
+++ b/Doc/library/site.rst
@@ -109,7 +109,7 @@ directory precedes the :file:`foo` directory because :file:`bar.pth` comes
alphabetically before :file:`foo.pth`; and :file:`spam` is omitted because it is
not mentioned in either path configuration file.
-.. index:: module: sitecustomize
+.. index:: pair: module; sitecustomize
After these path manipulations, an attempt is made to import a module named
:mod:`sitecustomize`, which can perform arbitrary site-specific customizations.
@@ -121,7 +121,7 @@ with :file:`pythonw.exe` on Windows (which is used by default to start IDLE),
attempted output from :mod:`sitecustomize` is ignored. Any other exception
causes a silent and perhaps mysterious failure of the process.
-.. index:: module: usercustomize
+.. index:: pair: module; usercustomize
After this, an attempt is made to import a module named :mod:`usercustomize`,
which can perform arbitrary user-specific customizations, if
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index c8ca555..150c1f9 100644
--- a/Doc/library/socket.rst
+++ b/Doc/library/socket.rst
@@ -1916,7 +1916,7 @@ to sockets.
.. method:: socket.setsockopt(level, optname, None, optlen: int)
:noindex:
- .. index:: module: struct
+ .. index:: pair: module; struct
Set the value of the given socket option (see the Unix manual page
:manpage:`setsockopt(2)`). The needed symbolic constants are defined in the
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index f6662b4..4c0a213 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -330,7 +330,7 @@ Notes:
(3)
.. index::
- module: math
+ pair: module; math
single: floor() (in module math)
single: ceil() (in module math)
single: trunc() (in module math)
@@ -1600,7 +1600,7 @@ String Methods
--------------
.. index::
- module: re
+ pair: module; re
Strings implement all of the :ref:`common <typesseq-common>` sequence
operations, along with the additional methods described below.
@@ -2511,7 +2511,7 @@ Binary Sequence Types --- :class:`bytes`, :class:`bytearray`, :class:`memoryview
object: bytes
object: bytearray
object: memoryview
- module: array
+ pair: module; array
The core built-in types for manipulating binary data are :class:`bytes` and
:class:`bytearray`. They are supported by :class:`memoryview` which uses
@@ -5378,7 +5378,7 @@ Type Objects
.. index::
builtin: type
- module: types
+ pair: module; types
Type objects represent the various object types. An object's type is accessed
by the built-in function :func:`type`. There are no special operations on
diff --git a/Doc/reference/compound_stmts.rst b/Doc/reference/compound_stmts.rst
index 0731589..4bdecbf 100644
--- a/Doc/reference/compound_stmts.rst
+++ b/Doc/reference/compound_stmts.rst
@@ -297,7 +297,7 @@ traceback attached to them, they form a reference cycle with the stack frame,
keeping all locals in that frame alive until the next garbage collection occurs.
.. index::
- module: sys
+ pair: module; sys
object: traceback
Before an :keyword:`!except` clause's suite is executed,
diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst
index c35bf40..9d3ea3f 100644
--- a/Doc/reference/datamodel.rst
+++ b/Doc/reference/datamodel.rst
@@ -377,7 +377,7 @@ Sequences
(and hence unhashable), byte arrays otherwise provide the same interface
and functionality as immutable :class:`bytes` objects.
- .. index:: module: array
+ .. index:: pair: module; array
The extension module :mod:`array` provides an additional example of a
mutable sequence type, as does the :mod:`collections` module.
@@ -451,8 +451,8 @@ Mappings
section :ref:`dict`).
.. index::
- module: dbm.ndbm
- module: dbm.gnu
+ pair: module; dbm.ndbm
+ pair: module; dbm.gnu
The extension modules :mod:`dbm.ndbm` and :mod:`dbm.gnu` provide
additional examples of mapping types, as does the :mod:`collections`
@@ -909,7 +909,7 @@ Class instances
I/O objects (also known as file objects)
.. index::
builtin: open
- module: io
+ pair: module; io
single: popen() (in module os)
single: makefile() (socket method)
single: sys.stdin
diff --git a/Doc/reference/executionmodel.rst b/Doc/reference/executionmodel.rst
index a264015..8917243 100644
--- a/Doc/reference/executionmodel.rst
+++ b/Doc/reference/executionmodel.rst
@@ -151,7 +151,7 @@ to previously bound variables in the nearest enclosing function scope.
:exc:`SyntaxError` is raised at compile time if the given name does not
exist in any enclosing function scope.
-.. index:: module: __main__
+.. index:: pair: module; __main__
The namespace for a module is automatically created the first time a module is
imported. The main module for a script is always called :mod:`__main__`.
diff --git a/Doc/reference/toplevel_components.rst b/Doc/reference/toplevel_components.rst
index 319c9de..ee472ac 100644
--- a/Doc/reference/toplevel_components.rst
+++ b/Doc/reference/toplevel_components.rst
@@ -21,9 +21,9 @@ Complete Python programs
.. index:: single: program
.. index::
- module: sys
- module: __main__
- module: builtins
+ pair: module; sys
+ pair: module; __main__
+ pair: module; builtins
While a language specification need not prescribe how the language interpreter
is invoked, it is useful to have a notion of a complete Python program. A
@@ -38,7 +38,7 @@ the next section.
.. index::
single: interactive mode
- module: __main__
+ pair: module; __main__
The interpreter may also be invoked in interactive mode; in this case, it does
not read and execute a complete program but reads and executes one statement
diff --git a/Doc/tools/extensions/pyspecific.py b/Doc/tools/extensions/pyspecific.py
index 39c7c42..12d3e38 100644
--- a/Doc/tools/extensions/pyspecific.py
+++ b/Doc/tools/extensions/pyspecific.py
@@ -689,7 +689,7 @@ def patch_pairindextypes(app) -> None:
# away from this, we need Sphinx to believe that these values don't
# exist, by deleting them when using the gettext builder.
- # pairindextypes.pop('module', None)
+ pairindextypes.pop('module', None)
# pairindextypes.pop('keyword', None)
# pairindextypes.pop('operator', None)
# pairindextypes.pop('object', None)
@@ -697,10 +697,6 @@ def patch_pairindextypes(app) -> None:
# pairindextypes.pop('statement', None)
# pairindextypes.pop('builtin', None)
- # there needs to be at least one statement in this block, will be
- # removed when the first of the below is uncommented.
- pass
-
def setup(app):
app.add_role('issue', issue_role)
diff --git a/Doc/tutorial/inputoutput.rst b/Doc/tutorial/inputoutput.rst
index 3581b37..aeacc15 100644
--- a/Doc/tutorial/inputoutput.rst
+++ b/Doc/tutorial/inputoutput.rst
@@ -466,7 +466,7 @@ Reference for a complete guide to file objects.
Saving structured data with :mod:`json`
---------------------------------------
-.. index:: module: json
+.. index:: pair: module; json
Strings can easily be written to and read from a file. Numbers take a bit more
effort, since the :meth:`read` method only returns strings, which will have to
diff --git a/Doc/tutorial/modules.rst b/Doc/tutorial/modules.rst
index 4daafa4..3bd034b 100644
--- a/Doc/tutorial/modules.rst
+++ b/Doc/tutorial/modules.rst
@@ -264,7 +264,7 @@ Some tips for experts:
Standard Modules
================
-.. index:: module: sys
+.. index:: pair: module; sys
Python comes with a library of standard modules, described in a separate
document, the Python Library Reference ("Library Reference" hereafter). Some
@@ -345,7 +345,7 @@ Without arguments, :func:`dir` lists the names you have defined currently::
Note that it lists all types of names: variables, modules, functions, etc.
-.. index:: module: builtins
+.. index:: pair: module; builtins
:func:`dir` does not list the names of built-in functions and variables. If you
want a list of those, they are defined in the standard module