heckweasel/TODO.md

1.9 KiB

TODO

  • Smart CSS things (fill in the processors)

  • Project global defines, parameters.

  • pre- and post-scripts that will be run from main, either some shipped with heckweasel or project-level.

  • Library of template modules? ATOM et al.

  • Some off the shelf website templates and a template manager.

  • Live refreshing server thing which maps a heckweasel tree into a web server's memory and updates on change.

  • https://github.com/Python-Markdown/markdown/wiki/Third-Party-Extensions

  • add markdown_link_attr_modifier extension

  • add figureAltCaption extension

  • add qrcode extension

  • Add support to define macros or whatever for Jinja, or to include generic stanzas in any output so adding macros won't mean repeatedly including them.

  • It'd be good to generate a dependency tree and only recompile things based on changes, like makefile-like behavior.

  • Fragments which would be blobs of mechanics like rss feed, thumbnail links, etc. They would be virtual files and other changes to processing chains and project contents. python -mheckweasel --fragment=rss,config=foo.meta etc.

  • Run commands as part of processing chains

  • Project level processing chain overrides in the .meta or whatever.

  • Project settings in separate file from .meta that would basically do .meta stuff. Like global meta + config in a top.heck file by default and overridable by a parameter. Maybe a nice default filename that doesn't start with . (whereas .meta or .heck is the current base metadata)

  • Handle the fact that HECKformat metadata is always a list in a more elegent way. We have some hacks in place where scalar values are expected, but if a project mixes metadata formats it gets a bit messy.

  • Provide a database-like interface to the global metadata tree, so that metameta page templates could query the database to assemble indexes and whatnot without looping over the actual files.