diff options
-rw-r--r-- | PKGBUILD | 2 | ||||
-rwxr-xr-x | build | 54 | ||||
-rw-r--r-- | groff-dejavu.sh | 2 |
3 files changed, 41 insertions, 17 deletions
@@ -1,7 +1,7 @@ pkgname='groff-dejavu' pkgdesc="Generates required files to use DejaVu fonts in groff." pkgrel=1 -pkgver=0 +pkgver=1 arch=('any') license=('GPL3') depends=('groff' 'ttf-dejavu') @@ -1,6 +1,32 @@ #!/bin/bash +# Ilya Kuzmin; Russia, Saint-Petersbugr, 2019. © +# Generate DejaVu font descriptions to enable it in groff. + output=font +function register_font +{ + local base_name="$1"; shift; + local font_name="$1"; shift; + + echo $font_name + + local internalname=`awk '/^internalname/{print $2;}' $font_name` + + + if ! grep "\b$internalname\t" "$output/devpdf/download" &>/dev/null; then + echo -e "\t$internalname\t../$base_name.pfa" >> $output/devpdf/download + else + echo "Font with name '$internalname' already present in '$output/devpdf/download'" + fi + + if ! grep "\b$internalname\t" $output/devps/download &>/dev/null; then + echo -e "\t$internalname\t../$base_name.pfa" >> $output/devps/download + else + echo "Font with name '$internalname' already present in '$output/devps/download'" + fi +} + ttf=$(find /usr/share/fonts/TTF/ -name "DejaVu*") if [ -z "$ttf" ]; then echo "Make sure ttf-dejavu is installed" @@ -64,28 +90,26 @@ for name in $ttf; do font_name=${font_name/DejaVuMathTeXGyre/DeVuTex} fi - echo $font_name if ! afmtodit $output/$base_name.afm $textmap $font_name 2>/dev/null; then - echo "Can't generate groff font descritpion for $base_name" + echo "Can't generate groff font description '$font_name' for '$base_name'" echo -1 fi - internalname=`awk '/^internalname/{print $2;}' $font_name` + register_font $base_name $font_name - if ! grep "\b$internalname\t" "$output/devpdf/download" &>/dev/null; then - echo -e "\t$internalname\t../$base_name.pfa" >> $output/devpdf/download - else - echo "Font with name '$internalname' already present in '$output/devpdf/download'" - fi + cp $font_name $output/devps/ + cp $font_name $output/devpdf/ - if ! grep "\b$internalname\t" $output/devps/download &>/dev/null; then - echo -e "\t$internalname\t../$base_name.pfa" >> $output/devps/download - else - echo "Font with name '$internalname' already present in '$output/devps/download'" + if [[ "$font_name" == "DeVuSaMoR" ]]; then + for dev in devps devpdf; do + echo "Link $font_name -> $dev/DeVuSeMo, $dev/DeVuSaMo" + cd $output/$dev; + ln -s DeVuSaMoR DeVuSaMo + ln -s DeVuSaMoR DeVuSeMo + cd - >/dev/null; + done fi - rm $output/$base_name.afm - cp $font_name $output/devps/ - mv $font_name $output/devpdf/ + rm $output/$base_name.afm $font_name done diff --git a/groff-dejavu.sh b/groff-dejavu.sh index 6a3db86a631f..7548439a2e12 100644 --- a/groff-dejavu.sh +++ b/groff-dejavu.sh @@ -1,2 +1,2 @@ #!/bin/sh -export GROFF_FONT_PATH+=/usr/local/share/groff-dejavu +export GROFF_FONT_PATH=/usr/local/share/groff-dejavu |