Exemple #1
0
    def run(self):
        from music21 import documentation  # @UnresolvedImport
        moduleReferenceDirectoryPath = os.path.join(
            documentation.__path__[0],
            'source',
            'moduleReference',
        )
        referenceNames = []
        for module in [x for x in documentation.ModuleIterator()]:
            moduleDocumenter = documentation.ModuleDocumenter(module)
            if not moduleDocumenter.classDocumenters \
                and not moduleDocumenter.functionDocumenters:
                continue
            rst = '\n'.join(moduleDocumenter.run())
            referenceName = moduleDocumenter.referenceName
            referenceNames.append(referenceName)
            fileName = '{0}.rst'.format(referenceName)
            filePath = os.path.join(
                moduleReferenceDirectoryPath,
                fileName,
            )
            try:
                self.write(filePath, rst)
            except TypeError as te:
                raise TypeError("File failed: " + filePath + ", reason: " +
                                str(te))

        lines = []
        lines.append('.. moduleReference:')
        lines.append('')
        lines.append('.. WARNING: DO NOT EDIT THIS FILE:')
        lines.append('   AUTOMATICALLY GENERATED.')
        lines.append('')
        lines.append('Module Reference')
        lines.append('================')
        lines.append('')
        lines.append('.. toctree::')
        lines.append('   :maxdepth: 1')
        lines.append('')
        for referenceName in sorted(referenceNames):
            lines.append('   {0}'.format(referenceName))
        rst = '\n'.join(lines)
        indexFilePath = os.path.join(
            moduleReferenceDirectoryPath,
            'index.rst',
        )
        self.write(indexFilePath, rst)
Exemple #2
0
 def __call__(self):
     from music21 import documentation # @UnresolvedImport
     moduleReferenceDirectoryPath = os.path.join(
         documentation.__path__[0],
         'source',
         'moduleReference',
         )
     referenceNames = []
     for module in [x for x in documentation.ModuleIterator()]:
         moduleDocumenter = documentation.ModuleDocumenter(module)
         rst = '\n'.join(moduleDocumenter())
         referenceName = moduleDocumenter.referenceName
         referenceNames.append(referenceName)
         fileName = '{0}.rst'.format(referenceName)
         filePath = os.path.join(
             moduleReferenceDirectoryPath,
             fileName,
             )
         self.write(filePath, rst)
     
     lines = []
     lines.append('.. moduleReference:')
     lines.append('')
     lines.append('.. WARNING: DO NOT EDIT THIS FILE:')
     lines.append('   AUTOMATICALLY GENERATED.')
     lines.append('')
     lines.append('Module Reference')
     lines.append('================')
     lines.append('')
     lines.append('.. toctree::')
     lines.append('   :maxdepth: 1')
     lines.append('')
     for referenceName in sorted(referenceNames):
         lines.append('   {0}'.format(referenceName))
     rst = '\n'.join(lines)
     indexFilePath = os.path.join(
         moduleReferenceDirectoryPath,
         'index.rst',
         )
     self.write(indexFilePath, rst)