diff options
Diffstat (limited to 'huh.lua')
-rwxr-xr-x | huh.lua | 21 |
1 files changed, 21 insertions, 0 deletions
@@ -0,0 +1,21 @@ +#!/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: + <input> (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) |