diff scripts/minifier/minify.sh @ 12:1596660ddf72

Add minifier script for otr.js and its dependencies
author souliane <souliane@mailoo.org>
date Wed, 03 Sep 2014 19:38:05 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scripts/minifier/minify.sh	Wed Sep 03 19:38:05 2014 +0200
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+# This is a helping script to minify HTML/CSS/JavaScript files
+
+# Minify JS for Libervia's OTR - https://github.com/arlolra/otr
+TOOL="yui compressor"
+OTR_INPUT="otr/dep/bigint.js otr/dep/crypto.js otr/dep/eventemitter.js"
+OTR_APPEND="otr/otr.min.js"
+OTR_OUTPUT="otr.min.js"
+
+rm -f $OTR_OUTPUT
+if [[ $TOOL = "closure compiler" ]]; then
+    # use https://developers.google.com/closure/compiler/
+    # requires Java 7 SDK + compiler.jar in the current directory
+    echo "Minifying $OTR_INPUT with closure compiler"
+    java -jar compiler.jar  --js_output_file=$OTR_OUTPUT $OTR_INPUT
+else
+    for FILE in $OTR_INPUT; do
+        if [[ $TOOL = "slimit" ]]; then
+            # use https://pypi.python.org/pypi/slimit
+            echo "Minifying $FILE with slimit"
+            slimit $FILE >> $OTR_OUTPUT
+        elif [[ $TOOL = "yui compressor" ]]; then
+            # use https://pypi.python.org/pypi/yuicompressor
+            echo "Minifying $FILE with YUI compressor"
+            yuicompressor -o tmp.js $FILE
+            cat tmp.js >> $OTR_OUTPUT
+            rm -f tmp.js
+        fi
+    done
+fi
+cat $OTR_APPEND >> $OTR_OUTPUT
+echo "The file $OTR_OUTPUT includes:
+    - minified versions of the following otr.js dependencies:
+      $OTR_INPUT
+      The following minification tool has been used: $TOOL
+    - minified version of otr.js taken from the project homepage
+
+All original files can be retrieved from otr.js repository:
+    https://github.com/arlolra/otr/tree/master/build
+" > "$OTR_OUTPUT"_README
+
+
+