freebsd-ports/japanese/font-genshingothic/files/pkg-install.in
2016-07-22 11:04:06 +00:00

124 lines
3.6 KiB
Bash

#!/bin/sh
# $FreeBSD$
catfontsdir()
{
while read _IN
do
case "${_IN}" in
*"-adobe-gen shin gothic"*|[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
set -- "" ${_weight}-r \
${ITAL} ${_weight}-i \
${OBLI} ${_weight}-o \
${RITA} ${_weight}-ri \
${ROBL} ${_weight}-ro
while [ $# != 0 ]; do
_prefix="${PFIX}:$1"; shift
_variant=$1; shift
[ ${index_type} = "scale" -a ${_prefix} != ":" ] && continue
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,^:,,'
}
addentries()
{
for ENC in iso8859-1 iso10646-1 jisx0201.1976-0 jisx0208.1983-0 jisx0208.1990-0 jisx0208.1997-0 jisx0213.2004-1
do
make_xlfd ${ENC} GenShinGothic-ExtraLight.ttf adobe "gen shin gothic" p thin
make_xlfd ${ENC} GenShinGothic-Light.ttf adobe "gen shin gothic" p extralight
make_xlfd ${ENC} GenShinGothic-Normal.ttf adobe "gen shin gothic" p light
make_xlfd ${ENC} GenShinGothic-Regular.ttf adobe "gen shin gothic" p book
make_xlfd ${ENC} GenShinGothic-Medium.ttf adobe "gen shin gothic" p medium
make_xlfd ${ENC} GenShinGothic-Bold.ttf adobe "gen shin gothic" p bold
make_xlfd ${ENC} GenShinGothic-Heavy.ttf adobe "gen shin gothic" p black
make_xlfd ${ENC} GenShinGothic-P-ExtraLight.ttf adobe "gen shin gothic p" p thin
make_xlfd ${ENC} GenShinGothic-P-Light.ttf adobe "gen shin gothic p" p extralight
make_xlfd ${ENC} GenShinGothic-P-Normal.ttf adobe "gen shin gothic p" p light
make_xlfd ${ENC} GenShinGothic-P-Regular.ttf adobe "gen shin gothic p" p book
make_xlfd ${ENC} GenShinGothic-P-Medium.ttf adobe "gen shin gothic p" p medium
make_xlfd ${ENC} GenShinGothic-P-Bold.ttf adobe "gen shin gothic p" p bold
make_xlfd ${ENC} GenShinGothic-P-Heavy.ttf adobe "gen shin gothic p" p black
make_xlfd ${ENC} GenShinGothic-Monospace-ExtraLight.ttf adobe "gen shin gothic monospace" c thin
make_xlfd ${ENC} GenShinGothic-Monospace-Light.ttf adobe "gen shin gothic monospace" c extralight
make_xlfd ${ENC} GenShinGothic-Monospace-Normal.ttf adobe "gen shin gothic monospace" c light
make_xlfd ${ENC} GenShinGothic-Monospace-Regular.ttf adobe "gen shin gothic monospace" c book
make_xlfd ${ENC} GenShinGothic-Monospace-Medium.ttf adobe "gen shin gothic monospace" c medium
make_xlfd ${ENC} GenShinGothic-Monospace-Bold.ttf adobe "gen shin gothic monospace" c bold
make_xlfd ${ENC} GenShinGothic-Monospace-Heavy.ttf adobe "gen shin gothic monospace" c black
done
}
nfonts()
{
_L=0; while read _IN; do _L=$((${_L}+1)); done; echo ${_L}
}
install_fontsdir()
{
index_type=${1:-"dir"}
index="fonts.${index_type}"
tmpfile="${index}.tmp"
touch ${index}
(catfontsdir < ${index}; addentries ${index_type}) > ${tmpfile}
nfonts < ${tmpfile} > ${index}
cat ${tmpfile} >> ${index}
rm -f ${tmpfile}
}
deinstall_fontsdir()
{
index_type=${1:-"dir"}
index="fonts.${index_type}"
tmpfile="${index}.tmp"
catfontsdir < ${index} > ${tmpfile}
nfonts < ${tmpfile} > ${index}
cat ${tmpfile} >> ${index}
rm -f ${tmpfile}
if [ -r ${index} -a $(wc -l < ${index}) = 1 ]; then
rm -f ${index}
fi
}
case "$2" in
POST-INSTALL)
cd %%FONTSDIR%%
install_fontsdir dir
install_fontsdir scale
;;
POST-DEINSTALL)
cd %%FONTSDIR%%
deinstall_fontsdir dir
deinstall_fontsdir scale
;;
esac