Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I combine and compress multiple script and css files for production use?

I want to use YUI Compressor to combine and compress my css and js file sets when I compile my project. YUI Compressor only takes as input single files. I've tried using the following (Windows) commands to append to the output files, but strange characters appear in the output where appendage occurs. How can I use windows command line or powershell to achieve this?

java -jar yuicompressor-2.4.2.jar --charset utf-8 jquery-1.3.2.js > scripts-all.min.js
java -jar yuicompressor-2.4.2.jar --charset utf-8 jquery.superfish.js >> scripts-all.min.js
like image 262
BC. Avatar asked Mar 10 '09 23:03

BC.


2 Answers

My simple solution (before knowing about the .NET port of YUI Compressor) was to:

copy /b jquery.js+jquery.superfish.js+jquery.qtip.js+NOTICE core.js
java -jar yuicompressor-2.4.2.jar --charset utf-8 -o core-min.js core.js

That has been working fine for me even though I can't quite understand why the /b (binary) flag was the trick that got rid of the strange characters. If anyone wants to enlighten me in a comment I'd appreciate it.

like image 188
Aaron Wagner Avatar answered Nov 20 '22 17:11

Aaron Wagner


If you're developing on Windows, don't forget there's a .NET port of YUI Compressor. You can do all that as a post-build event in visual studio, as part of a TFS Build or just import the dll's into your application and use it in that (eg. compressing on the fly).

like image 27
Pure.Krome Avatar answered Nov 20 '22 16:11

Pure.Krome