#!/usr/bin/env lua local gumbo = require "gumbo" local config = require "pl.config" local args = require "pl.lapp" [[ Generates an HTML document from another HTML document (huh?). Options: -c, --config (default huh.conf) Configuration file -h, --help Prints this help message to standard output Arguments: (optional string) HTML file to process ]] local conf = assert(config.read(args.config)) local document = assert(gumbo.parseFile(args.input or io.stdin)) local head = assert(gumbo.parseFile(conf.head, {contextElement="head"})) for _, node in pairs(head.documentElement.childNodes) do document:adoptNode(node) document.head:insertBefore(node, document.head.firstChild) end document:serialize(io.stdout)