a5da770e67
Xorg is now looking in ${LOCALBASE}/share/fonts by default Xorg now accepts symlinks in etc/X11/fontpath.d (as decribed in Xserver(1)) Large cleanup on lots of font ports All fonts are now properly dynamically generating fonts.dir and fonts.scale instead of sometime overwriting existing ones) All fonts are generating fontconfig's cache Improve consistency in fonts ports
111 lines
2.3 KiB
Bash
111 lines
2.3 KiB
Bash
#!/bin/sh
|
|
# $FreeBSD$
|
|
|
|
FONTSDIR=%%FONTSDIR%%/TTF
|
|
|
|
catfontsdir ()
|
|
{
|
|
while read _IN
|
|
do
|
|
case "${_IN}" in
|
|
*-ipa-migu\ *|[0-9]*|"") ;;
|
|
*) echo ${_IN} ;;
|
|
esac
|
|
done
|
|
}
|
|
|
|
ROMA=""
|
|
BOLD="ds=y"
|
|
ITAL="ai=0.15"
|
|
OBLI="ai=0.15"
|
|
RITA="ai=0.08"
|
|
ROBL="ai=0.08"
|
|
|
|
make_xlfd()
|
|
{
|
|
_enc=$1
|
|
_file=$2
|
|
_vendor=$3
|
|
_fname=$4
|
|
_poc=$5
|
|
_weight=$6
|
|
|
|
case "${_poc}:${_enc}" in
|
|
p:jisx0201.1976-*) PFIX="bw=0.5" ;;
|
|
c:jisx0201.1976-*) PFIX="bw=0.5" ;;
|
|
p:*) PFIX="" ;;
|
|
c:*) PFIX="" ;;
|
|
esac
|
|
|
|
case $_weight in
|
|
bold)
|
|
set -- "" bold-r \
|
|
${ITAL} bold-i \
|
|
${OBLI} bold-o \
|
|
${RITA} bold-ri \
|
|
${ROBL} bold-ro
|
|
while [ $# != 0 ]; do
|
|
_prefix="${PFIX}:$1"; shift
|
|
_variant=$1; shift
|
|
printf "%s:%s -%s-%s-%s-normal--0-0-0-0-%s-0-%s\n" \
|
|
$_prefix $_file $_vendor "$_fname" $_variant $_poc $_enc
|
|
done | sed -e 's,::,:,g' -e 's,^:,,'
|
|
;;
|
|
medium)
|
|
set -- "" medium-r \
|
|
${ITAL} medium-i \
|
|
${OBLI} medium-o \
|
|
${RITA} medium-ri \
|
|
${ROBL} medium-ro
|
|
while [ $# != 0 ]; do
|
|
_prefix="${PFIX}:$1"; shift
|
|
_variant=$1; shift
|
|
printf "%s:%s -%s-%s-%s-normal--0-0-0-0-%s-0-%s\n" \
|
|
$_prefix $_file $_vendor "$_fname" $_variant $_poc $_enc
|
|
done | sed -e 's,::,:,g' -e 's,^:,,'
|
|
;;
|
|
esac
|
|
}
|
|
|
|
addentries ()
|
|
{
|
|
for ENC in iso8859-1 iso10646-1 jisx0201.1976-0 jisx0208.1983-0 jisx0208.1990-0
|
|
do
|
|
make_xlfd $ENC migu-1c-bold.ttf ipa "migu 1c" p bold
|
|
make_xlfd $ENC migu-1c-regular.ttf ipa "migu 1c" p medium
|
|
|
|
make_xlfd $ENC migu-1p-bold.ttf ipa "migu 1p" p bold
|
|
make_xlfd $ENC migu-1p-regular.ttf ipa "migu 1p" p medium
|
|
|
|
make_xlfd $ENC migu-1m-bold.ttf ipa "migu 1m" c bold
|
|
make_xlfd $ENC migu-1m-regular.ttf ipa "migu 1m" c medium
|
|
make_xlfd $ENC migu-2m-bold.ttf ipa "migu 2m" c bold
|
|
make_xlfd $ENC migu-2m-regular.ttf ipa "migu 2m" c medium
|
|
done
|
|
}
|
|
|
|
nfonts ()
|
|
{
|
|
_L=0; while read _IN; do _L=$((${_L}+1)); done; echo ${_L}
|
|
}
|
|
|
|
case "$2" in
|
|
POST-INSTALL)
|
|
cd ${FONTSDIR}
|
|
touch fonts.dir
|
|
(catfontsdir < fonts.dir; addentries) > fonts.dir.tmp
|
|
nfonts < fonts.dir.tmp > fonts.dir
|
|
cat fonts.dir.tmp >> fonts.dir
|
|
rm -f fonts.dir.tmp
|
|
;;
|
|
POST-DEINSTALL)
|
|
cd ${FONTSDIR}
|
|
catfontsdir < fonts.dir > fonts.dir.tmp
|
|
nfonts < fonts.dir.tmp > fonts.dir
|
|
cat fonts.dir.tmp >> fonts.dir
|
|
rm -f fonts.dir.tmp
|
|
if [ -r fonts.dir -a `wc -l < fonts.dir` = 1 ]; then
|
|
rm -f fonts.dir
|
|
fi
|
|
;;
|
|
esac
|