diff options
Diffstat (limited to 'panfry')
| -rwxr-xr-x | panfry/document.py | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/panfry/document.py b/panfry/document.py index 42ef959..5ff7ee6 100755 --- a/panfry/document.py +++ b/panfry/document.py @@ -17,6 +17,14 @@ class Document: css_file = 'css/style.css' workdir = 'stdocs-work' + @property + def title(self): + header = self.meta['HEADER'].strip() + if header.startswith('%'): + return header.split('%')[1].strip() + else: + return pages[0].title + def get_pages(self, path): pages = [] filelist = get_lines(self.meta['TOC']) @@ -81,20 +89,16 @@ class Document: @property def pdf_filename(self): - header = self.meta['HEADER'] - m = re.match('(^%)(.*\n.*)(%*)', header) - if m: - title = m.group(2).strip() - title = re.sub(r'\s+', ' ', title) - title = re.sub(r'[\n ]', '_', title) - title = re.sub(r'[:,]', '-', title) - title = re.sub(r'_+', '_', title) - title = re.sub(r'-_', '-', title) - title = re.sub(r'-+', '-', title) - else: - title = os.path.split(self.src_path)[1] - - return title + '.pdf' + filename = self.title + filename = self.meta['HEADER'].split('%')[1].strip() + filename = re.sub(r'\s+', ' ', filename) + filename = re.sub(r'[\n ]', '_', filename) + filename = re.sub(r'[:,]', '-', filename) + filename = re.sub(r'_+', '_', filename) + filename = re.sub(r'-_', '-', filename) + filename = re.sub(r'-+', '-', filename) + + return filename + '.pdf' def publish_pdf(self, pub_path): pdf_path = os.path.join(pub_path, self.pdf_filename) |
