**************************************************************** % cblstded.tex % % (c) Copyright 1997, 1998 Apostolos Syropoulos % % The above copyright notice applies *only* to changes and enhancements % made to the original files ecstded.tex, to which the following % copyright notices apply: % % (c) Copyright 1995, 1996, 1997 J"org Knappen % (c) Copyright 1990, 1992 Norbert Schwarz % % This file is part of cbgreek fonts version 2.0 % % Generating MF-files for the cbgreek fonts % % Running TeX with this file as an input results in a lot of % Metafont font driver files (grmn0500.mf, grmn0600.mf, ..). The files % which should be generated are marked in the following macro % \FontsToBeGenerated. For each font there has to be an entry % with the pt sizes the font should be generate with. Additionally % in the heading \tablevalues all used pt sizes have to be mentioned, % just to get a fine printout. % % Furthermore there is a batch file which can be customized for the % Metafont batch run. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % please change only here: % \long\def\FontsToBeGenerated{ \tablevalues ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glic ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glin ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glio ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glii ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont gliu ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont gljc ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont gljn ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont gljo ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glji ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glju ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glmc ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glmn ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glmo ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glmi ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glmu ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont gltc ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont gltn ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glto ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glti ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont gltu ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glwc ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glwn ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glwo ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glwi ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glwu ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glxc ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glxn ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glxo ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glxi ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) \makefont glxu ( 7[0700] 8[0800] 10[1000] 12[1200] 13.82[1382] 16.59[1659] 19.91[1991] 23.89[2389] 28.66[2866] 34.40[3440] 41.28[4128]) } % If a font with a fraction, e.g. "7.5", should be generated % and the file name is not allowed to contain a period, an % optional file name part can be specified. % % 7.5[0750] % % result in - may be - "grmn0750.mf" and an entry of "gensize:=7.5;" % Although, cb fonts do not need the gensize information, some METAFONT % installations seem to have trouble if this information is not preset. % (The new value has to be specified in the \tablevalues-line too!) % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % The Batch file entries ( #1 contains the fontname ) % % should be of the following form: % % \def\BatchOutput{\BatchLine{...}% % ... % \BatchLine{...}} % % % preset value, change \BatchOutput if you like .... % {\endlinechar=-1 \message{Configuration phase.} \message{--------------------} \message{ } \message{What kind of operating system do you use? W(in32)/U(nix)} \read16 to\opsystem \global\let\OS=\opsystem \message{By specifying the default resolution the} \message{generated Unix shell/Win32 batch file will} \message{be able to produce both the TFM and the PK files.} \message{(The default resolution for EmTeX is 300dpi, and} \message{ MikTeX and Web2c 600dpi.)} \message{Do you want to specify the default resolution} \message{of your system? y/n} \read16 to\answer \if\answer y \message{Enter default resolution} \read16 to\RESOLUTION \global\let\resolution=\RESOLUTION \fi \if\opsystem U \if\answer y \gdef\BatchOutput#1{ \BatchLine{mf '\string\mode=localfont; scrollmode; input #1'} \BatchLine{gftopk #1.\resolution gf} \BatchLine{rm #1.\resolution gf} \BatchLine{rm *.log}} \else \gdef\BatchOutput#1{ \BatchLine{mf '\string\mode=localfont; scrollmode; input #1'} \BatchLine{rm *gf} \BatchLine{rm *.log}} \fi \else %You have choosen Win32 \message{Which TeX installation do you use:} \message{M(ikTeX), E(mTeX), or W(eb2c)?} \read16 to\wininst \if\wininst E % User has selected EmTeX \if\answer y \gdef\BatchOutput#1{ \BatchLine{mf \string\mode=localfont; scrollmode; input #1} \BatchLine{gftopk #1.\resolution} \BatchLine{del *.\resolution} \BatchLine{del *.log}} \else \gdef\BatchOutput#1{ \BatchLine{mf \string\mode=localfont; scrollmode; input #1} \BatchLine{gftopk #1.300} \BatchLine{del *.300} \BatchLine{del *.log}} \fi \else\if\wininst M % User has selected MikTeX \if\answer y \gdef\BatchOutput#1{ \BatchLine{maketfm #1} \BatchLine{makepk #1 \resolution\space \resolution\space localfont} \else \gdef\BatchOutput#1{ \BatchLine{maketfm #1} \BatchLine{makepk #1 600 \space 600 \space localfont} \fi \else % User has selected Web2c \if\answer y \gdef\BatchOutput#1{ \BatchLine{mf \string\mode=localfont; scrollmode; input #1} \BatchLine{gftopk #1.\resolution gf} \BatchLine{del #1.\resolution gf} \BatchLine{del *.log}} \else \gdef\BatchOutput#1{ \BatchLine{mf \string\mode=localfont; scrollmode; input #1} \BatchLine{gftopk #1.600gf} \BatchLine{del #1.600gf} \BatchLine{del *.log}} \fi %\if\answer y \fi\fi \fi } % % File naming conventions: % \if\OS U \def\BatchFileName{cblstded.sh} \else \def\BatchFileName{cblstded.bat} \fi % % \def\MetafontFileExtension{.mf} % \def\modedef{} %e.g. \def\modedef{\string\mode:=ljfour;} %%CB What about really using this variable, instead of calling localfont? % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % please n o changes from here, thanks ! % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % (Avoiding inspecting the macros (sigh!) % % Norbert Schwarz, Dezember 1990 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \magnification\magstep1 \overfullrule=0pt %\tracingonline1 %\tracingcommands=1 %\tracingmacros=1 % some token handling \let\EA\expandafter \def\JoinToks#1=(#2+#3){#1=\EA\EA\EA{\EA\the\EA#2\the#3}} \def\UpToHere{\relax} \def\IgnoreRest#1#2\UpToHere{#1} \def\IgnoreFirst#1#2\relax\UpToHere{#2} \def\First#1{\EA\IgnoreRest\the#1{}\UpToHere} \def\FirstOf#1{\EA\EA\EA{\EA\IgnoreRest\the#1{}\UpToHere}} \def\MoveFirst(#1to#2){#2\FirstOf#1} \def\Rest#1{\EA\IgnoreFirst\the#1\relax\UpToHere} \def\RestOf#1{\EA\EA\EA{\EA\IgnoreFirst\the#1\relax\UpToHere}} \def\MoveRest(#1to#2){#2=\RestOf{#1}} % borrowed from p. 132 in N.Schwarz, Introduction to TeX (some advertising ..) \newtoks\Basis \newtoks\Table \def\storetoks#1{\toks0={#1}\JoinToks\Table=(\Table+\toks0)} \Table={} % \def\hash{##} \newwrite \batchoutput \newwrite \fontoutput \def\today{\ifcase\month\or January\or Februar\or March\or April\or May\or June\or July\or August\or September\or October\or November\or December\fi, \number\day, \space\number\year} \def\BatchLine#1{\immediate\write\batchoutput{#1}} \immediate\openout\batchoutput=\BatchFileName \def\empty{} \def\minus{-} \def\blank{ } \def\singlefont#1 {% \def\fontsize{#1}%\message{<#1>}% \ifx\fontsize\minus\let\next\relax \else \ifx\fontsize\empty\let\next\singlefont \else \ifx\fontsize\blank\let\next\singlefont \else \let\next\dofont \fi\fi\fi \next} \def\doentry{\MoveFirst(\Workbase to\Htok)% \Workbase=\RestOf\Workbase \edef\doou{\the\Htok}% \ifx\doou\fontsize \def\dooU{\storetoks{\hfill $\bullet$\hfill&}}% \let\weiter\dooU \else \def\weiter{\storetoks{~\hfill&}\doentry}% \fi\weiter} \def\singletablevalue#1 {% \def\fontsize{#1}% \ifx\fontsize\blank\let\next\singletablevalue \else \ifx\minus\fontsize\let\next\relax \else\let\next\dotablevalue\fi \fi \next} \newtoks\Htok \newtoks\Workbase \def\dotablevalue{\edef\dooo{\Htok={{\fontsize}}}% \dooo \EA\storetoks\EA{\fontsize&}% \JoinToks\Basis=(\Basis+\Htok)\singletablevalue} \def\tablevalues(#1){\storetoks{\bf Fonts &}\singletablevalue#1 - \storetoks{\cr}} \def\makefont #1 (#2){\JoinToks\Workbase=(\Basis+\Basis)% \myc=0\immediate\write15{}% \edef\fontnamebody{#1}% \def\dostoretoks{\storetoks{#1 &}}\dostoretoks \singlefont #2 - \storetoks{\cr}} \def~{\ifdim\dimen0>0pt \message{\number\dimen0}% \global\advance\dimen0 by -5.25pt \message{ }\fi} \newcount\myc \def\extraspaces{\setbox0=\hbox{\tt\fontname}% \dimen0=78.75pt \advance\dimen0 by -\wd0\relax \advance\myc by 1 \ifnum \myc=5 \immediate\write15{}% \myc=0 \fi} \def\dofonttest#1[#2]#3\nothing{% \def\fontsize{#2}% \ifx\fontsize\empty \def\fontsizename{#1}% \def\fontsize{#1}% \else \def\fontsize{#1}% \def\fontsizename{#2}% \fi} \def\dofont{\doentry\expandafter\dofonttest\fontsize[]\nothing\Dofont} {\catcode`\%=11 \catcode`\|=14 \gdef\Dofont{| \edef\fontname{\fontnamebody\fontsizename\MetafontFileExtension}| \edef\dowrite{| \immediate\openout \fontoutput = \fontname| \immediate\write \fontoutput {% This is \fontname\space in text format as of \today}| \immediate\write \fontoutput {}| \immediate\write \fontoutput {\modedef}| \immediate\write \fontoutput {gensize:=\fontsize;}| \immediate\write \fontoutput {input \fontnamebody}| \immediate\closeout \fontoutput| \BatchOutput{\fontnamebody\fontsizename} \message{\fontname\blank}|\extraspaces~~~~~~~~~~~| }\dowrite\singlefont}} \immediate\write15{generated mf-files:} \immediate\write15{-------------------} \nopagenumbers \def\minimumbox#1{\setbox0=\hbox{#1}% \ifdim\wd0>15pt \box0\else \hbox to 15pt{\hfil \box0\hfil}\fi} \storetoks{\hrule \medskip \centerline{Overview CB - Font Set for Slides} \medskip \hrule \bigskip \noindent The following table describes the generated {*.mf} files which are needed for the setup of the slides cb-font set. \bigskip \bigskip $$\vbox\bgroup\nointerlineskip\halign\bgroup\hash\hfil\quad&&\strut \quad\minimumbox{\hash}\cr \noalign{\medskip}} %\tracingonline1 %\tracingmacros2 %\tracingcommands1 \FontsToBeGenerated \storetoks{\egroup\egroup$$} \let\hash=# \the\Table \end