#!/usr/bin/env moon require 'alv' import render, layout, autoref, subnav from require 'docs.gen.layout' import section, h1, h2, p, ul, li, a, code from require 'docs.gen.dom' import compile from require 'discount' export OUT slurp = (file) -> file = io.open file, 'r' with file\read '*all' file\close! spit = (file, str) -> file = io.open file, 'w' file\write str file\close! { OUT, file } = arg md = slurp file for file in *arg[3,] if mod = file\match '/module/(.*)%.html' name = mod\gsub '/', '.' md ..= " - [`#{name}`](module/#{mod}.html)\n" content = compile (autoref md), 'githubtags', 'fencedcode' sub = subnav [a for a in *arg[3,]] spit OUT, layout body: table.concat { sub, content.body }, '\n\n'