From 00e42bd8b271a01dd1a4a7c6b90c12bf5b52ae76 Mon Sep 17 00:00:00 2001 From: David Griffith Date: Wed, 13 Apr 2016 00:25:22 -0700 Subject: [PATCH] Using the Emerald package from CTAN for the drop capitals. --- README.md | 9 ++++++ chapters/01.rst | 9 ++++-- chapters/02.rst | 9 ++++-- chapters/03.rst | 9 ++++-- chapters/04.rst | 9 ++++-- chapters/05.rst | 9 ++++-- config/preamble.tex | 6 ++++ install-emerald.sh | 47 +++++++++++++++++++++++++++++ uninstall-emerald.sh | 70 ++++++++++++++++++++++++++++++++++++++++++++ 9 files changed, 167 insertions(+), 10 deletions(-) create mode 100755 install-emerald.sh create mode 100755 uninstall-emerald.sh diff --git a/README.md b/README.md index 3458135..6a89c81 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,15 @@ guide from a command prompt, like this: make html +For building the PDF version, you need a reasonably recent installation +of TeX Live. Release 2014 will do. You will also need the Emerald +package from https://www.ctan.org/tex-archive/fonts/emerald/. This +cannot be installed with tlmgr, nor does it seem to be packaged by the +usual Linux or BSD distributions. Scripts for installing and +uninstalling Emerald are provided here. When you're ready, type this: + + make latexpdf + Other formats are available; just type `make` for more details. Conversion strategy diff --git a/chapters/01.rst b/chapters/01.rst index b04d963..4aa43f3 100644 --- a/chapters/01.rst +++ b/chapters/01.rst @@ -9,8 +9,13 @@ | *A was an archer, who shot at a frog;* | *B was a butcher, who had a great dog.* -.. image:: /images/picB.png - :align: left +.. only:: html + .. image:: /images/picB.png + :align: left + +.. raw:: latex + + \dropcap{b} efore we start learning to use the Inform system, it's probably sensible to consider briefly how IF, which has many narrative elements, differs from diff --git a/chapters/02.rst b/chapters/02.rst index 609279e..dfc49eb 100644 --- a/chapters/02.rst +++ b/chapters/02.rst @@ -7,8 +7,13 @@ | *C was a captain, all covered with lace;* | *D was a drunkard, and had a red face.* -.. image:: /images/picC.png - :align: left +.. only:: html + .. image:: /images/picC.png + :align: left + +.. raw:: latex + + \dropcap{c} onventional -- static -- fiction can be written using nothing more than pencil and paper, or typewriter, or word-processor; however, the diff --git a/chapters/03.rst b/chapters/03.rst index d9f2df1..7f72e25 100644 --- a/chapters/03.rst +++ b/chapters/03.rst @@ -7,8 +7,13 @@ | *E was an esquire, with pride on his brow;* | *F was a farmer, and followed the plough.* -.. image:: /images/picE.png - :align: left +.. only:: html + .. image:: /images/picE.png + :align: left + +.. raw:: latex + + \dropcap{e} ach of the three games in this guide is created step by step; you'll get most benefit (especially to begin with) if you take an active part, typing diff --git a/chapters/04.rst b/chapters/04.rst index 7ca9cf3..337537d 100644 --- a/chapters/04.rst +++ b/chapters/04.rst @@ -7,8 +7,13 @@ | *G was a gamester, who had but ill-luck;* | *H was a hunter, and hunted a buck.* -.. image:: /images/picG.png - :align: left +.. only:: html + .. image:: /images/picG.png + :align: left + +.. raw:: latex + + \dropcap{g} oing through the design of our first game in the previous chapter has introduced all sorts of Inform concepts, often without giving you much diff --git a/chapters/05.rst b/chapters/05.rst index 138c850..05d9c69 100644 --- a/chapters/05.rst +++ b/chapters/05.rst @@ -7,8 +7,13 @@ | *I was an innkeeper, who loved to carouse;* | *J was a joiner, and built up a house.* -.. image:: /images/picI.png - :align: left +.. only:: html + .. image:: /images/picI.png + :align: left + +.. raw:: latex + + \dropcap{i} n even the simplest story, there's bound to be scope for the player to attempt activities that you hadn't anticipated. Sometimes there may be diff --git a/config/preamble.tex b/config/preamble.tex index 8c4f588..8557210 100644 --- a/config/preamble.tex +++ b/config/preamble.tex @@ -2,6 +2,9 @@ \usepackage[left=2.5cm,right=2.5cm,top=3cm,bottom=3cm]{geometry} \usepackage{setspace} +\usepackage{emerald} +\usepackage{type1cm} +\usepackage{lettrine} %% Set up page. \pagestyle{fancy} @@ -121,3 +124,6 @@ } \makeatother + +%% For picture alphabet drop caps +\newcommand{\dropcap}[1]{\lettrine[lines=3]{\ECFAPicture{\fontsize{50}{60}\selectfont #1}\normalfont}{}} diff --git a/install-emerald.sh b/install-emerald.sh new file mode 100755 index 0000000..79d0967 --- /dev/null +++ b/install-emerald.sh @@ -0,0 +1,47 @@ +#!/bin/sh + +# This script installs the Emerald CTAN package from +# https://www.ctan.org/tex-archive/fonts/emerald/ +# into $TEXMFLOCAL, which is usually /usr/local/share/texmf +# +# To use, put emerald.zip in the same directory as this script, unzip +# emerald.zip, and execute this script. +# +# Created by David Griffith +# Released into the public domain 2016 + + + +if [ `ps -o uid= $$` -ne 0 ] ; then + echo "This script must be run as root" + exit 1 +fi + +PERM=644 +DPERM=755 +PKGDIR="emerald" +TEXMFLOCAL=`kpsewhich -var TEXMFLOCAL` + +echo "Installing to $TEXMFLOCAL..." +echo "Making directories..." +install -m $DPERM -d $TEXMFLOCAL/fonts/afm/emerald \ + $TEXMFLOCAL/fonts/map/dvips \ + $TEXMFLOCAL/fonts/tfm/emerald \ + $TEXMFLOCAL/fonts/type1/emerald \ + $TEXMFLOCAL/fonts/vf/emerald + +install -m $DPERM -d $TEXMFLOCAL/other $TEXMFLOCAL/tex/latex/emerald +install -m $DPERM -d $TEXMFLOCAL $TEXMFLOCAL/web2c + +echo "Installing stuff..." +install -m $PERM -D $PKGDIR/fonts/afm/emerald/* $TEXMFLOCAL/fonts/afm/emerald +install -m $PERM -D $PKGDIR/fonts/map/dvips/emerald.map $TEXMFLOCAL/fonts/map/dvips +install -m $PERM -D $PKGDIR/fonts/tfm/emerald/* $TEXMFLOCAL/fonts/tfm/emerald +install -m $PERM -D $PKGDIR/fonts/type1/emerald/* $TEXMFLOCAL/fonts/type1/emerald +install -m $PERM -D $PKGDIR/fonts/vf/emerald/* $TEXMFLOCAL/fonts/vf/emerald +install -m $PERM -D $PKGDIR/other/* $TEXMFLOCAL/other +install -m $PERM -D $PKGDIR/tex/latex/emerald/* $TEXMFLOCAL/tex/latex/emerald + +echo "Map emerald.map" >> $TEXMFLOCAL/web2c/updmap.cfg +mktexlsr $TEXMFLOCAL +updmap-sys diff --git a/uninstall-emerald.sh b/uninstall-emerald.sh new file mode 100755 index 0000000..c2a4640 --- /dev/null +++ b/uninstall-emerald.sh @@ -0,0 +1,70 @@ +#!/bin/sh + +# This script uninstalls the Emerald CTAN package from $TEXMFLOCAL. +# It may be executed anywhere. + +# Created by David Griffith +# Released into the public domain 2016 + +if [ `ps -o uid= $$` -ne 0 ] ; then + echo "This script must be run as root" + exit 1 +fi + +TEXMFLOCAL=`kpsewhich -var TEXMFLOCAL` + +echo "Deleting emerald from $TEXMFLOCAL..." + +rm -f $TEXMFLOCAL/fonts/map/dvips/emerald.map +rm -rf $TEXMFLOCAL/fonts/afm/emerald +rm -rf $TEXMFLOCAL/fonts/tfm/emerald +rm -rf $TEXMFLOCAL/fonts/type1/emerald +rm -rf $TEXMFLOCAL/fonts/vf/emerald +rm -rf $TEXMFLOCAL/tex/latex/emerald + +rm -f $TEXMFLOCAL/other/apicture.ttf \ + $TEXMFLOCAL/other/AUGIE___.INF \ + $TEXMFLOCAL/other/DECAC___.INF \ + $TEXMFLOCAL/other/DECADENC.INF \ + $TEXMFLOCAL/other/DECAIAL_.INF \ + $TEXMFLOCAL/other/DECAI___.INF \ + $TEXMFLOCAL/other/DECAIM__.INF \ + $TEXMFLOCAL/other/DECAITD_.INF \ + $TEXMFLOCAL/other/DECAWTD_.INF \ + $TEXMFLOCAL/other/INTID___.INF \ + $TEXMFLOCAL/other/INTIMACY.INF \ + $TEXMFLOCAL/other/J.D.____.INF \ + $TEXMFLOCAL/other/movieola.inf \ + $TEXMFLOCAL/other/moviettt.inf \ + $TEXMFLOCAL/other/POOKIE__.INF \ + $TEXMFLOCAL/other/SKEETCH_.TTF \ + $TEXMFLOCAL/other/SPANBBI_.INF \ + $TEXMFLOCAL/other/SPANBB__.INF \ + $TEXMFLOCAL/other/SPANBI__.INF \ + $TEXMFLOCAL/other/SPANB___.INF \ + $TEXMFLOCAL/other/Syriac__.inf \ + $TEXMFLOCAL/other/Tallpaul.inf \ + $TEXMFLOCAL/other/TEENSPIR.TTF \ + $TEXMFLOCAL/other/WEBSTER_.INF + +sed -i s/Map\ emerald.map//g $TEXMFLOCAL/web2c/updmap.cfg +sed -i '/^$/d' $TEXMFLOCAL/web2c/updmap.cfg +if [ ! -s $TEXMFLOCAL/web2c/updmap.cfg ] ; then + rm $TEXMFLOCAL/web2c/updmap.cfg +fi + +rmdir --ignore-fail-on-non-empty $TEXMFLOCAL/fonts/map/dvips \ + $TEXMFLOCAL/fonts/afm \ + $TEXMFLOCAL/fonts/map \ + $TEXMFLOCAL/fonts/tfm \ + $TEXMFLOCAL/fonts/type1 \ + $TEXMFLOCAL/fonts/vf \ + $TEXMFLOCAL/tex/latex \ + $TEXMFLOCAL/fonts \ + $TEXMFLOCAL/tex \ + $TEXMFLOCAL/other \ + $TEXMFLOCAL/web2c/ + + +mktexlsr $TEXMFLOCAL +updmap-sys -- 2.31.1