Skip to content

Commit b0ab64e

Browse files
committed
Committing my light node.js wrapper around the broken node-cssmin.
1 parent 82defbe commit b0ab64e

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

bin/cssmin

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
#! /usr/bin/env node
2+
3+
var cssmin = require('cssmin').cssmin
4+
, fs = require('fs')
5+
, _ = require('underscore')
6+
, files = _.uniq(process.argv.slice(2))
7+
, count = files.length
8+
;
9+
10+
if (files.length)
11+
load(files.shift());
12+
13+
function load(fn) {
14+
fs.readFile(fn, 'utf-8', function gotFile(e, file) {
15+
if (e) return fail(e, 'loading '+ fn);
16+
return minify(file);
17+
});
18+
}
19+
20+
function fail(e, when) {
21+
console.error('jsmin error '+ when +': '+ e);
22+
process.exit(1 + count - files.length);
23+
}
24+
25+
function minify(css) {
26+
process.stdout.write(cssmin(css));
27+
done();
28+
}
29+
30+
function done(e, fn) {
31+
if (e)
32+
fail(e, 'saving '+ fn);
33+
else if (files.length)
34+
load(files.shift());
35+
else
36+
process.exit(0);
37+
}

0 commit comments

Comments
 (0)