diff options
Diffstat (limited to 'fix.py')
| -rwxr-xr-x | fix.py | 41 |
1 files changed, 41 insertions, 0 deletions
@@ -0,0 +1,41 @@ +#!/usr/bin/env python3 +import os +import re +import shutil + + +def fix(): + shutil.rmtree("content", ignore_errors=True) + os.makedirs("content") + + for directory, _, files in os.walk("md"): + for file in files: + if file.endswith("gmi"): + new_dir = f"content/{directory[3:]}" + with open(f"{directory}/{file}", "r") as old_file: + old_content = old_file.read() + old_content_lines = old_content.splitlines() + + meta_line = old_content_lines[2] + match = re.fullmatch(r'''title: "([^"]*)" date: "(....-..-..)" categories:''', meta_line) + title = match.group(1) + date = match.group(2) + + separator_line = old_content_lines[1:].index('-'*80) + 1 + + content = f"# {title}\n" + content += f"{date}\n" + content += "\n".join(old_content_lines[separator_line + 1:]) + + import pdb; pdb.set_trace() + +# print(new_dir, file) +# os.makedirs(new_dir, exist_ok=True) +# shutil.copyfile(, f"{new_dir}/{file}") + else: + # FIXME + pass + + +if __name__ == "__main__": + fix() |
