def cleanup(self, document, files, postProcess=None): res = _Renderer.cleanup(self, document, files, postProcess=postProcess) self.doJavaHelpFiles(document, version='1') self.doJavaHelpFiles(document, version='2') self.doEclipseHelpFiles(document) self.doCHMFiles(document) return res
def cleanup(self, document, files, postProcess=None): res = _Renderer.cleanup(self, document, files, postProcess=postProcess) self.doJavaHelpFiles(document, version='1') self.doJavaHelpFiles(document, version='2') self.doEclipseHelpFiles(document) self.doCHMFiles(document) return res
def cleanup(self, document, files, postProcess=None): """ Cleanup method called at the end of rendering. Uses the base renderer cleanup but calls packages callbacks before and after. Callbacks should be listed in document.userdata['preCleanupCallbacks'] or document.userdata['postCleanupCallbacks']. Each call back should accept the current document as its only argument. Pre-cleanup call back must return the list of path of files they created (relative to the output directory). """ rendererdata = document.rendererdata.get('html5', dict()) preCleanupCallbacks = rendererdata.get('preCleanupCallbacks', []) for preCleanupCallback in preCleanupCallbacks: files += preCleanupCallback(document) _Renderer.cleanup(self, document, files, postProcess)
def cleanup(self, document, files, postProcess=None): """ Cleanup method called at the end of rendering. Uses the base renderer cleanup but calls packages callbacks before and after. Callbacks should be listed in document.userdata['preCleanupCallbacks'] or document.userdata['postCleanupCallbacks']. Each call back should accept the current document as its only argument. Pre-cleanup call back must return the list of path of files they created (relative to the output directory). """ rendererdata = document.rendererdata.get('html5', dict()) preCleanupCallbacks = rendererdata.get('preCleanupCallbacks', []) for preCleanupCallback in preCleanupCallbacks: files += preCleanupCallback(document) _Renderer.cleanup(self, document, files, postProcess)
def cleanup(self, document, files, postProcess=None): res = _Renderer.cleanup(self, document, files, postProcess=postProcess) return res
def cleanup(self, document, files, postProcess=None): res = _Renderer.cleanup(self, document, files, postProcess=postProcess) return res
def cleanup(self, document, files, postProcess=None): res = _Renderer.cleanup(self, document, files, postProcess=postProcess) # Define uma lista de arquivos que devem ficar fora de OEBPS/, # e move os outros arquivos / diretórios, apagando os diretórios # pré-existentes em OEBPS/ dirNaoMover = ['mimetype', 'OEBPS', 'META-INF', 'Makefile'] moverDirs = list(set(os.listdir('.')) - set(dirNaoMover)) for arq in moverDirs: if os.path.isdir('OEBPS/%s' % arq): shutil.rmtree('OEBPS/%s' % arq) shutil.move(arq, 'OEBPS/%s' % arq) # Move os arquivos de conteúdo para OEBPS/ # for arq in files: # os.rename(arq, 'OEBPS/' + arq) # Mover todos os arquivos e diretórios que não sejam o META-INF/, OEBPS/ e mimetype latexdoc = document.getElementsByTagName('document')[0] # Cria uma entrada para o bookid com um UUID aleatório. latexdoc.setUserData('bookid', 'urn:uuid:%s' % uuid.uuid4()) # Adiciona o mimetype do arquivo ncx if not mimetypes.types_map.has_key('.ncx'): mimetypes.add_type('application/x-dtbncx+xml', '.ncx') # Mimetypes dos arquivos .html, .svg e .otf mimetypes.add_type('application/xhtml+xml', '.html') mimetypes.add_type('image/svg+xml', '.svg') mimetypes.add_type('application/vnd.ms-opentype', '.otf') # Gera o arquivo ncx self.doNCXFiles(latexdoc) listaArquivos = dict() # Lista dos arquivos no manifest spine = [] # Lista de ids no spine (poderiamos trocar por uma função que verifica quais tipos de seção geram arquivos e incluir no userdata deles). for root, dirs, arquivos in os.walk('OEBPS/'): for nomeArquivo in arquivos: if (nomeArquivo == 'content.opf'): continue if re.match('.*~$', nomeArquivo): continue href = os.path.join(re.sub('OEBPS/?', '', root), nomeArquivo) # As / são substituídas por - no id itemid = re.sub('[/.]', '-', href) mediaType = mimetypes.guess_type(nomeArquivo)[0] # Os arquivos html são incluídos no spine if re.match('.*\.html', nomeArquivo): spine.append(itemid) listaArquivos[itemid] = {'href': href, 'mediaType': mediaType} latexdoc.setUserData('listaArqs', listaArquivos) # A lista de ids será ordenada para a geração do content.opf latexdoc.setUserData('spine', sorted(spine)) # Chamadas para geração do arquivo opf self.doOPFFiles(latexdoc) return res
def cleanup(self, document, files, postProcess=None): res = _Renderer.cleanup(self, document, files, postProcess=postProcess) # TODO: Convert this to named registered utilities or adapters self.doEclipseHelpFiles(document) return res