Move pydoc_topics module to its own subdirectory, so that no generated code is in Lib/.

This commit is contained in:
Georg Brandl 2009-04-26 09:56:44 +00:00
parent 0d478c455b
commit 438192540d
5 changed files with 11 additions and 11 deletions

View File

@ -28,8 +28,8 @@ help:
@echo " coverage to check documentation coverage for library and C API" @echo " coverage to check documentation coverage for library and C API"
@echo " dist to create a \"dist\" directory with archived docs for download" @echo " dist to create a \"dist\" directory with archived docs for download"
# Note: if you update versions here, do the same in make.bat and README.txt
checkout: checkout:
# Note: if you update versions here, do the same in make.bat and README.txt
@if [ ! -d tools/sphinx ]; then \ @if [ ! -d tools/sphinx ]; then \
echo "Checking out Sphinx..."; \ echo "Checking out Sphinx..."; \
svn checkout $(SVNROOT)/external/Sphinx-0.6.1/sphinx tools/sphinx; \ svn checkout $(SVNROOT)/external/Sphinx-0.6.1/sphinx tools/sphinx; \
@ -102,8 +102,8 @@ doctest: build
pydoc-topics: BUILDER = pydoc-topics pydoc-topics: BUILDER = pydoc-topics
pydoc-topics: build pydoc-topics: build
@echo "Building finished; now copy build/pydoc-topics/pydoc_topics.py " \ @echo "Building finished; now copy build/pydoc-topics/topics.py " \
"into the Lib/ directory" "to Lib/pydoc_data/topics.py"
htmlview: html htmlview: html
$(PYTHON) -c "import webbrowser; webbrowser.open('build/html/index.html')" $(PYTHON) -c "import webbrowser; webbrowser.open('build/html/index.html')"

View File

@ -5,7 +5,7 @@
Sphinx extension with Python doc-specific markup. Sphinx extension with Python doc-specific markup.
:copyright: 2008 by Georg Brandl. :copyright: 2008, 2009 by Georg Brandl.
:license: Python license. :license: Python license.
""" """
@ -89,7 +89,7 @@ class PydocTopicsBuilder(Builder):
self.topics[label] = writer.output self.topics[label] = writer.output
def finish(self): def finish(self):
f = open(path.join(self.outdir, 'pydoc_topics.py'), 'w') f = open(path.join(self.outdir, 'topics.py'), 'w')
try: try:
f.write('# Autogenerated by Sphinx on %s\n' % asctime()) f.write('# Autogenerated by Sphinx on %s\n' % asctime())
f.write('topics = ' + pformat(self.topics) + '\n') f.write('topics = ' + pformat(self.topics) + '\n')

View File

@ -1533,11 +1533,11 @@ class Helper:
# These dictionaries map a topic name to either an alias, or a tuple # These dictionaries map a topic name to either an alias, or a tuple
# (label, seealso-items). The "label" is the label of the corresponding # (label, seealso-items). The "label" is the label of the corresponding
# section in the .rst file under Doc/ and an index into the dictionary # section in the .rst file under Doc/ and an index into the dictionary
# in pydoc_topics.py. # in pydoc_data/topics.py.
# #
# CAUTION: if you change one of these dictionaries, be sure to adapt the # CAUTION: if you change one of these dictionaries, be sure to adapt the
# list of needed labels in Doc/tools/sphinxext/pyspecific.py and # list of needed labels in Doc/tools/sphinxext/pyspecific.py and
# regenerate the pydoc_topics.py file by running # regenerate the pydoc_data/topics.py file by running
# make pydoc-topics # make pydoc-topics
# in Doc/ and copying the output file into the Lib/ directory. # in Doc/ and copying the output file into the Lib/ directory.
@ -1821,11 +1821,11 @@ Here is a list of available topics. Enter any topic name to get more help.
def showtopic(self, topic, more_xrefs=''): def showtopic(self, topic, more_xrefs=''):
try: try:
import pydoc_topics import pydoc_data.topics
except ImportError: except ImportError:
self.output.write(''' self.output.write('''
Sorry, topic and keyword documentation is not available because the Sorry, topic and keyword documentation is not available because the
module "pydoc_topics" could not be found. module "pydoc_data.topics" could not be found.
''') ''')
return return
target = self.topics.get(topic, self.keywords.get(topic)) target = self.topics.get(topic, self.keywords.get(topic))
@ -1837,7 +1837,7 @@ module "pydoc_topics" could not be found.
label, xrefs = target label, xrefs = target
try: try:
doc = pydoc_topics.topics[label] doc = pydoc_data.topics.topics[label]
except KeyError: except KeyError:
self.output.write('no documentation found for %s\n' % repr(topic)) self.output.write('no documentation found for %s\n' % repr(topic))
return return

View File