diff options
-rw-r--r-- | packages/qpf-fonts/files/update-qtfontdir | 78 |
1 files changed, 41 insertions, 37 deletions
diff --git a/packages/qpf-fonts/files/update-qtfontdir b/packages/qpf-fonts/files/update-qtfontdir index 788c0b307d..857dc6c0d5 100644 --- a/packages/qpf-fonts/files/update-qtfontdir +++ b/packages/qpf-fonts/files/update-qtfontdir @@ -2,69 +2,73 @@ usage() { - echo "usage: $0 [font directory, defaults to QTDIR/lib/fonts]" - exit 1 + echo "usage: $0 [font directory, defaults to \$QTDIR/lib/fonts]" + exit 1 } setVar() { - eval "$1='$2'" + eval "$1='$2'" } getVar() { - eval "echo \$$1" + eval "echo \$$1" } handleQPF() { - base=`basename $1` - family=`echo $base|cut -d_ -f1` - pt=`echo $base|cut -d_ -f2` - weight=`echo $base|cut -d_ -f3|sed -e 's,i$,,'` - if (echo $base|cut -d_ -f3|grep -q 'i$'); then - italic="y" - else - italic="n" - fi - echo "$family $base.qpf QPF $italic $weight $pt u" + base=`basename $1` + family=`echo $base|cut -d_ -f1` + pt=`echo $base|cut -d_ -f2` + weight=`echo $base|cut -d_ -f3|sed -e 's,i$,,'` + if (echo $base|cut -d_ -f3|grep -q 'i$'); then + italic="y" + else + italic="n" + fi + echo "$family $base.qpf QPF $italic $weight $pt u" } +if [ "$1" = "-f" ]; then + FORCE=1 + shift +else + FORCE=0 +fi + if [ -z "$1" ]; then - if [ -n "$QTDIR" ]; then - fontdir=$QTDIR/lib/fonts - else - fontdir=/opt/QtPalmtop/lib/fonts - fi + if [ -n "$QTDIR" ]; then + fontdir=$QTDIR/lib/fonts + else + fontdir=/opt/QtPalmtop/lib/fonts + fi else - fontdir=$1 + fontdir=$1 fi - + if ! [ -d $fontdir ]; then - echo Error: $fontdir not a directory - exit 1 + echo Error: $fontdir not a directory + exit 1 fi if [ -e $fontdir/fontdir ]; then - if find $fontdir -newer $fontdir/fontdir | grep "\(qpf\|ttf\)"; then - echo "fontdir needs updating..." - else - echo "fontdir already up to date - exiting" - exit 0 - fi - cat $fontdir/fontdir | grep -v '\.qpf' > $fontdir/fontdir.new -else - echo "fontdir not existing. creating..." + if find $fontdir -newer $fontdir/fontdir | grep -q "\(qpf\|ttf\)"; then + #echo "fontdir needs updating..." + : + elif [ "$FORCE" = "0" ]; then + #echo "fontdir already up to date - exiting" + exit 0 + fi + cat $fontdir/fontdir | grep -v '\.qpf' > $fontdir/fontdir.new fi ( - for file in `ls $fontdir/*.qpf|sed -e's,\.qpf$,,; s,_t[^_]*$,,;'|sort -u`; do - handleQPF $file - done + for file in `ls $fontdir/*.qpf 2>/dev/null |sed -e's,\.qpf$,,; s,_t[^_]*$,,;'|sort -u`; do + handleQPF $file + done ) >> $fontdir/fontdir.new mv $fontdir/fontdir.new $fontdir/fontdir exit 0 - -# vim:ai:et:sts=4:sw=4:tw=0: |