aboutsummaryrefslogtreecommitdiff
path: root/japanese/font-mplus/files/pkg-install.in
blob: f023db2a2d5bdb9349505da590f26212a6a4f700 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#!/bin/sh
# $FreeBSD$

X_FONTSDIR=%%X_FONTSDIR%%

catfontsdir ()
{
    while read _IN
    do
      case "${_IN}" in
      *-mplus-*|[0-9]*|"") ;;
      *)       echo ${_IN} ;;
      esac
    done
}

ROMA=""
ITAL="ai=0.15"
OBLI="ai=0.15"
RITA="ai=0.08"
ROBL="ai=0.08"

make_xlfd()
{
	_enc=$1
	_file=$2
	_vendor=$3
	_weight=$4
	_fname=$5
	_poc=$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 --	"${ROMA}"	r \
		${ITAL}		i \
		${OBLI}		o \
		${RITA}		ri \
		${ROBL}		ro;
	while [ $# != 0 ]; do
		_prefix="${PFIX}:$1"; shift
		_variant=$1; shift
		printf "%s:%s -%s-%s-%s-%s-normal--0-0-0-0-%s-0-%s\n" \
			$_prefix $_file $_vendor $_fname $_weight $_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
	do
		for W in black bold heavy light medium regular thin
		do
			make_xlfd $ENC mplus-1c-${W}.ttf mplus $W  1c p
			make_xlfd $ENC mplus-2c-${W}.ttf mplus $W  2c p
			make_xlfd $ENC mplus-1p-${W}.ttf mplus $W  1p p
			make_xlfd $ENC mplus-2p-${W}.ttf mplus $W  2p p
			make_xlfd $ENC mplus-1m-${W}.ttf mplus $W  1m c
			make_xlfd $ENC mplus-1mn-${W}.ttf mplus $W 1mn c
			make_xlfd $ENC mplus-2m-${W}.ttf mplus $W  2m c
		done
	done
}

nfonts ()
{
    _L=0; while read _IN; do _L=$((${_L}+1)); done; echo ${_L}
}

case "$2" in
POST-INSTALL)
	%%LOCALBASE%%/bin/fc-cache -s -f -v ${X_FONTSDIR}/TTF ${X_FONTSDIR}/misc

	cd ${X_FONTSDIR}/TTF
	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

	cd ${X_FONTSDIR}/misc
	%%LOCALBASE%%/bin/mkfontdir ${X_FONTSDIR}/misc
	touch fonts.alias
	grep -v -- "mplus[_-]" fonts.alias > fonts.alias.tmp
	cat fonts.alias.tmp %%FONTSALIAS%% > fonts.alias
	rm -f fonts.alias.tmp
	;;
DEINSTALL)
	%%LOCALBASE%%/bin/fc-cache -s -f -v ${X_FONTSDIR}/TTF ${X_FONTSDIR}/misc
	rm -f ${X_FONTSDIR}/TTF/fonts.cache-1 ${X_FONTSDIR}/misc/fonts.cache-1

	cd ${X_FONTSDIR}/TTF
	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

	cd ${X_FONTSDIR}/misc
	%%LOCALBASE%%/bin/mkfontdir ${X_FONTSDIR}/misc
	if [ -r ${X_FONTSDIR}/misc/fonts.dir -a `/usr/bin/wc -l < ${X_FONTSDIR}/misc/fonts.dir` = 1 ]; then
		rm -f ${X_FONTSDIR}/misc/fonts.dir
	fi
	touch fonts.alias
	grep -v -- "mplus[_-]" fonts.alias > fonts.alias.tmp
	if [ -s fonts.alias.tmp ]; then
		mv fonts.alias.tmp fonts.alias
	else
		rm -f fonts.alias.tmp fonts.alias
	fi

	for D in TTF misc
	do
		rmdir ${X_FONTSDIR}/${D} > /dev/null 2>&1 || true
		if [ -d ${X_FONTSDIR}/${D} ]; then
			%%LOCALBASE%%/bin/fc-cache -s -f -v ${X_FONTSDIR}/${D} || true
		fi
	done
	;;
esac