Update of /cvsroot/happydoc/HappyDoc3/happydoclib/docset
In directory sc8-pr-cvs1:/tmp/cvs-serv23602/happydoclib/docset
Modified Files:
docset_MultiHTMLFile.py
Log Message:
Move writeTOCFile here.
Add _getReadmeTextForDirectory.
Index: docset_MultiHTMLFile.py
===================================================================
RCS file: /cvsroot/happydoc/HappyDoc3/happydoclib/docset/docset_MultiHTMLFile.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** docset_MultiHTMLFile.py 7 Dec 2002 15:34:59 -0000 1.3
--- docset_MultiHTMLFile.py 7 Dec 2002 17:03:13 -0000 1.4
***************
*** 170,173 ****
--- 170,231 ----
return
+ def _getReadmeTextForDirectory(self, packageTreeNode):
+ """Returns the raw README text for the directory.
+
+ Returns first value found, in order:
+
+ 1. __init__.py docstring
+
+ 2. README.txt
+
+ 3. README.stx
+
+ """
+ trace.into('MultiHTMLFile', '_getReadmeTextForDirectory',
+ packageTreeNode=packageTreeNode,
+ )
+
+ readme_text = ''
+ text_format = 'StructuredText'
+
+ trace.write('looking for __init__.py')
+ node = packageTreeNode.get('__init__.py')
+ if node is not None:
+ trace.write('got __init__.py')
+ readme_text = node.module_info.getDocString()
+ readme_text = self._unquoteString(readme_text)
+ text_format = node.module_info.getDocStringFormat()
+
+ if not readme_text:
+ for name in ('README.txt', 'README.stx'):
+ trace.write('looking for %s' % name)
+ node = packageTreeNode.get(name)
+ if node is not None:
+ input_filename = node.getInputFilename()
+ trace.write('got %s' % input_filename)
+ readme_text = open(input_filename, 'rt').read()
+ break
+
+ trace.outof( (readme_text, text_format))
+ return (readme_text, text_format)
+
+ def writeTOCFile(self, packageTreeNode):
+ trace.into('MultiHTMLFile', 'writeTOCFile',
+ packageTreeNode=packageTreeNode,
+ )
+
+ output_filename = self.getOutputFilenameForPackageTreeNode(packageTreeNode)
+
+ output = self.openOutput(output_filename)
+
+ readme_text, text_format = self._getReadmeTextForDirectory(packageTreeNode)
+
+ self.writeText(output, readme_text, text_format)
+
+ self.closeOutput(output)
+
+ trace.outof()
+ return
+
def writePythonFile(self, packageTreeNode):
trace.into('MultiHTMLFileDocSet', 'writePythonFile',
|