74 lines
1.5 KiB
Bash
Executable file
74 lines
1.5 KiB
Bash
Executable file
#!/bin/bash -e
|
|
|
|
# Uses svgo and also https://github.com/RazrFalcon/svgcleaner unless run with
|
|
# --no-svgcleaner.
|
|
|
|
SVGCLEANER=svgcleaner
|
|
SVGO=./node_modules/svgo/bin/svgo
|
|
|
|
for opt in "$@"; do
|
|
case $opt in
|
|
--no-svgcleaner)
|
|
unset SVGCLEANER
|
|
;;
|
|
*)
|
|
echo "Unknown option: $opt"
|
|
exit 129
|
|
;;
|
|
esac
|
|
done
|
|
|
|
svgo_optimize() {
|
|
echo "$1 -> $2"
|
|
$SVGO --quiet --multipass -i "$1" -o "$2"
|
|
}
|
|
|
|
svgcleaner_optimize() {
|
|
echo "$1 -> $2"
|
|
|
|
if [[ $SVGCLEANER ]]; then
|
|
$SVGCLEANER --multipass true "$1" "$2"
|
|
else
|
|
cp "$1" "$2"
|
|
fi
|
|
}
|
|
|
|
svg_optimize () {
|
|
svgcleaner_optimize "$1" "$2"
|
|
|
|
$SVGO --quiet --multipass -i "$2"
|
|
|
|
if [[ $SVGCLEANER ]]; then
|
|
$SVGCLEANER --multipass true "$2" "$2"
|
|
fi
|
|
}
|
|
|
|
# pieces
|
|
for pset in alpha chess7 chessnut fantasy letter merida mono pirouetti reillycraig spatial shapes; do
|
|
mkdir -p public/piece/$pset
|
|
for file in public/piece-src/$pset/*.svg; do
|
|
svg_optimize $file $(echo $file | sed 's#/piece-src/#/piece/#')
|
|
done
|
|
done
|
|
|
|
# pieces broken by svgcleaner
|
|
for pset in cburnett; do
|
|
mkdir -p public/piece/$pset
|
|
for file in public/piece-src/$pset/*.svg; do
|
|
svgo_optimize $file $(echo $file | sed 's#/piece-src/#/piece/#')
|
|
done
|
|
done
|
|
|
|
# pieces broken by svgo
|
|
for pset in companion; do
|
|
mkdir -p public/piece/$pset
|
|
for file in public/piece-src/$pset/*.svg; do
|
|
svgcleaner_optimize $file $(echo $file | sed 's#/piece-src/#/piece/#')
|
|
done
|
|
done
|
|
|
|
# logo
|
|
for file in public/images/bN-bg.src.svg public/images/wN-bg.src.svg; do
|
|
svg_optimize $file $(echo $file | sed 's#.src.svg#.svg#')
|
|
done
|