#!/bin/sh # $FreeBSD$ catfontsdir () { while read _IN do case "${_IN}" in *-ipa-IPAUI*|*-ipa-[MU]*) echo ${_IN} ;; *-ipa-[Mm]incho-*|*-ipa-[Gg]othic-*|*-ipa-IPA[PMmGg]*|[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 case "${_poc}:${_enc}" in p:jisx0201.1976-*) PFIX="bw=0.5" ;; c:jisx0201.1976-*) PFIX="bw=0.5" ;; p:*) PFIX="" ;; c:*) PFIX="" ;; esac set -- "${ROMA}" medium-r \ ${BOLD} bold-r \ ${ITAL} medium-i \ ${ITAL}:${BOLD} bold-i \ ${OBLI} medium-o \ ${OBLI}:${BOLD} bold-o \ ${RITA} medium-ri \ ${RITA}:${BOLD} bold-ri \ ${ROBL} medium-ro \ ${ROBL}:${BOLD} 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,^:,,' } 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 ipag.otf ipa IPAGothic c make_xlfd $ENC ipag.otf ipa gothic c make_xlfd $ENC ipagp.otf ipa IPAPGothic p make_xlfd $ENC ipagp.otf ipa gothic p make_xlfd $ENC ipam.otf ipa IPAMincho c make_xlfd $ENC ipam.otf ipa mincho c make_xlfd $ENC ipamp.otf ipa IPAPMincho p make_xlfd $ENC ipamp.otf ipa mincho p 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