diff options
author | Thomas Bruederli <thomas@roundcube.net> | 2013-01-24 14:00:15 +0100 |
---|---|---|
committer | Thomas Bruederli <thomas@roundcube.net> | 2013-01-24 14:00:15 +0100 |
commit | 55ee252d65832c48d8b566852416418bec4082e5 (patch) | |
tree | 929f4632d849ec1d47d02fff93bd750a35755df4 | |
parent | 40917b0b340575556a31edbec0cda3ec1ef6f918 (diff) |
Allow to shrink any file passed as argument
-rwxr-xr-x | bin/jsshrink.sh | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/bin/jsshrink.sh b/bin/jsshrink.sh index 9cfd660bb..1d77ff388 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 @@ if [ ! -r "$JAR_DIR/compiler.jar" ]; then 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 @@ for fn in app common googiespell list; do 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 |