1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- #!/bin/sh
- # Auxiliary script to work around TeX 3.0 bug. ---- tex3patch ----
- # patches texinfo.tex in current directory, or in directory given as arg.
- ANYVERSION=no
- for arg in $1 $2
- do
- case $arg in
- --dammit | -d ) ANYVERSION=yes ;;
- * ) dir=$arg
- esac
- done
- if [ -z "$dir" ]; then
- dir='.'
- fi
- if [ 2 -lt $# ] || [ ! -f "$dir/texinfo.tex" ]; then
- echo "To patch texinfo.tex for peaceful coexistence with Unix TeX 3.0,"
- echo "run $0"
- echo "with no arguments in the same directory as texinfo.tex; or run"
- echo " $0 DIRECTORY"
- echo "(where DIRECTORY is a path leading to texinfo.tex)."
- exit
- fi
- if [ -z "$TMPDIR" ]; then
- TMPDIR=/tmp
- fi
- echo "Checking for \`dummy.tfm'"
- ( cd $TMPDIR; tex '\relax \batchmode \font\foo=dummy \bye' )
- grep -s '3.0' $TMPDIR/texput.log
- if [ 1 = "$?" ] && [ "$ANYVERSION" != "yes" ]; then
- echo "You probably do not need this patch,"
- echo "since your TeX does not seem to be version 3.0."
- echo "If you insist on applying the patch, run $0"
- echo "again with the option \`--dammit'"
- exit
- fi
- grep -s 'file not found' $TMPDIR/texput.log
- if [ 0 = $? ]; then
- echo "This patch requires the dummy font metric file \`dummy.tfm',"
- echo "which does not seem to be part of your TeX installation."
- echo "Please get your TeX maintainer to install \`dummy.tfm',"
- echo "then run this script again."
- exit
- fi
- rm $TMPDIR/texput.log
- echo "Patching $dir/texinfo.tex"
- sed -e 's/%%*\\font\\nullfont/\\font\\nullfont/' \
- $dir/texinfo.tex >$TMPDIR/texinfo.tex
- mv $dir/texinfo.tex $dir/texinfo.tex-distrib; mv $TMPDIR/texinfo.tex $dir
- if [ 0 = $? ]; then
- echo "Patched $dir/texinfo.tex to avoid TeX 3.0 bug."
- echo "The original version is saved as $dir/texinfo.tex-distrib."
- else
- echo "Patch failed. Sorry."
- fi
- ----------------------------------------tex3patch ends
|