minifycss.sh - www.codemadness.org - www.codemadness.org saait content files
(HTM) git clone git://git.codemadness.org/www.codemadness.org
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
minifycss.sh (822B)
---
1 #!/bin/sh
2 # quick & dirty CSS minifier, sometimes it works(tm).
3
4 #sed -E \
5 # -e 's@^[[:space:]]*@@g' \
6 # -e 's@[[:space:]]*$@@g' | \
7 #tr -d '\n' | \
8 #sed -E \
9 # -e 's@([:,])[[:space:]]*@\1@g' \
10 # -e 's@[[:space:]]*{@{@g'
11
12 tr -d '\r' | \
13 awk '
14 function stripcomments(s) {
15 for (rs = s; ;) {
16 if (!(start = index(rs, "/*")))
17 return rs;
18
19 cs = substr(rs, start + 2);
20 if (!(end = index(cs, "*/")))
21 return rs;
22 rs = substr(rs, 1, start - 1) substr(cs, end + 2);
23 }
24 }
25 {
26 line = $0;
27 gsub("^[[:space:]]*", "", line);
28 gsub("[[:space:]]*$", "", line);
29 data = data line;
30 }
31 END {
32 gsub(":[[:space:]]*", ":", data);
33 gsub(",[[:space:]]*", ":", data);
34 gsub("[[:space:]]*{", "{", data);
35
36 data = stripcomments(data);
37
38 # might break compatibility: last brace not needed.
39 #gsub(";}", "}", data);
40
41 printf("%s", data);
42 }
43 '