#!/bin/csh -f # create_pk_tfm - Font-creation for NTeX V1.0 # Copyright 1994, Frank Langbein # All rights reserved. # # Redistributions of this script must retain the above copyright notice, # this condition and the following disclaimer. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. if ($#argv < 4) then echo "Usage: $0 font_source main_directory type size [size ...]." exit(1) endif #remember old dir set curr_dir=`pwd` # set parameters set f_source=$1 set main_dir=$2 set f_type=$3 shift shift shift # source directory... if (! -d $main_dir) then echo "WARNING: "$f_type"-font "$f_source" in "$main_dir" not installed." echo "WARNING: "$f_type"-font "$f_source" in "$main_dir" not installed" >>$curr_dir/create.log exit(0) endif if (! -d $main_dir/src) then echo "WARNING: "$f_type"-font "$f_source" in "$main_dir" not installed." echo "WARNING: "$f_type"-font "$f_source" in "$main_dir" not installed" >>$curr_dir/create.log exit(0) endif cd $main_dir/src # fonttype if ($f_type == cm) then set mf_cmd=cmmf else set mf_cmd=mf endif echo "$f_type"-font $f_source at $argv echo Font directory is $main_dir # do all directories exist? if (! -d ../tfm) then echo Creating tfm directory in $main_dir mkdir ../tfm endif if (! -d ../pk) then echo Creating pk directory in $main_dir mkdir ../pk endif rm -f c_f.err c_f.out # just in case... set DISPLAY="" foreach f_size ($argv) if ("`echo $f_size | grep :`" != "") then set o_size=`echo $f_size | sed -e "s/:[./M0-9]*//"` set cmags=`echo $f_size | sed -e "s/[.0-9]*://"` if ("`echo $cmags | grep ^M`" != "") then set mags="magstep(`echo $cmags | sed -e s/^M//`)" else set mags=$cmags endif else set cmags="M0" set mags="magstep(0)" set o_size=$f_size endif echo "Creating "$f_type"-font "$f_source$o_size" at "$cmags >>$curr_dir/create.log echo -n ".................($f_source$o_size at $cmags" if (! -e "./"$f_source$o_size".mf") then if (-e /usr/bin/MakeTeXMF) then echo -n ",MakeTeXMF" /usr/bin/MakeTeXMF $f_source$o_size &/dev/null if (-e "/usr/lib/texmf/fonts/tmp/src/"$f_source$o_size".mf") then mv "/usr/lib/texmf/fonts/tmp/src/"$f_source$o_size".mf" . echo "Created "$f_source$o_size".mf in "$main_dir"/src" >>$curr_dir/create.log endif else echo -n ":/usr/bin/MakeTeXMF DOES NOT EXIST" echo "ERROR: /usr/bin/MakeTeXMF does not exist" >>$curr_dir/create.log endif endif if (-e "./"$f_source$o_size".mf") then echo -n ",$mf_cmd" $mf_cmd "\mode=localfont; scrollmode; mag=$mags;" input $f_source$o_size &c_f.out grep ^! c_f.out >&/dev/null if ($? == 0) then echo "ERROR: MetaFont - see "$f_source".ferr" >>$curr_dir/create.log echo -n ":ERROR" if (! -e c_f.err) then echo MetaFont error log for "$f_type"-font $f_source >c_f.err echo ------------------------------------------------------------------------------ >>c_f.err endif echo "$f_type"-font $f_source$o_size at magification $cmags >>c_f.err echo >>c_f.err cat c_f.out >>c_f.err echo ------------------------------------------------------------------------------ >>c_f.err endif echo -n ",gftopk" gftopk "$f_source$o_size".*gf >&/dev/null echo -n ",pk" mv -f "$f_source$o_size".*pk ../pk >&/dev/null echo -n ",tfm" mv -f "$f_source$o_size".tfm ../tfm >&/dev/null rm -f "$f_source$o_size".*gf "$f_source$o_size".log >&/dev/null else echo "WARNING: font not installed" >>$curr_dir/create.log echo -n ":FONT NOT INSTALLED" endif echo ")" end if (-e c_f.err) then mv c_f.err $curr_dir/$f_source".ferr" endif echo ------------------------------------------------------------------------------ rm -f c_f.out cd $curr_dir