def generatePage(self, page): page_info = MiduHelper.parseVar(page.group(1)) bkpath = self.mdvar.path_backup() self.mdvar._path['pg_tmpl'] = page_info['target'] self.mdvar._path['pg_para'] = page_info['paras'] if self.mdvar._listinfo['in_list'] and \ 'dst' not in page_info['paras']: rel_path = os.path.relpath( self.mdvar._listinfo['list_root'], self.mdvar._path['curdir']) targ_path = rel_path + '/' + page_info['target'] page_info['paras']['dst'] = targ_path if 'suffix' in page_info['paras']: page_info['paras']['dst'] += page_info['paras']['suffix'] self.mdvar.path_changepage(page_info['paras']['dst']) dst_name = self.mdvar._path['curdir'] + '/' +\ self.mdvar._path['curpage'] + '.html' if dst_name in self.page_cached: self.mdvar.path_restore(bkpath) return dst_name MiduHelper.mkdir_p(self.mdvar._path['dst_prefix'] + self.mdvar._path['curdir']) with open(self.mdvar._path['dst_prefix'] + dst_name, 'w') as f_w: lines = self.loaded['page'].get(page_info['target']) self.page_cached[dst_name] = dst_name new_lines = self.replace(lines) f_w.write(new_lines) self.mdvar.path_restore(bkpath) return dst_name self.mdvar.path_restore(bkpath) return ''