Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F120838265
jsshrink.sh
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Authored By
Unknown
Size
1 KB
Referenced Files
None
Subscribers
None
jsshrink.sh
View Options
#!/bin/sh
set
-e
PWD
=
`
dirname
"
$0
"
`
LANG_IN
=
'ECMASCRIPT5'
do_shrink
()
{
rm -f
"
$2
"
# copy the first comment block with license information for LibreJS
grep -q
'@lic'
$1
&&
sed -n
'/\/\*/,/\*\// { p; /\*\//q; }'
$1
>
$2
uglifyjs --compress --mangle --
$1
>>
$2
}
if
which uglifyjs > /dev/null
2
>
&
1
;
then
:
else
echo
"uglifyjs not found. Please install e.g. 'npm install -g uglify-js'."
exit
1
fi
# compress single file from argument
if
[
$#
-gt
0
]
;
then
JS_FILE
=
"
$1
"
if
[
$#
-gt
1
]
;
then
LANG_IN
=
"
$2
"
fi
echo
"Shrinking
$JS_FILE
"
minfile
=
`
echo
$JS_FILE
|
sed -e
's/\.js$/\.min\.js/'
`
do_shrink
"
$JS_FILE
"
"
$minfile
"
"
$LANG_IN
"
exit
fi
DIRS
=
"
$PWD
/../program/js
$PWD
/../skins/*
$PWD
/../plugins/*
$PWD
/../plugins/*/skins/*
$PWD
/../plugins/managesieve/codemirror/lib"
# default: compress application scripts
for
dir
in
$DIRS
;
do
for
file
in
$dir
/*.js
;
do
if
echo
"
$file
"
|
grep -q -e
'.min.js$'
;
then
continue
fi
if
[
! -f
"
$file
"
]
;
then
continue
fi
echo
"Shrinking
$file
"
minfile
=
`
echo
$file
|
sed -e
's/\.js$/\.min\.js/'
`
do_shrink
"
$file
"
"
$minfile
"
"
$LANG_IN
"
done
done
File Metadata
Details
Attached
Mime Type
text/x-shellscript
Expires
Fri, Apr 24, 1:57 PM (1 w, 20 h ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
db/d8/4dfacb71b0c2b0c73d938dbf451c
Default Alt Text
jsshrink.sh (1 KB)
Attached To
Mode
R113 roundcubemail
Attached
Detach File
Event Timeline