#!/usr/bin/env python3 import csv import datetime as dt import pathlib as p import panflute as pf def prepare(doc): date_str = p.Path(doc.get_metadata("path", "")).stem name_date = dt.date(*[ int(i) for i in date_str.split("-") ]) diary_dir = p.Path(doc.get_metadata("diary_dir", "")) diary_entries = [ dt.date.fromisoformat(_p.stem) for _p in sorted(diary_dir.iterdir(), key=lambda i: i.stem) ] index = diary_entries.index(name_date) try: prev = diary_entries[index-1] except: prev = None try: _next = diary_entries[index+1] except: _next = None def action(elem, doc): pass def finalize(doc): pass def main(doc=None): return pf.run_filter(action, prepare=prepare, finalize=finalize, doc=doc) if __name__ == "__main__": main()