From 55ee252d65832c48d8b566852416418bec4082e5 Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Thu, 24 Jan 2013 08:00:15 -0500
Subject: [PATCH] Allow to shrink any file passed as argument

---
 bin/jsshrink.sh |   23 +++++++++++++++++++++--
 1 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/bin/jsshrink.sh b/bin/jsshrink.sh
index 9cfd660..1d77ff3 100755
--- a/bin/jsshrink.sh
+++ b/bin/jsshrink.sh
@@ -1,11 +1,12 @@
 #!/bin/sh
 JS_DIR=`dirname "$0"`/../program/js
 JAR_DIR='/tmp'
+LANG_IN='ECMASCRIPT3'
 CLOSURE_COMPILER_URL='http://closure-compiler.googlecode.com/files/compiler-latest.zip'
 
 do_shrink() {
 	rm -f "$2"
-	java -jar $JAR_DIR/compiler.jar --compilation_level=SIMPLE_OPTIMIZATIONS --js="$1" --js_output_file="$2"
+	java -jar $JAR_DIR/compiler.jar --compilation_level=SIMPLE_OPTIMIZATIONS --js="$1" --js_output_file="$2" --language_in="$3"
 }
 
 if [ ! -d "$JS_DIR" ]; then
@@ -37,6 +38,24 @@
 	rm -f "/tmp/$$.zip"
 fi
 
+# compress single file from argument
+if [ $# -gt 0 ]; then
+	JS_DIR=`dirname "$1"`
+	JS_FILE="$1"
+
+	if [ $# -gt 1 ]; then
+		LANG_IN="$2"
+	fi
+
+	if [ ! -r "${JS_FILE}.src" ]; then
+		mv "$JS_FILE" "${JS_FILE}.src"
+	fi
+	echo "Shrinking $JS_FILE"
+	do_shrink "${JS_FILE}.src" "$JS_FILE" "$LANG_IN"
+	exit
+fi
+
+# default: compress application scripts
 for fn in app common googiespell list; do
 	if [ -r "$JS_DIR/${fn}.js.src" ]; then
 		echo "$JS_DIR/${fn}.js.src already exists, not overwriting"
@@ -44,5 +63,5 @@
 		mv "$JS_DIR/${fn}.js" "$JS_DIR/${fn}.js.src"
 	fi
 	echo "Shrinking $JS_DIR/${fn}.js"
-	do_shrink "$JS_DIR/${fn}.js.src" "$JS_DIR/${fn}.js"
+	do_shrink "$JS_DIR/${fn}.js.src" "$JS_DIR/${fn}.js" "$LANG_IN"
 done

--
Gitblit v1.9.1