groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Groff] New request .fchar


From: Werner LEMBERG
Subject: [Groff] New request .fchar
Date: Thu, 20 Dec 2001 16:03:14 +0100 (CET)

To get optimal support for the Euro I had to introduce a new request,
`.fchar'.  Its syntax is the same as the `char' request; the only
difference is that a character defined with `.char' hides the glyph
with the same name in the current font, whereas a character defined
with `.fchar' is checked only if the particular glyph isn't found in
the current font.  This test happens before checking special fonts.

With other words, `.fchar' is a light-weight version of `.special'; it
allows that fonts which have an Euro symbol automatically use it.

Attached are new versions of euro.tmac and the Makefile to produce the
support files (which have slightly changed also).

Please test.


    Werner
.\" euro.tmac
.
.special EUROR
.
.fchar \[Eu] \[Euro\\n[.fn]]
.
.char \[EuroAB]   \f[EUROB]\[Eu]
.char \[EuroABI]  \f[EUROBI]\[Eu]
.char \[EuroAI]   \f[EUROI]\[Eu]
.char \[EuroAR]   \f[EUROR]\[eu]
.char \[EuroBMB]  \f[EUROSB]\[Eu]
.char \[EuroBMBI] \f[EUROSBI]\[Eu]
.char \[EuroBMI]  \f[EUROSI]\[Eu]
.char \[EuroBMR]  \f[EUROSR]\[Eu]
.char \[EuroCB]   \f[EUROMB]\[Eu]
.char \[EuroCBI]  \f[EUROMBI]\[Eu]
.char \[EuroCI]   \f[EUROMI]\[Eu]
.char \[EuroCR]   \f[EUROMR]\[Eu]
.char \[EuroHB]   \f[EUROB]\[Eu]
.char \[EuroHBI]  \f[EUROBI]\[Eu]
.char \[EuroHI]   \f[EUROI]\[Eu]
.char \[EuroHR]   \f[EUROR]\[eu]
.char \[EuroHNB]  \f[EUROB]\[Eu]
.char \[EuroHNBI] \f[EUROBI]\[Eu]
.char \[EuroHNI]  \f[EUROI]\[Eu]
.char \[EuroHNR]  \f[EUROR]\[eu]
.char \[EuroNB]   \f[EUROSB]\[Eu]
.char \[EuroNBI]  \f[EUROSBI]\[Eu]
.char \[EuroNI]   \f[EUROSI]\[Eu]
.char \[EuroNR]   \f[EUROSR]\[Eu]
.char \[EuroPB]   \f[EUROSB]\[Eu]
.char \[EuroPBI]  \f[EUROSBI]\[Eu]
.char \[EuroPI]   \f[EUROSI]\[Eu]
.char \[EuroPR]   \f[EUROSR]\[Eu]
.char \[EuroTB]   \f[EUROSB]\[Eu]
.char \[EuroTBI]  \f[EUROSBI]\[Eu]
.char \[EuroTI]   \f[EUROSI]\[Eu]
.char \[EuroTR]   \f[EUROSR]\[Eu]
.
.\" EOF
# This Makefile adds PostScript support for the Euro symbol in groff.
#
# Copy eurofont.exe (from Adobe's host), DESC, and download (the latter two
# files from an installed groff) to the same directory as this Makefile. 
# Say `make' and everything will be built in a subdirectory called eurofont. 
# Finally, move all files in `eurofont' to groff's `devps' directory
# (overwriting `download').

all: clean \
     make-euromap \
     make-eurosymbolmap \
     extract \
     filter \
     rename \
     convert \
     metrics \
     make-download

clean:
        -rm -rf eurofont
        -rm euro.map
        -rm eurosymbol.map

make-euromap:
        echo "Euro Eu" > euro.map

make-eurosymbolmap:
        echo "Euro eu" > eurosymbol.map

extract:
        unzip -L eurofont.exe

filter:
        (cd eurofont; \
        rm *.inf; \
        rm *.pfm; \
        rm readme.wri)

rename:
        (cd eurofont; \
        mv _1______.afm zpeurs.afm; \
        mv _1b_____.afm zpeubs.afm; \
        mv _1i_____.afm zpeuris.afm; \
        mv _1bi____.afm zpeubis.afm; \
        mv _2______.afm zpeurt.afm; \
        mv _2b_____.afm zpeubt.afm; \
        mv _2i_____.afm zpeurit.afm; \
        mv _2bi____.afm zpeubit.afm; \
        mv _3______.afm zpeur.afm; \
        mv _3b_____.afm zpeub.afm; \
        mv _3i_____.afm zpeuri.afm; \
        mv _3bi____.afm zpeubi.afm; \
        mv _1______.pfb zpeurs.pfb; \
        mv _1b_____.pfb zpeubs.pfb; \
        mv _1i_____.pfb zpeuris.pfb; \
        mv _1bi____.pfb zpeubis.pfb; \
        mv _2______.pfb zpeurt.pfb; \
        mv _2b_____.pfb zpeubt.pfb; \
        mv _2i_____.pfb zpeurit.pfb; \
        mv _2bi____.pfb zpeubit.pfb; \
        mv _3______.pfb zpeur.pfb; \
        mv _3b_____.pfb zpeub.pfb; \
        mv _3i_____.pfb zpeuri.pfb; \
        mv _3bi____.pfb zpeubi.pfb)

convert:
        (cd eurofont; \
        pfbtops zpeurs.pfb > zpeurs.pfa; \
        pfbtops zpeubs.pfb > zpeubs.pfa; \
        pfbtops zpeuris.pfb > zpeuris.pfa; \
        pfbtops zpeubis.pfb > zpeubis.pfa; \
        pfbtops zpeurt.pfb > zpeurt.pfa; \
        pfbtops zpeubt.pfb > zpeubt.pfa; \
        pfbtops zpeurit.pfb > zpeurit.pfa; \
        pfbtops zpeubit.pfb > zpeubit.pfa; \
        pfbtops zpeur.pfb > zpeur.pfa; \
        pfbtops zpeub.pfb > zpeub.pfa; \
        pfbtops zpeuri.pfb > zpeuri.pfa; \
        pfbtops zpeubi.pfb > zpeubi.pfa; \
        rm *.pfb)

metrics:
        (cd eurofont; \
        afmtodit -d../DESC -s zpeurs.afm \
          ../eurosymbol.map EUROR; \
        afmtodit -d../DESC zpeubs.afm \
          ../euro.map EUROB; \
        afmtodit -d../DESC -i50 zpeuris.afm \
          ../euro.map EUROI; \
        afmtodit -d../DESC -i50 zpeubis.afm \
          ../euro.map EUROBI; \
        afmtodit -d../DESC zpeurt.afm \
          ../euro.map EUROMR; \
        afmtodit -d../DESC zpeubt.afm \
          ../euro.map EUROMB; \
        afmtodit -d../DESC -i50 zpeurit.afm \
          ../euro.map EUROMI; \
        afmtodit -d../DESC -i50 zpeubit.afm \
          ../euro.map EUROMBI; \
        afmtodit -d../DESC zpeur.afm \
          ../euro.map EUROSR; \
        afmtodit -d../DESC zpeub.afm \
          ../euro.map EUROSB; \
        afmtodit -d../DESC -i50 zpeuri.afm \
          ../euro.map EUROSI; \
        afmtodit -d../DESC -i50 zpeubi.afm \
          ../euro.map EUROSBI)

make-download:
        (cd eurofont; \
        cp ../download download; \
        echo "" >> download; \
        echo "EuroSans-Regular  zpeurs.pfa" >> download; \
        echo "EuroSans-Bold             zpeubs.pfa" >> download; \
        echo "EuroSans-Italic           zpeuris.pfa" >> download; \
        echo "EuroSans-BoldItalic       zpeubis.pfa" >> download; \
        echo "EuroSerif-Regular zpeur.pfa" >> download; \
        echo "EuroSerif-Bold            zpeub.pfa" >> download; \
        echo "EuroSerif-Italic  zpeuri.pfa" >> download; \
        echo "EuroSerif-BoldItalic      zpeubi.pfa" >> download; \
        echo "EuroMono-Regular  zpeurt.pfa" >> download; \
        echo "EuroMono-Bold             zpeubt.pfa" >> download; \
        echo "EuroMono-Italic           zpeurit.pfa" >> download; \
        echo "EuroMono-BoldItalic       zpeubit.pfa" >> download)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]