#!/bin/sh 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" m thin make_xlfd ${ENC} GenShinGothic-Monospace-Light.ttf adobe "gen shin gothic monospace" m extralight make_xlfd ${ENC} GenShinGothic-Monospace-Normal.ttf adobe "gen shin gothic monospace" m light make_xlfd ${ENC} GenShinGothic-Monospace-Regular.ttf adobe "gen shin gothic monospace" m book make_xlfd ${ENC} GenShinGothic-Monospace-Medium.ttf adobe "gen shin gothic monospace" m medium make_xlfd ${ENC} GenShinGothic-Monospace-Bold.ttf adobe "gen shin gothic monospace" m bold make_xlfd ${ENC} GenShinGothic-Monospace-Heavy.ttf adobe "gen shin gothic monospace" m 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