HTML::Packer - Another HTML code cleaner
<a href='https://travis-ci.org/leejo/html-packer-perl?branch=master'><img src='https://travis-ci.org/leejo/html-packer-perl.svg?branch=master' alt='Build Status' /></a>
<a href='https://coveralls.io/r/leejo/html-packer-perl'><img src='https://coveralls.io/repos/leejo/html-packer-perl/badge.png?branch=master' alt='Coverage Status' /></a>
Version 2.10
A HTML Compressor.
use HTML::Packer;
my $packer = HTML::Packer->init();
$packer->minify( $scalarref, $opts );
To return a scalar without changing the input simply use (e.g. example 2):
my $ret = $packer->minify( $scalarref, $opts );
For backward compatibility it is still possible to call 'minify' as a function:
HTML::Packer::minify( $scalarref, $opts );
First argument must be a scalarref of HTML-Code. Second argument must be a hashref of options. Possible options are
-
remove_comments
HTML-Comments will be removed if 'remove_comments' has a true value. Comments starting with
<!--#
,<!--[
or<!-- google_ad_section_
will be preserved unless 'remove_comments_aggressive' has a true value. -
remove_comments_aggressive
See 'remove_comments'.
-
remove_newlines
ALL newlines will be removed if 'remove_newlines' has a true value.
-
do_javascript
Defines compression level for javascript. Possible values are 'clean', 'obfuscate', 'shrink' and 'best'. Default is no compression for javascript. This option only takes effect if JavaScript::Packer is installed.
-
do_stylesheet
Defines compression level for CSS. Possible values are 'minify' and 'pretty'. Default is no compression for CSS. This option only takes effect if CSS::Packer is installed.
-
do_csp
Defines hash algorithm for
Content-Security-Policy
, or CSP, hashes of embedded<script>
and<style>
tags.Allowed values are
'sha256'
,'sha384'
,'sha512'
.It may be left blank or set to a Perl false value to indicate that hashes should not be calculated, if performance is a concern.
-
no_compress_comment
If not set to a true value it is allowed to set a HTML comment that prevents the input being packed.
<!-- HTML::Packer _no_compress_ -->
Is not set by default.
-
html5
If set to a true value closing slashes will be removed from void elements.
-
csp
If
do_csp
is set to'sha256'
, returns a hash that looks like this:( 'script-src' => [qw( sha256-...= sha256-...= )], 'style-src' => [qw( sha256-...= sha256-...= )], )
with each element of the
ARRAY
refs containing a CSP-friendly hash for a<script>
or<style>
tag.
Merten Falk, <nevesenin at cpan.org>
. Now maintained by Lee
Johnson (LEEJO) with contributions from:
Alexander Krizhanovsky <ak@natsys-lab.com>
Bas Bloemsaat <bas@bloemsaat.com>
girst <girst@users.noreply.github.com>
Ankit Pati (ANKITPATI) <contact@ankitpati.in>
Please report any bugs or feature requests through the web interface at https://github.com/leejo/html-packer-perl/issues. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
You can find documentation for this module with the perldoc command.
perldoc HTML::Packer
Copyright 2009 - 2011 Merten Falk, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.