1#!/bin/sh 2 3catfontsdir () 4{ 5 while read _IN 6 do 7 case "${_IN}" in 8 *-ipa-IPAex*|*-ipa-ex*|[0-9]*|"") ;; 9 *) echo ${_IN} ;; 10 esac 11 done 12} 13 14ROMA="" 15BOLD="ds=y" 16ITAL="ai=0.15" 17OBLI="ai=0.15" 18RITA="ai=0.08" 19ROBL="ai=0.08" 20 21make_xlfd() 22{ 23 _enc=$1 24 _file=$2 25 _vendor=$3 26 _fname=$4 27 _poc=$5 28 29 case "${_poc}:${_enc}" in 30 p:jisx0201.1976-*) PFIX="bw=0.5" ;; 31 c:jisx0201.1976-*) PFIX="bw=0.5" ;; 32 p:*) PFIX="" ;; 33 c:*) PFIX="" ;; 34 esac 35 36 set -- "${ROMA}" medium-r \ 37 ${BOLD} bold-r \ 38 ${ITAL} medium-i \ 39 ${ITAL}:${BOLD} bold-i \ 40 ${OBLI} medium-o \ 41 ${OBLI}:${BOLD} bold-o \ 42 ${RITA} medium-ri \ 43 ${RITA}:${BOLD} bold-ri \ 44 ${ROBL} medium-ro \ 45 ${ROBL}:${BOLD} bold-ro 46 while [ $# != 0 ]; do 47 _prefix="${PFIX}:$1"; shift 48 _variant=$1; shift 49 printf "%s:%s -%s-%s-%s-normal--0-0-0-0-%s-0-%s\n" \ 50 $_prefix $_file $_vendor $_fname $_variant $_poc $_enc 51 done | sed -e 's,::,:,g' -e 's,^:,,' 52} 53 54addentries () 55{ 56 for ENC in iso8859-1 iso10646-1 jisx0201.1976-0 jisx0208.1983-0 jisx0208.1990-0 jisx0208.1997-0 jisx0213.2004-1 57 do 58 make_xlfd $ENC ipaexg.otf ipa IPAexGothic c 59 make_xlfd $ENC ipaexg.otf ipa IPAexGothic p 60 make_xlfd $ENC ipaexg.otf ipa exgothic c 61 make_xlfd $ENC ipaexg.otf ipa exgothic p 62 make_xlfd $ENC ipaexm.otf ipa IPAexMincho c 63 make_xlfd $ENC ipaexm.otf ipa IPAexMincho p 64 make_xlfd $ENC ipaexm.otf ipa exmincho c 65 make_xlfd $ENC ipaexm.otf ipa exmincho p 66 done 67} 68 69nfonts () 70{ 71 _L=0; while read _IN; do _L=$((${_L}+1)); done; echo ${_L} 72} 73 74case "$2" in 75POST-INSTALL) 76 cd %%FONTSDIR%% 77 touch fonts.dir 78 (catfontsdir < fonts.dir; addentries) > fonts.dir.tmp 79 nfonts < fonts.dir.tmp > fonts.dir 80 cat fonts.dir.tmp >> fonts.dir 81 rm -f fonts.dir.tmp 82 ;; 83POST-DEINSTALL) 84 cd %%FONTSDIR%% 85 catfontsdir < fonts.dir > fonts.dir.tmp 86 nfonts < fonts.dir.tmp > fonts.dir 87 cat fonts.dir.tmp >> fonts.dir 88 rm -f fonts.dir.tmp 89 if [ -r fonts.dir -a `wc -l < fonts.dir` = 1 ]; then 90 rm -f fonts.dir 91 fi 92 ;; 93esac 94