#!/usr/bin/perl
package IkiWiki::Plugin::htmlpacker;
# htmlpacker: HTML code cleaner
#
# Copyright 2011 Jonas Smedegaard
# Based on htmlbalance which is...
# Copyright 2008 Simon McVittie
# Licensed under the GNU GPL, version 2, or any later version published by the
# Free Software Foundation
use warnings;
use strict;
use IkiWiki 3.00;
sub import {
hook(type => "getsetup", id => "htmlpacker", call => \&getsetup);
hook(type => "sanitize", id => "htmlpacker", call => \&sanitize);
}
sub getsetup () {
return
plugin => {
safe => 1,
rebuild => undef,
},
}
sub sanitize (@) {
my %params=@_;
my $ret = '';
eval q{use HTML::Packer};
error $@ if $@;
my $packer = HTML::Packer->init();
$ret = $packer->minify( \$params{content}, { html5 => $config{html5} } );
return $ret;
}
1