From: Doug H. <dou...@us...> - 2002-12-07 17:03:16
|
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', |