aboutsummaryrefslogtreecommitdiffstats
path: root/japanese/font-ipa/files/pkg-install.in
blob: 631dfd4da7d77bd8f9ef3ad527c81539cf62c708 (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
#!/bin/sh
# $FreeBSD$

X_FONTSDIR=%%X_FONTSDIR%%/OTF

catfontsdir ()
{
    while read _IN
    do
      case "${_IN}" in
      *-ipa-IPAUI*|*-ipa-[MU]*) echo ${_IN} ;;
      *-ipa-*|[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 ${X_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 ${X_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