#!/bin/sh # # Generate list of font mappings from groff font names to PostScript names # DEVPSDIR=/usr/home/mats/share/groff_font/devps rm -f $DEVPSDIR/fontnames oifs="$IFS" IFS=" " for f in $(find $DEVPSDIR -type f | sort); do IFS="$oifs" names=$(cat "$f" | nawk -v devpsdir=$DEVPSDIR ' /^internalname / { sub(/^[^ ]+ /, "") fontname = $0 file = (devpsdir "/" fontname) while ((getline < file) > 0) { if ($0 ~ /^[ \t]*\/FullName/) { sub(/^[ \t]*[^ (]+[ (]*/, ""); sub(/[) ]*(readonly )*def$/, "") fullname = $0 break } } close(file) print fontname "\t" fullname exit }') [ -z "$names" ] && continue fontname="${names% *}"; fullname="${names#* }" [ -z "$fullname" ] && fullname=fontname [ -f "$DEVPSDIR/$fontname" ] || continue echo "$(basename $f) $fullname" >>$DEVPSDIR/fontnames done .