Rictyフォント自動作成スクリプト

プログラミング用フォント Ricty

プログラミング用フォント"Ricty"のフォントファイルがライセンスの問題でダウンロードできなくなっていますが、フォントを生成するスクリプトと作り方は作者によって公開されています。しかし、いちいち手動でファイルをダウンロードしたりーとか、いろいろ操作するのは面倒なので、その辺を一気にやってくれるスクリプトを作成しました。適当にファイルに貼りつけて実行すると、カレントディレクトリにフォントが作成されます。フォントの作成にFontForgeが必要ですので、予めインストールしておいてください。

#!/bin/sh

RICTYURL="http://save.sys.t.u-tokyo.ac.jp/~yusa/fonts/ricty/Ricty-3.0.1.tar.gz"
MIGM1URL="http://sourceforge.jp/frs/redir.php?m=jaist&f=%2Fmix-mplus-ipa%2F51978%2FMigu-1M-20110514.zip"
INCONSURL="http://levien.com/type/myfonts/Inconsolata.otf"

CURDIR=`pwd`
TMPDIR=`mktemp -d`
TMPDIR2=`mktemp -d`

trap "cd $CURDIR; rm -rf $TMPDIR $TMPDIR2" INT HUP QUIT

if [ -z `which fontforge` ]; then
  echo 'FontForge is not installed.'
  exit 1
fi

cd $TMPDIR
for url in "$RICTYURL" "$MIGM1URL" "$INCONSURL"; do
  local fname=`basename $url`
  wget "$url"
  case $fname in
  *.zip)
    unzip $fname
    ;;
  *.tar.gz)
    tar xzf $fname
    ;;
  *)
    ;;
  esac
done
find . \( -name '*.sh' -o -name '*.?tf' \) -exec cp {} $TMPDIR2 \;

cd $TMPDIR2
sh ricty_generator.sh Inconsolata.otf Migu-1M-regular.ttf Migu-1M-bold.ttf
cp -f Ricty-*.ttf $CURDIR

cd $CURDIR
rm -rf $TMPDIR $TMPDIR2