nerd-fonts/bin/scripts/archive-fonts.sh

50 lines
1.5 KiB
Bash
Raw Normal View History

2018-07-09 16:20:40 +02:00
#!/usr/bin/env bash
2018-03-03 20:14:22 +01:00
# Nerd Fonts Version: 2.0.0
# Script Version: 1.1.0
# Iterates over all patched fonts directories
# to generate ruby cask files for homebrew-fonts (https://github.com/caskroom/homebrew-fonts)
# adds Windows versions of the fonts as well (casks files just won't download them)
#set -x
LINE_PREFIX="# [Nerd Fonts] "
scripts_root_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/"
echo "dir $scripts_root_dir"
outputdir=$scripts_root_dir/../../archives/
cd "$scripts_root_dir/../../patched-fonts/" || {
2017-05-14 00:02:53 +02:00
echo >&2 "$LINE_PREFIX Could not find patched fonts directory"
exit 1
}
# limit archiving to given pattern (first script param) or entire root folder if no param given:
if [ $# -eq 1 ]
then
2018-04-01 22:30:03 +02:00
pattern="$1"
2018-04-01 21:39:36 +02:00
search_pattern="*$1*.zip"
2018-04-01 22:30:03 +02:00
echo "$LINE_PREFIX Limiting archive to pattern '$pattern'"
else
pattern="."
2018-04-01 21:39:36 +02:00
search_pattern="*.zip"
echo "$LINE_PREFIX No limting pattern given, will search entire folder"
fi
# clear out the directory zips
2018-04-01 21:39:36 +02:00
find "${outputdir:?}" -name "$search_pattern" -type f -delete
#find ./Hack -maxdepth 0 -type d | # uncomment to test 1 font
2016-11-19 02:27:38 +01:00
#find ./ProFont -maxdepth 0 -type d | # uncomment to test 1 font
2018-04-01 22:30:03 +02:00
find "./$pattern" -maxdepth 0 -type d | # uncomment to test all fonts
while read -r filename
do
basename=$(basename "$filename")
searchdir=$filename
[[ -d "$outputdir" ]] || mkdir -p "$outputdir"
2018-04-01 22:30:03 +02:00
# -ic (ignore case not working)
zip "$outputdir/$basename" -rj "$searchdir" -i '*.[o,t]tf' -i '*.[O,T]TF'
done