#!/bin/bash

# default font setting script for Vine Linux 5/5CR
# used by tex, gs, xpdf..
#
# usage: update-defaultfont

TEXMF=/usr/share/texmf
MAPFILE=$TEXMF/fonts/map/dvipdfmx/vine.map
TEXALIASDIR=$TEXMF/fonts/truetype
ALIASDIR=/usr/share/fonts/alias/TrueType

TMPMAPFILE=$(mktemp /tmp/vine.map.XXXXXX)

# set default font symlink
lnttf() {
    F=$(fc-match -v "$2" | grep "file:" | cut -f2 -d\")
    ln -sf $F $TEXALIASDIR/$3.ttf
    ln -sf $F $ALIASDIR/$3.ttf
    cat <<EOF >> $TMPMAPFILE
% $1 %
$1	H	$3.ttf
t$1	V	$3.ttf
$1i	H	$3.ttf -s .3
t$1i	V	$3.ttf -s .3

EOF
}

# make symlink for CR fonts
lnttc() {
    F=$(find /usr/share/fonts/ -name "$2.ttc" -type f | head -1)
    if [ -f "$F" ]; then
      ln -sf $F $TEXALIASDIR/$3.ttc
      cat <<EOF >> $TMPMAPFILE
% $3 %
$1   	H	$3.ttc
t$1   	V	$3.ttc
$1i   	H	$3.ttc -s .3
t$1i   	V	$3.ttc -s .3

EOF
    fi
}

########################################################################################

## no-embedding font 
cat <<EOF > $TMPMAPFILE
% Vine additional map %
rml	H	!Ryumin-Light
rmlv	V	!Ryumin-Light
gbm	H	!GothicBBB-Medium
gbmv	V	!GothicBBB-Medium

% italic %
rmli	H	!Ryumin-Light,Italic
rmlvi	V	!Ryumin-Light,Italic
gbmi	H	!GothicBBB-Medium,Italic
gbmvi	V	!GothicBBB-Medium,Italic

% new JIS font metric %
rmln	H	!Ryumin-Light
rmlnv	V	!Ryumin-Light
gbmn	H	!GothicBBB-Medium
gbmnv	V	!GothicBBB-Medium

%%
%% Morisawa
%%
ryumin-l    H  Ryumin-Light
ryumin-l-v  V  Ryumin-Light
gtbbb-m     H  GothicBBB-Medium
gtbbb-m-v   V  GothicBBB-Medium
futomin-b   H  FutoMinA101-Bold
futomin-b-v V  FutoMinA101-Bold
futogo-b    H  FutoGoB101-Bold
futogo-b-v  V  FutoGoB101-Bold
jun101-l    H  Jun101-Light
jun101-l-v  V  Jun101-Light

EOF

## remove broken symbolic links
rm -f $TEXALIASDIR/*
rm -f $ALIASDIR/*
#find -L $TEXALIASDIR -type l -exec rm -f \{\} \;
#find -L $ALIASDIR -type l -exec rm -f \{\} \;

## alias font
#     tfm name	fontconfig alias		PostScript name
lnttf min	Serif				Mincho-Medium
lnttf goth	Sans				Gothic-Medium
lnttf futomin	FutoMin				FutoMin-Bold
lnttf futogo	FutoGo				FutoGo-Bold
lnttf marugo	Jun				MaruGo-Medium

# make symlink for CR fonts
for i in /usr/share/vine/fonts.d/*
do
  if echo $file | grep -q "lnttc-.*\.sh$" ; then
    . $i
  fi
done

#
cp -f $TMPMAPFILE $MAPFILE
rm -f $TMPMAPFILE
