Hakyll extension which supports the creation of hierarchical menus from source files in a directory structure. Adittionally single page web sites can created by using flattened page id's instead of urls.
Build the library
dirListField function is similar to the Hakyll
template function but creates additional context information which can be used in the template to create a hierarchical menu.
Context usable inside the template
<ul>tags if apropriate
$end-tags$contains the corresponding
$full-page-id$is the hyphen seperated path of the page
- use configuration to get level dependant structuring tags
Metainformation in the source files
For each subdirectory which should be processed one source file with the same base name should exist which can contain meta information:
pages/a.mdtop page for directory a
pages/a/foo.mdpage foo within a
The following meta information can be given
page-idpart of the generated id, if not given the base name of the file
page-ordergive an ordering key for sorting in the current directory level, if not given the
page-idwill be used
For a more fine grained control the tags which are used are configurable for each level of the menu.
See the example for an illustration of usage.