#!/bin/csh -f # Will also work with tcsh cat <<EOF This script runs metafont and gftopk to produce the following fonts / families / shapes: ********************************************************* computer modern, as to LaTeX2e's cmfonts.fdd Also required: extracm, from the amsfonts distribution ********************************************************* Give metafont mode as first argument (default = localfont) Note: some fonts are needed from the AMSfonts distribution. Michael Cree, Volker Kuhlmann 9 July 94 Volker 1 Jan 95; 8 Apr 95; 26 Mar 96; 8 Apr 96; 12 Aug 98 v.kuhlmann@elec.canterbury.ac.nz EOF # CHANGELOG # # 12 Aug 98 (VK) # Changed cmmf to mf. # Replaced echo with cat, introduced $MF. # 22 Oct 96 (VK) # Removed comment about missing LaTeX slide fonts. # Added cmtex fonts. # 8 Apr 96 (VK) # Added \scrollmode. Fixed docs. # 26 Mar 96 (VK) # Added cmex10 magstep 2 (needed for amsldoc.tex). # 8 Apr 95 (VK) # Metafont mode can now be given as $1. # 1 Jan 95 (VK) # Checked that all cm fonts are generated. # (Also generated are the AMSfonts extracm fonts.) # # 8 Dec 94 (VK) # Added cmssq8, cmssqi8 because make of TeX 3.1415 C version 6.1 # failed to create the plain format. # These 2 fonts are preloaded by plain, but not by LaTeX. # # 21 Nov 94 (VK) # Added cminch because it is a standard TeX font. Other standard # TeX fonts probably missing as well. if ( $#argv > 0 ) set MODE="$1" if ( ! $?MODE ) set MODE=localfont set MF="cmmf \mode=$MODE; \scrollmode; " set MF="mf \mode=$MODE; \scrollmode; " cat <<EOF ********************************** metafont mode is set to: $MODE running metafont as: $MF ********************************** EOF # COMPUTER MODERN ROMAN $MF '\mag=magstep(0);' input cmr5 $MF '\mag=magstep(0);' input cmr6 $MF '\mag=magstep(0);' input cmr7 $MF '\mag=magstep(0);' input cmr8 $MF '\mag=magstep(0);' input cmr9 $MF '\mag=magstep(0);' input cmr10 $MF '\mag=magstep(0.5);' input cmr10 # 10.95pt $MF '\mag=magstep(0);' input cmr12 $MF '\mag=magstep(1);' input cmr12 # 14.4pt $MF '\mag=magstep(0);' input cmr17 $MF '\mag=magstep(1);' input cmr17 # 20.74pt $MF '\mag=magstep(2);' input cmr17 # 24.88pt # COMPUTER MODERN SLANTED $MF '\mag=magstep(-2.58);' input cmsl8 # 5pt $MF '\mag=magstep(-1.58);' input cmsl8 # 6pt $MF '\mag=magstep(-0.732);' input cmsl8 # 7pt $MF '\mag=magstep(0);' input cmsl8 $MF '\mag=magstep(0);' input cmsl9 $MF '\mag=magstep(0);' input cmsl10 $MF '\mag=magstep(0.5);' input cmsl10 # 10.95pt $MF '\mag=magstep(0);' input cmsl12 $MF '\mag=magstep(1);' input cmsl12 # 14.4pt $MF '\mag=magstep(2);' input cmsl12 # 17.28pt $MF '\mag=magstep(3);' input cmsl12 # 20.74pt $MF '\mag=magstep(4);' input cmsl12 # 24.88pt # COMPUTER MODERN ITALICS $MF '\mag=magstep(-1.85);' input cmti7 # 5pt $MF '\mag=magstep(-0.845);' input cmti7 # 6pt $MF '\mag=magstep(0);' input cmti7 $MF '\mag=magstep(0);' input cmti8 $MF '\mag=magstep(0);' input cmti9 $MF '\mag=magstep(0);' input cmti10 $MF '\mag=magstep(0.5);' input cmti10 # 10.95pt $MF '\mag=magstep(0);' input cmti12 $MF '\mag=magstep(1);' input cmti12 # 14.4pt $MF '\mag=magstep(2);' input cmti12 # 17.28pt $MF '\mag=magstep(3);' input cmti12 # 20.74pt $MF '\mag=magstep(4);' input cmti12 # 24.88pt # COMPUTER MODERN SMALL CAPS $MF '\mag=magstep(-3.8);' input cmcsc10 # 5pt $MF '\mag=magstep(-2.8);' input cmcsc10 # 6pt $MF '\mag=magstep(-1.96);' input cmcsc10 # 7pt $MF '\mag=magstep(-1.22);' input cmcsc10 # 8pt $MF '\mag=magstep(-0.578);' input cmcsc10 # 9pt $MF '\mag=magstep(0);' input cmcsc10 $MF '\mag=magstep(0.5);' input cmcsc10 # 10.95pt $MF '\mag=magstep(1);' input cmcsc10 # 12pt $MF '\mag=magstep(2);' input cmcsc10 # 14.4pt $MF '\mag=magstep(3);' input cmcsc10 # 17.28pt $MF '\mag=magstep(4);' input cmcsc10 # 20.74pt $MF '\mag=magstep(5);' input cmcsc10 # 24.88pt # (size 8-9 come from the AMSfonts! not loaded by standard fd file) $MF '\mag=magstep(0);' input cmcsc8 $MF '\mag=magstep(0);' input cmcsc9 # COMPUTER MODERN UPRIGHT # (this is to get the pound symbol) $MF '\mag=magstep(-3.8);' input cmu10 # 5pt $MF '\mag=magstep(-2.8);' input cmu10 # 6pt $MF '\mag=magstep(-1.96);' input cmu10 # 7pt $MF '\mag=magstep(-1.22);' input cmu10 # 8pt $MF '\mag=magstep(-0.578);' input cmu10 # 9pt $MF '\mag=magstep(0);' input cmu10 $MF '\mag=magstep(0.5);' input cmu10 # 10.95pt $MF '\mag=magstep(1);' input cmu10 # 12pt $MF '\mag=magstep(2);' input cmu10 # 14.4pt $MF '\mag=magstep(3);' input cmu10 # 17.28pt $MF '\mag=magstep(4);' input cmu10 # 20.74pt $MF '\mag=magstep(5);' input cmu10 # 24.88pt # COMPUTER MODERN BOLD $MF '\mag=magstep(-3.8);' input cmb10 # 5pt $MF '\mag=magstep(-2.8);' input cmb10 # 6pt $MF '\mag=magstep(-1.96);' input cmb10 # 7pt $MF '\mag=magstep(-1.22);' input cmb10 # 8pt $MF '\mag=magstep(-0.578);' input cmb10 # 9pt $MF '\mag=magstep(0);' input cmb10 $MF '\mag=magstep(0.5);' input cmb10 # 10.95pt $MF '\mag=magstep(1);' input cmb10 # 12pt $MF '\mag=magstep(2);' input cmb10 # 14.4pt $MF '\mag=magstep(3);' input cmb10 # 17.28pt $MF '\mag=magstep(4);' input cmb10 # 20.74pt $MF '\mag=magstep(5);' input cmb10 # 24.88pt # COMPUTER MODERN BOLD EXTENDED $MF '\mag=magstep(0);' input cmbx5 $MF '\mag=magstep(0);' input cmbx6 $MF '\mag=magstep(0);' input cmbx7 $MF '\mag=magstep(0);' input cmbx8 $MF '\mag=magstep(0);' input cmbx9 $MF '\mag=magstep(0);' input cmbx10 $MF '\mag=magstep(0.5);' input cmbx10 # 10.95pt $MF '\mag=magstep(0);' input cmbx12 $MF '\mag=magstep(1);' input cmbx12 # 14.4pt $MF '\mag=magstep(2);' input cmbx12 # 17.28pt $MF '\mag=magstep(3);' input cmbx12 # 20.74pt $MF '\mag=magstep(4);' input cmbx12 # 24.88pt # COMPUTER MODERN BOLD EXTENDED SLANTED $MF '\mag=magstep(-3.8);' input cmbxsl10 # 5pt $MF '\mag=magstep(-2.8);' input cmbxsl10 # 6pt $MF '\mag=magstep(-1.96);' input cmbxsl10 # 7pt $MF '\mag=magstep(-1.22);' input cmbxsl10 # 8pt $MF '\mag=magstep(-0.578);' input cmbxsl10 # 9pt $MF '\mag=magstep(0);' input cmbxsl10 $MF '\mag=magstep(0.5);' input cmbxsl10 # 10.95pt $MF '\mag=magstep(1);' input cmbxsl10 # 12pt $MF '\mag=magstep(2);' input cmbxsl10 # 14.4pt $MF '\mag=magstep(3);' input cmbxsl10 # 17.28pt $MF '\mag=magstep(4);' input cmbxsl10 # 20.74pt $MF '\mag=magstep(5);' input cmbxsl10 # 24.88pt # COMPUTER MODERN BOLD EXTENDED ITALICS $MF '\mag=magstep(-3.8);' input cmbxti10 # 5pt $MF '\mag=magstep(-2.8);' input cmbxti10 # 6pt $MF '\mag=magstep(-1.96);' input cmbxti10 # 7pt $MF '\mag=magstep(-1.22);' input cmbxti10 # 8pt $MF '\mag=magstep(-0.578);' input cmbxti10 # 9pt $MF '\mag=magstep(0);' input cmbxti10 $MF '\mag=magstep(0.5);' input cmbxti10 # 10.95pt $MF '\mag=magstep(1);' input cmbxti10 # 12pt $MF '\mag=magstep(2);' input cmbxti10 # 14.4pt $MF '\mag=magstep(3);' input cmbxti10 # 17.28pt $MF '\mag=magstep(4);' input cmbxti10 # 20.74pt $MF '\mag=magstep(5);' input cmbxti10 # 24.88pt # COMPUTER MODERN SANS SERIF $MF '\mag=magstep(-2.58);' input cmss8 # 5pt $MF '\mag=magstep(-1.58);' input cmss8 # 6pt $MF '\mag=magstep(-0.732);' input cmss8 # 7pt $MF '\mag=magstep(0);' input cmss8 $MF '\mag=magstep(0);' input cmss9 $MF '\mag=magstep(0);' input cmss10 $MF '\mag=magstep(0.5);' input cmss10 # 10.95pt $MF '\mag=magstep(0);' input cmss12 $MF '\mag=magstep(1);' input cmss12 # 14.4pt $MF '\mag=magstep(0);' input cmss17 $MF '\mag=magstep(1);' input cmss17 # 20.74pt $MF '\mag=magstep(2);' input cmss17 # 24.88pt # COMPUTER MODERN SANS SERIF ITALICS (SLANTED as of OT1cmss.fd?) $MF '\mag=magstep(-2.58);' input cmssi8 # 5pt $MF '\mag=magstep(-1.58);' input cmssi8 # 6pt $MF '\mag=magstep(-0.732);' input cmssi8 # 7pt $MF '\mag=magstep(0);' input cmssi8 $MF '\mag=magstep(0);' input cmssi9 $MF '\mag=magstep(0);' input cmssi10 $MF '\mag=magstep(0.5);' input cmssi10 # 10.95pt $MF '\mag=magstep(0);' input cmssi12 $MF '\mag=magstep(1);' input cmssi12 # 14.4pt $MF '\mag=magstep(0);' input cmssi17 $MF '\mag=magstep(1);' input cmssi17 # 20.74pt $MF '\mag=magstep(2);' input cmssi17 # 24.88pt # COMPUTER MODERN SANS SERIF SEMI BOLD CONDENSED # Note: cmssdc10 at 5pt bombs out metafont! $MF '\mag=magstep(-3.8);' input cmssdc10 # 5pt $MF '\mag=magstep(-2.8);' input cmssdc10 # 6pt $MF '\mag=magstep(-1.96);' input cmssdc10 # 7pt $MF '\mag=magstep(-1.22);' input cmssdc10 # 8pt $MF '\mag=magstep(-0.578);' input cmssdc10 # 9pt $MF '\mag=magstep(0);' input cmssdc10 $MF '\mag=magstep(0.5);' input cmssdc10 # 10.95pt $MF '\mag=magstep(1);' input cmssdc10 # 12pt $MF '\mag=magstep(2);' input cmssdc10 # 14.4pt $MF '\mag=magstep(3);' input cmssdc10 # 17.28pt $MF '\mag=magstep(4);' input cmssdc10 # 20.74pt $MF '\mag=magstep(5);' input cmssdc10 # 24.88pt # COMPUTER MODERN SANS SERIF BOLD EXTENDED $MF '\mag=magstep(-3.8);' input cmssbx10 # 5pt $MF '\mag=magstep(-2.8);' input cmssbx10 # 6pt $MF '\mag=magstep(-1.96);' input cmssbx10 # 7pt $MF '\mag=magstep(-1.22);' input cmssbx10 # 8pt $MF '\mag=magstep(-0.578);' input cmssbx10 # 9pt $MF '\mag=magstep(0);' input cmssbx10 $MF '\mag=magstep(0.5);' input cmssbx10 # 10.95pt $MF '\mag=magstep(1);' input cmssbx10 # 12pt $MF '\mag=magstep(2);' input cmssbx10 # 14.4pt $MF '\mag=magstep(3);' input cmssbx10 # 17.28pt $MF '\mag=magstep(4);' input cmssbx10 # 20.74pt $MF '\mag=magstep(5);' input cmssbx10 # 24.88pt # COMPUTER MODERN TYPEWRITER $MF '\mag=magstep(-2.58);' input cmtt8 # 5pt $MF '\mag=magstep(-1.58);' input cmtt8 # 6pt $MF '\mag=magstep(-0.732);' input cmtt8 # 7pt $MF '\mag=magstep(0);' input cmtt8 $MF '\mag=magstep(0);' input cmtt9 $MF '\mag=magstep(0);' input cmtt10 $MF '\mag=magstep(0.5);' input cmtt10 # 10.95pt $MF '\mag=magstep(0);' input cmtt12 $MF '\mag=magstep(1);' input cmtt12 # 14.4pt $MF '\mag=magstep(2);' input cmtt12 # 17.28pt $MF '\mag=magstep(3);' input cmtt12 # 20.74pt $MF '\mag=magstep(4);' input cmtt12 # 24.88pt # COMPUTER MODERN TYPEWRITER SLANTED $MF '\mag=magstep(-3.8);' input cmsltt10 # 5pt $MF '\mag=magstep(-2.8);' input cmsltt10 # 6pt $MF '\mag=magstep(-1.96);' input cmsltt10 # 7pt $MF '\mag=magstep(-1.22);' input cmsltt10 # 8pt $MF '\mag=magstep(-0.578);' input cmsltt10 # 9pt $MF '\mag=magstep(0);' input cmsltt10 $MF '\mag=magstep(0.5);' input cmsltt10 # 10.95pt $MF '\mag=magstep(1);' input cmsltt10 # 12pt $MF '\mag=magstep(2);' input cmsltt10 # 14.4pt $MF '\mag=magstep(3);' input cmsltt10 # 17.28pt $MF '\mag=magstep(4);' input cmsltt10 # 20.74pt $MF '\mag=magstep(5);' input cmsltt10 # 24.88pt # COMPUTER MODERN TYPEWRITER ITALICS $MF '\mag=magstep(-3.8);' input cmitt10 # 5pt $MF '\mag=magstep(-2.8);' input cmitt10 # 6pt $MF '\mag=magstep(-1.96);' input cmitt10 # 7pt $MF '\mag=magstep(-1.22);' input cmitt10 # 8pt $MF '\mag=magstep(-0.578);' input cmitt10 # 9pt $MF '\mag=magstep(0);' input cmitt10 $MF '\mag=magstep(0.5);' input cmitt10 # 10.95pt $MF '\mag=magstep(1);' input cmitt10 # 12pt $MF '\mag=magstep(2);' input cmitt10 # 14.4pt $MF '\mag=magstep(3);' input cmitt10 # 17.28pt $MF '\mag=magstep(4);' input cmitt10 # 20.74pt $MF '\mag=magstep(5);' input cmitt10 # 24.88pt # COMPUTER MODERN TYPEWRITER SMALL CAPS $MF '\mag=magstep(-3.8);' input cmtcsc10 # 5pt $MF '\mag=magstep(-2.8);' input cmtcsc10 # 6pt $MF '\mag=magstep(-1.96);' input cmtcsc10 # 7pt $MF '\mag=magstep(-1.22);' input cmtcsc10 # 8pt $MF '\mag=magstep(-0.578);' input cmtcsc10 # 9pt $MF '\mag=magstep(0);' input cmtcsc10 $MF '\mag=magstep(0.5);' input cmtcsc10 # 10.95pt $MF '\mag=magstep(1);' input cmtcsc10 # 12pt $MF '\mag=magstep(2);' input cmtcsc10 # 14.4pt $MF '\mag=magstep(3);' input cmtcsc10 # 17.28pt $MF '\mag=magstep(4);' input cmtcsc10 # 20.74pt $MF '\mag=magstep(5);' input cmtcsc10 # 24.88pt # COMPUTER MODERN MATH ITALICS $MF '\mag=magstep(0);' input cmmi5 $MF '\mag=magstep(0);' input cmmi6 $MF '\mag=magstep(0);' input cmmi7 $MF '\mag=magstep(0);' input cmmi8 $MF '\mag=magstep(0);' input cmmi9 $MF '\mag=magstep(0);' input cmmi10 $MF '\mag=magstep(0.5);' input cmmi10 # 10.95pt $MF '\mag=magstep(0);' input cmmi12 $MF '\mag=magstep(1);' input cmmi12 # 14.4pt $MF '\mag=magstep(2);' input cmmi12 # 17.28pt $MF '\mag=magstep(3);' input cmmi12 # 20.74pt $MF '\mag=magstep(4);' input cmmi12 # 24.88pt # COMPUTER MODERN MATH BOLD ITALICS # (size 5-9 come from the AMSfonts!) # N.B. Size 5-9 are required by LaTeX2e. # If not available they could be scaled down from cmmib10, but # better is to get the AMSfonts distribution. $MF '\mag=magstep(0);' input cmmib5 $MF '\mag=magstep(0);' input cmmib6 $MF '\mag=magstep(0);' input cmmib7 $MF '\mag=magstep(0);' input cmmib8 $MF '\mag=magstep(0);' input cmmib9 $MF '\mag=magstep(0);' input cmmib10 $MF '\mag=magstep(0.5);' input cmmib10 # 10.95pt $MF '\mag=magstep(1);' input cmmib10 # 12pt $MF '\mag=magstep(2);' input cmmib10 # 14.4pt $MF '\mag=magstep(3);' input cmmib10 # 17.28pt $MF '\mag=magstep(4);' input cmmib10 # 20.74pt $MF '\mag=magstep(5);' input cmmib10 # 24.88pt # COMPUTER MODERN MATH SYMBOLS $MF '\mag=magstep(0);' input cmsy5 $MF '\mag=magstep(0);' input cmsy6 $MF '\mag=magstep(0);' input cmsy7 $MF '\mag=magstep(0);' input cmsy8 $MF '\mag=magstep(0);' input cmsy9 $MF '\mag=magstep(0);' input cmsy10 $MF '\mag=magstep(0.5);' input cmsy10 # 10.95pt $MF '\mag=magstep(1);' input cmsy10 # 12pt $MF '\mag=magstep(2);' input cmsy10 # 14.4pt $MF '\mag=magstep(3);' input cmsy10 # 17.28pt $MF '\mag=magstep(4);' input cmsy10 # 20.74pt $MF '\mag=magstep(5);' input cmsy10 # 24.88pt # COMPUTER MODERN MATH BOLD SYMBOLS # (size 5-9 come from the AMSfonts!) # N.B. Size 5-9 are required by LaTeX2e. # If not available they could be scaled down from cmbsy10, but # better is to get the AMSfonts distribution. $MF '\mag=magstep(0);' input cmbsy5 $MF '\mag=magstep(0);' input cmbsy6 $MF '\mag=magstep(0);' input cmbsy7 $MF '\mag=magstep(0);' input cmbsy8 $MF '\mag=magstep(0);' input cmbsy9 $MF '\mag=magstep(0);' input cmbsy10 $MF '\mag=magstep(0.5);' input cmbsy10 # 10.95pt $MF '\mag=magstep(1);' input cmbsy10 # 12pt $MF '\mag=magstep(2);' input cmbsy10 # 14.4pt $MF '\mag=magstep(3);' input cmbsy10 # 17.28pt $MF '\mag=magstep(4);' input cmbsy10 # 20.74pt $MF '\mag=magstep(5);' input cmbsy10 # 24.88pt # COMPUTER MODERN LARGE SYMBOLS # (size 7-9 come from the AMSfonts! not loaded by standard fd file) $MF '\mag=magstep(0);' input cmex7 $MF '\mag=magstep(0);' input cmex8 $MF '\mag=magstep(0);' input cmex9 $MF '\mag=magstep(0);' input cmex10 $MF '\mag=magstep(2);' input cmex10 # the last is needed to typeset the amslatex documentation (amsldoc.tex) # COMPUTER MODERN FUNNY # The fd file only defines 10pt! $MF '\mag=magstep(0);' input cmff10 $MF '\mag=magstep(0.5);' input cmff10 # 10.95pt $MF '\mag=magstep(1);' input cmff10 # 12pt # COMPUTER MODERN FUNNY ITALICS # The fd file only defines 10pt! $MF '\mag=magstep(0);' input cmfi10 $MF '\mag=magstep(0.5);' input cmfi10 # 10.95pt $MF '\mag=magstep(1);' input cmfi10 # 12pt # COMPUTER MODERN DUNHILL # The fd file only defines 10pt! $MF '\mag=magstep(0);' input cmdunh10 $MF '\mag=magstep(0.5);' input cmdunh10 # 10.95pt $MF '\mag=magstep(1);' input cmdunh10 # 12pt # COMPUTER MODERN FIBONACCI # The fd file only defines 8pt! $MF '\mag=magstep(0);' input cmfib8 $MF '\mag=magstep(1.22);' input cmfib8 # 10pt # COMPUTER MODERN OTHER STUFF # $MF '\mag=magstep(0);' input cminch $MF '\mag=magstep(0);' input cmssq8 $MF '\mag=magstep(0);' input cmssqi8 # COMPUTER MODERN TeX extended ASCII # $MF '\mag=magstep(0);' input cmtex8 $MF '\mag=magstep(0);' input cmtex9 $MF '\mag=magstep(0);' input cmtex10 echo "\ Metafont finished.\ " echo "Now running GFtoPK." # note this requires csh or tcsh foreach file ( *gf ) gftopk $file end cat <<EOF GFtoPK finished." To complete the font installation, do the following: copy all .tfm-files into the tfm directory copy all .pk-files into the pk-directory delete all .gf files. Have a nice day." EOF