-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfixfonts
91 lines (77 loc) · 2.31 KB
/
fixfonts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#!/bin/sh
# Make links named `lcircle10' for all TFM and GF/PK files, if no
# lcircle10's already exist.
# Don't override definition of prefix and/or libdir if they are
# already defined in the environment.
if [ ! "${prefix}" ]; then
prefix=/usr/local
else
# prefix may contain references to other variables, thanks to make.
eval prefix="${prefix}"
fi
if [ ! "${libdir}" ]; then
libdir="${prefix}/lib/tex"
else
# libdir may contain references to other variables, thanks to make.
eval libdir="${libdir}"
fi
texlibdir="${libdir}"
texfontdir="${texlibdir}/fonts"
# Directories for the different font formats, in case they're not all
# stored in one place.
textfmdir="${texfontdir}"
texpkdir="${texfontdir}"
texgfdir="${texfontdir}"
if [ ! "${TMPDIR}" ]; then
TMPDIR="/tmp"
fi
tempfile="${TMPDIR}/circ$$"
tempfile2="${TMPDIR}/circ2$$"
# Find all the fonts with names that include `circle'.
cd "${texfontdir}"
find . -name '*circle*' -print > "${tempfile}"
# If they have lcircle10.tfm, assume everything is there, and quit.
if grep -s lcircle10.tfm "${tempfile}"
then
echo "Found lcircle10.tfm."
rm -f "${tempfile}"
exit 0
fi
# No TFM file for lcircle. Make a link to circle10.tfm if it exists,
# and then make a link to the bitmap files.
if grep circle10.tfm "${tempfile}" > "${tempfile2}"
then
# We found circle10.tfm. Continue below.
true
else
# No circle10.tfm. Give up.
echo "I can't find any circle fonts in ${texfontdir}."
echo "If it isn't installed somewhere else, you need"
echo "to get the Metafont sources from somewhere, e.g.,"
echo "labrea.stanford.edu:pub/tex/latex/circle10.mf,"
echo "and run Metafont on them."
rm -f ${tempfile}
exit 1
fi
# We have circle10.tfm. (If we have it more than once, take the first
# one.) Make the link.
ln `head -1 "${tempfile2}"` "${textfmdir}/lcircle10.tfm"
echo "Linked to `head -1 ${tempfile2}`."
# Now make a link for the PK files, if any.
grep 'circle10.*pk' "${tempfile}" > "${tempfile2}"
cd "${texpkdir}"
for f in `cat ${tempfile2}`
do
ln "$f" `dirname "$f"`/l`basename "$f"`
echo "Linked to $f."
done
# And finally for the GF files.
grep 'circle10.*gf' "${tempfile}" > "${tempfile2}"
cd "${texgfdir}"
for f in `cat "${tempfile2}"`
do
ln "$f" `dirname "$f"`/l`basename "$f"`
echo "Linked to $f."
done
rm -f "${tempfile}" "${tempfile2}"
# eof