aboutsummaryrefslogtreecommitdiffstats
path: root/japanese
diff options
context:
space:
mode:
authorume <ume@FreeBSD.org>2016-07-21 22:04:32 +0800
committerume <ume@FreeBSD.org>2016-07-21 22:04:32 +0800
commit4681306ef60fb89b85c7aee60f480c72bbb52d89 (patch)
treeb59da97d58e35ff2b48f717692ec59674c3a206c /japanese
parente060b1d531ff568762e583d839af8ddecfe5379a (diff)
downloadfreebsd-ports-gnome-4681306ef60fb89b85c7aee60f480c72bbb52d89.tar.gz
freebsd-ports-gnome-4681306ef60fb89b85c7aee60f480c72bbb52d89.tar.zst
freebsd-ports-gnome-4681306ef60fb89b85c7aee60f480c72bbb52d89.zip
Generate better fonts.dir for Japanese.
Diffstat (limited to 'japanese')
-rw-r--r--japanese/font-nasu/Makefile7
-rw-r--r--japanese/font-nasu/files/pkg-install.in105
2 files changed, 110 insertions, 2 deletions
diff --git a/japanese/font-nasu/Makefile b/japanese/font-nasu/Makefile
index 5bd129e50b34..3a5bc6053182 100644
--- a/japanese/font-nasu/Makefile
+++ b/japanese/font-nasu/Makefile
@@ -2,7 +2,7 @@
PORTNAME= nasu
PORTVERSION= 20141215
-#PORTREVISION= 0
+PORTREVISION= 1
CATEGORIES= japanese x11-fonts
MASTER_SITES= SOURCEFORGE_JP
MASTER_SITE_SUBDIR=users/7/7587
@@ -14,10 +14,13 @@ COMMENT= Nasu Japanese TrueType fonts
LICENSE= APACHE20
-USES= fonts zip
+USES= fonts:fc zip
FONTNAME= nasu
NO_ARCH= yes
NO_BUILD= yes
+PKGINSTALL= ${WRKDIR}/pkg-install
+PKGDEINSTALL= ${WRKDIR}/pkg-install
+SUB_FILES= pkg-install
WRKSRC= ${WRKDIR}/${DISTNAME:C/-//}
PORTDOCS= *
diff --git a/japanese/font-nasu/files/pkg-install.in b/japanese/font-nasu/files/pkg-install.in
new file mode 100644
index 000000000000..5d1c3f4ee568
--- /dev/null
+++ b/japanese/font-nasu/files/pkg-install.in
@@ -0,0 +1,105 @@
+#!/bin/sh
+# $FreeBSD$
+
+catfontsdir()
+{
+ while read _IN
+ do
+ case "${_IN}" in
+ *-adobe-nasu-*|*-adobe-nasum-*|[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 Nasu-Regular-20141215.ttf adobe "nasu" p medium
+ make_xlfd $ENC Nasu-Bold-20141215.ttf adobe "nasu" p bold
+ make_xlfd $ENC NasuM-Regular-20141215.ttf adobe "nasum" c medium
+ make_xlfd $ENC NasuM-Bold-20141215.ttf adobe "nasum" c bold
+ 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