An HTML minification plugin for Pelican, the static site generator.
An HTML minification plugin for
Pelican, the static site generator.
To install the library, you can use
pip.
$ pip install pelican-minify
To use pelican-minify
, you need to make only a single change to your
pelicanconf.py
file (the configuration file that Pelican uses to generate
your static site.
Update your PLUGINS
global, and append minify
to the list, eg:
# pelicanconf.py
# ...
PLUGINS = [
# ...
'minify',
# ...
]
# ...
The next time you build your Pelican site, pelican-minify
will automatically
minify your Pelican pages after they’ve been generated.
pelican-minify
can also be configured by setting MINIFY
to a hash containing
parameters to htmlmin, eg:
# pelicanconf.py
# ...
MINIFY = {
'remove_comments': True,
'remove_all_empty_space': True,
'remove_optional_attribute_quotes': False
}
# ...
This reduces file size and obscures the public source code, but keep in
mind–minifying your static site will increase your Pelican build times, as it
adds extra file processing for each page generated.
NOTE: You should probably include the minify
plugin at the very bottom of
your PLUGINS
array. This will ensure it is the last thing to run, and
doesn’t prematurely gzip any files.
v0.1: 12-4-2012
- First release!
v0.2: 2-12-2013
- Fixing issue with unicode characters.
- Upgrading django-htmlmin dependency.
v0.3: 2-12-2013
- Fixing tests.
v0.4: 2-15-2013
- Upgrading django-htmlmin.
v0.5: 8-28-2014
- Python 3 compatibility (thanks @AlexJF!).
v0.6: 9-9-2014
- Fixing unicode bug (thanks @kura!).
v0.7: 11-4-2014
- Making minification work on .htm files (thanks @Undeterminant!).
v0.8: 5-12-2015
- No longer removing optional quotes from HTML elements. This provides
better compatibility across browsers / etc.
v0.9: 11-25-2015
- Making minify library configurable.
- Removing aggressive whitespace removal (*avoids issues*).