The YUI compressor use yui-compressor for compressing javascript and stylesheets.
To use it for your stylesheets add this to your PIPELINE_CSS_COMPRESSOR
PIPELINE_CSS_COMPRESSOR = 'pipeline.compressors.yui.YUICompressor'
To use it for your javascripts add this to your PIPELINE_JS_COMPRESSOR
PIPELINE_JS_COMPRESSOR = 'pipeline.compressors.yui.YUICompressor'
Command line to execute for the YUI program. You will most likely change this to the location of yui-compressor on your system.
Defaults to '/usr/local/bin/yuicompressor'.
Warning
Don’t point to yuicompressor.jar directly, we expect to find a executable script.
Additional arguments to use when compressing CSS.
Defaults to ''.
Additional arguments to use when compressing JavaScript.
Defaults to ''.
The Closure compressor use Google Closure Compiler to compress javascripts.
To use it add this to your PIPELINE_JS_COMPRESSOR
PIPELINE_JS_COMPRESSOR = (
'pipeline.compressors.closure.ClosureCompressor',
)
Command line to execute for the Closure Compiler program. You will most likely change this to the location of closure on your system.
Default to '/usr/local/bin/closure'
Warning
Don’t point to compiler.jar directly, we expect to find a executable script.
Additional arguments to use when closure is called.
Default to ''
The UglifyJS compressor use UglifyJS to compress javascripts.
To use it add this to your PIPELINE_JS_COMPRESSOR
PIPELINE_JS_COMPRESSOR = 'pipeline.compressors.uglifyjs.UglifyJSCompressor'
Command line to execute for the Closure Compiler program. You will most likely change this to the location of closure on your system.
Defaults to '/usr/local/bin/uglifyjs'.
Additional arguments to use when uglifyjs is called.
Default to ''
The jsmin compressor use Douglas Crockford jsmin tool to compress javascripts.
To use it add this to your PIPELINE_JS_COMPRESSOR
PIPELINE_JS_COMPRESSOR = 'pipeline.compressors.jsmin.JSMinCompressor'
The CSStidy compressor use CSStidy to compress stylesheets.
To us it for your stylesheets add this to your PIPELINE_CSS_COMPRESSOR
PIPELINE_CSS_COMPRESSOR = 'pipeline.compressors.csstidy.CSSTidyCompressor'
Command line to execute for csstidy program. You will most likely change this to the location of csstidy on your system.
Defaults to '/usr/local/bin/csstidy'
Additional arguments to use when csstidy is called.
Default to '--template=highest'
To write your own compressor class, for example want to implement other types of compressors.
All you need to do is to create a class that inherits from pipeline.compressors.CompressorBase and implements compress_css and/or a compress_js when needed.
Finally, add it to PIPELINE_CSS_COMPRESSOR or PIPELINE_JS_COMPRESSOR settings (see Configuration for more information).
A custom compressor for a imaginary compressor called jam
from pipeline.compressors import CompressorBase
class JamCompressor(CompressorBase):
def compress_js(self, js):
return jam.compress(js)
def compress(self, css):
return jam.compress(css)
Add it to your settings
PIPELINE_CSS_COMPRESSOR = 'jam.compressors.JamCompressor'
PIPELINE_JS_COMPRESSOR = 'jam.compressors.JamCompressor'