home *** CD-ROM | disk | FTP | other *** search
/ Atari FTP / ATARI_FTP_0693.zip / ATARI_FTP_0693 / Tex / Tex29 / StTeXmac.zoo / macros / lfonts.tex < prev    next >
Text File  |  1988-10-16  |  39KB  |  879 lines

  1. % File LFONTS - Version of 11 November 1986.
  2. %
  3. % This version of LFONTS.TEX is for the CMR fonts.  It was converted
  4. % from the AMR version by David Fuchs on 18 December 1985.
  5. % And corrected on 11 Nov 1986 by Leslie Lamport.  
  6.  
  7. % This file contains the following kludge: 8pt and 9pt versions
  8. % of \sc call magnifications of amcsc10 instead of cmcsc10.
  9. % Search for KLUDGE to find for both instances.
  10. %
  11. % This file needs to be customized for the fonts available at a particular
  12. % site.  There are three places where changes need to be made.  They
  13. % can be found by searching this file for the string  FONT-CUSTOMIZING.
  14. %
  15. % FONT CONVENTIONS
  16. %
  17. % A TYPESTYLE COMMAND is something like \it that defines a type style.
  18. % Each style command \xx is defined to be \protect\pxx, where 
  19. % \pxx is defined to choose the correct font for the current size.
  20. % This allows style commands to appear in 'unsafe' arguments where
  21. % protection is required.
  22. %
  23. % A SIZE COMMAND is something like \normalsize that defines a type size.
  24. % It is defined by the document style.  However, \normalsize is handled
  25. % somewhat differently because it is called so often--e.g., on every
  26. % page by the output routine.  The document style defines \@normalsize
  27. % instead of \normalsize.
  28. % A ONE-SIZE typestyle is one that exists only in the \normalsize size.
  29. %
  30. % A FONT-SIZE COMMAND is one that defines \textfont, \scriptfont and 
  31. % \scriptscriptfont for the font families corresponding to preloaded fonts,
  32. % as well as the typestyle commands for the preloaded fonts.  Each
  33. % font-size command has an associated @fontsize command, having the same
  34. % name except for an '@' at the front.   All font-size commands are defined 
  35. % in LFONTS.  The naming convention is that a fifteenpt font has a font-size
  36. % name \xvpt, and so on.
  37. %
  38. % Each size command \SIZE executes the command
  39. %             \@setsize\SIZE{BASELINESKIP}\FONTSIZE\@FONTSIZE
  40. % which does the following.
  41. %   0. Executes \@nomath\SIZE to issue warning if in math mode.
  42. %   1. \let \@currsize = \SIZE  
  43. %   2. Sets \strutbox to a strut of height .7 * BASELINESKIP and
  44. %      depth .3 * BASELINESKIP
  45. %   3. Sets \baselineskip to \baselinestretch * BASELINESKIP 
  46. %      and 
  47. %   4. Calls \FONTSIZE 
  48. %   5. Executes the \@FONTSIZE command.
  49. % It should then define all the typestyle commands not defined by the font-size
  50. % command, except for the one-size type styles. A typestyle command for which
  51. % the corresponding font exists but is not preloaded is defined to expand to a
  52. % \@getfont command.  A typestyle whose font does not exist is defined to 
  53. % expand to a \@subfont command.
  54. %
  55. % A one-size typestyle whose font is not preloaded is defined to expand to
  56. % a \@onesizefont command.
  57. %
  58. % \em is defined to be \it inside an unslanted style and \rm inside a
  59. % slanted style.  An \em command in a section title will produce a \pem
  60. % command in the table of contents.
  61. %
  62.  
  63. \def\em{\protect\pem{}}
  64. \def\pem{\ifdim \fontdimen\@ne\font >\z@ \rm \else \it \fi}
  65.  
  66. \def\normalsize{\ifx\@currsize\normalsize \rm \else \@normalsize\fi}
  67.  
  68. % \load{SIZE}{STYLE} : Solves anomaly of loaded-on-demand font
  69. %    used for first time in math mode.  Give this command outside math
  70. %    mode, before formula using it for first time.
  71. \def\load#1#2{\let\@tempa\@currsize \let\@currsize\relax #1#2\@tempa}
  72.  
  73. % \newfont{\CMD}{FONT} defines \CMD to be the font FONT.
  74. %    It is equivalent to \font \CMD = FONT
  75. % \symbol{NUM} == \char NUM
  76.  
  77. \def\newfont#1#2{\@ifdefinable #1{\font #1=#2\relax}}
  78. \def\symbol#1{\char #1\relax}
  79.  
  80.  
  81.  
  82. % \@getfont \STYLE \FAM \@FONTSIZE{LOADING.INFO}
  83. %   \STYLE       = style command
  84. %   \FAM         = a control sequence defined by \newfam\FAM
  85. %   \@FONTSIZE   = the @fontsize command for the current size. 
  86. %   LOADING.INFO = information needed to load the font--e.g., 
  87. %                  cmtti10 \magstep 2
  88. %   Does the following, where \FONTNAME denotes a new unique, untypeable
  89. %   font name:
  90. %    1. Executes  \font \FONTNAME = LOADING.INFO 
  91. %    2. Appends '\textfont FAM \FONTNAME \def\STYLE{\fam \FAM \FONTNAME}' 
  92. %       to the definition of \@FONTSIZE.
  93. %    3. Executes \@FONTSIZE \STYLE.
  94. %
  95. % \@nohyphens\STYLE\@FONTSIZE
  96. %   Used right after \@getfont to set \hyphenchar of the new font to -1,
  97. %   thereby prohibiting hyphenation.  It is used with \tt fonts.
  98. %   (\@nohyphens was added on 12/18/85)
  99. %
  100. % \@subfont \STYLE \REPSTYLE 
  101. %   \STYLE, \REPSTYLE = type style commands.
  102. %   Types warning message and defines uses \REPSTYLE.
  103. %
  104. % \@onesizefont \STYLE {LOADING.INFO}
  105. %   Defines \STYLE to be a typestyle that exists only for the \normalsize
  106. %   size.  It produces the font specified by LOADING.INFO
  107. %
  108. % \@addfontinfo\@FONTSIZE{DEFS}
  109. %    Expands DEFS and adds to the definition of \@FONTSIZE. Items that should 
  110. %    not be expanded should be protected with \@prtct---except no protection
  111. %    is needed for '\def\foo', only for the contents of the definition.
  112. %
  113. % \@nomath\CS : Types a warning '\CS used in math mode' if encountered
  114. %    in math mode.
  115.  
  116. % Remove \outer from definition of \newfam
  117. \def\newfam{\alloc@8\fam\chardef\sixt@@n}
  118.  
  119. \def\@setsize#1#2#3#4{\@nomath#1\let\@currsize#1\baselineskip
  120.    #2\setbox\strutbox\hbox{\vrule height.7\baselineskip
  121.       depth.3\baselineskip width\z@}\baselineskip\baselinestretch\baselineskip
  122.    \normalbaselineskip\baselineskip#3#4}
  123.  
  124. \newif\if@bold
  125.  
  126. \let\@prtct=\relax
  127.  
  128. \def\@addfontinfo#1#2{{\def\@prtct{\noexpand\@prtct\noexpand}\def\def{\noexpand
  129.     \def\noexpand}\xdef#1{#1#2}}}
  130.  
  131. \def\@getfont#1#2#3#4{\@ifundefined{\string #1\string #3}{\global\expandafter
  132.     \font \csname \string #1\string #3\endcsname #4\relax 
  133.      \@addfontinfo#3{\textfont #2\csname \string #1\string #3\endcsname 
  134.      \scriptfont #2\csname \string #1\string #3\endcsname 
  135.      \scriptscriptfont #2\csname \string #1\string #3\endcsname 
  136.      \def#1{\fam #2\csname\string #1\string #3\endcsname}}}{}#3#1}
  137.  
  138. \def\@nohyphens#1#2{\global\expandafter \hyphenchar\csname 
  139.    \string #1\string #2\endcsname \m@ne}
  140.  
  141. \def\@subfont#1#2{\@warning{No \string#1\space typeface in 
  142.         this size, using \string#2}#2}
  143.  
  144. \def\@onesizefont#1#2{\expandafter\newfam\csname fm\string#1\endcsname
  145.   \global\expandafter\font\csname ft\string#1\endcsname #2\relax
  146.   \gdef#1{\ifx \@currsize\normalsize \@ftfam#1\else
  147.   \@warning{Typeface \string#1\space available only in 
  148.   \string\normalsize, using \string\rm}\gdef #1{\ifx \@currsize\normalsize 
  149.   \textfont\@fontfam#1 \scriptfont\@fontfam#1 \scriptscriptfont
  150.   \@fontfam#1\@ftfam#1\else \rm\fi}#1\fi}#1}
  151.  
  152. \def\@ftfam#1{\fam\csname fm\string#1\endcsname\csname ft\string#1\endcsname}
  153.  
  154. \def\@nomath#1{\ifmmode \@warning{\string#1\space in math mode.}\fi}
  155. \def\@nomathbold{\ifmmode \@warning{\string\mathbold\space in math mode.}\fi}
  156.  
  157. % The following definitions save token space.  E.g., using \@height 
  158. % instead of height saves 5 tokens at the cost in time of one macro 
  159. % expansion.
  160.  
  161. \def\@height{height}
  162. \def\@depth{depth}
  163. \def\@width{width}
  164.  
  165. \def\@magscale#1{ scaled \magstep #1}
  166. \def\@halfmag{ scaled \magstephalf}
  167. \def\@ptscale#1{ scaled #100}
  168.  
  169.  
  170. %% FONT-CUSTOMIZING:  The following \font commands define the
  171. %% preloaded LaTeX fonts.  Font names should be changed to cause
  172. %% different fonts to be loaded in place of these particular AMR fonts.
  173. %% \font commands should be added or deleted to change which fonts
  174. %% are preloaded.
  175.  
  176. % five point
  177.  \font\fivrm  = cmr5               % roman
  178.  \font\fivmi  = cmmi5              % math italic
  179.     \skewchar\fivmi ='177          %  for placement of accents
  180. %\font\fivmib = cmmib10  \@ptscale5 % bold math italic
  181.  \font\fivsy  = cmsy5              % math symbols
  182.     \skewchar\fivsy ='60           %   for placement of math accents
  183. %\font\fivsyb = cmbsy10 \@ptscale5 % bold math symbols
  184. %\font\fivit  = cmti7   scaled 714 % text italic
  185. %\font\fivsl  = cmsl10  \@ptscale5 % slanted
  186. %\font\fivbf  = cmbx7   scaled 714 % extended bold 
  187. %\font\fivbfs = cmbxsl10\@ptscale5 % extended bold slanted
  188. %\font\fivtt  = cmtt10  \@ptscale5 % typewriter
  189. %\font\fivtti = cmitt10 \@ptscale5 % italic typewriter
  190. %\font\fivtts = cmsltt10\@ptscale5 % slanted typewriter
  191. %\font\fivsf  = cmss10  \@ptscale5 % sans serif
  192. %\font\fivsfi = cmssi10 \@ptscale5 % italic sans serif
  193. %\font\fivsfb = cmssbx10\@ptscale5 % bold sans serif
  194. %\font\fivsc  = cmcsc10 \@ptscale5 % small caps
  195.  \font\fivly  = lasy5             % LaTeX symbols
  196. %\font\fivlyb = lasyb10 \@ptscale5 % LaTeX symbols
  197. %\font\fivuit = cmu10   \@ptscale5 % unslanted italic
  198.  
  199. % six point
  200.  \font\sixrm  = cmr6               % roman
  201.  \font\sixmi  = cmmi6              % math italic
  202.     \skewchar\sixmi ='177          %  for placement of accents
  203. %\font\sixmib = cmmib10  \@ptscale6 % bold math italic
  204.  \font\sixsy  = cmsy6              % math symbols
  205.     \skewchar\sixsy ='60           %   for placement of math accents
  206. %\font\sixsyb = cmbsy10 \@ptscale6 % bold math symbols
  207. %\font\sixit  = cmti7   scaled 857 % text italic
  208. %\font\sixsl  = cmsl10  \@ptscale6 % slanted
  209. %\font\sixbf  = cmbx7   scaled 857 % extended bold 
  210. %\font\sixbfs = cmbxsl10\@ptscale6 % extended bold slanted
  211. %\font\sixtt  = cmtt10  \@ptscale6 % typewriter
  212. %\font\sixtti = cmitt10 \@ptscale6 % italic typewriter
  213. %\font\sixtts = cmsltt10\@ptscale6 % slanted typewriter
  214. %\font\sixsf  = cmss10  \@ptscale6 % sans serif
  215. %\font\sixsfi = cmssi10 \@ptscale6 % italic sans serif
  216. %\font\sixsfb = cmssbx10\@ptscale6 % bold sans serif
  217. %\font\sixsc  = cmcsc10 \@ptscale6 % small caps
  218.  \font\sixly  = lasy6             % LaTeX symbols
  219. %\font\sixlyb = lasyb10 \@ptscale6 % LaTeX symbols
  220. %\font\sixuit = cmu10   \@ptscale6 % unslanted italic
  221.  
  222. % seven point
  223.  \font\sevrm  = cmr7               % roman
  224.  \font\sevmi  = cmmi7              % math italic
  225.     \skewchar\sevmi ='177          %  for placement of accents
  226. %\font\sevmib = cmmib10  \@ptscale7 % bold math italic
  227.  \font\sevsy  = cmsy7              % math symbols
  228.     \skewchar\sevsy ='60           %   for placement of math accents
  229. %\font\sevsyb = cmbsy10 \@ptscale7 % bold math symbols
  230.  \font\sevit  = cmti7              % text italic
  231. %\font\sevsl  = cmsl10  \@ptscale7 % slanted
  232. %\font\sevbf  = cmbx7              % extended bold 
  233. %\font\sevbfs = cmbxsl10\@ptscale7 % extended bold slanted
  234. %\font\sevtt  = cmtt10  \@ptscale7 % typewriter
  235. %\font\sevtti = cmitt10 \@ptscale7 % italic typewriter
  236. %\font\sevtts = cmsltt10\@ptscale7 % slanted typewriter
  237. %\font\sevsf  = cmss10  \@ptscale7 % sans serif
  238. %\font\sevsfi = cmssi10 \@ptscale7 % italic sans serif
  239. %\font\sevsfb = cmssbx10\@ptscale7 % bold sans serif
  240. %\font\sevsc  = cmcsc10 \@ptscale7 % small caps
  241.  \font\sevly  = lasy7             % LaTeX symbols
  242. %\font\sevlyb = lasyb10 \@ptscale7 % LaTeX symbols
  243. %\font\sevuit = cmu10   \@ptscale7 % unslanted italic
  244.  
  245. % eight point
  246.  \font\egtrm  = cmr8               % roman
  247.  \font\egtmi  = cmmi8              % math italic
  248.     \skewchar\egtmi ='177          %  for placement of accents
  249. %\font\egtmib = cmmib10  \@ptscale8 % bold math italic
  250.  \font\egtsy  = cmsy8              % math symbols
  251.     \skewchar\egtsy ='60           %   for placement of math accents
  252. %\font\egtsyb = cmbsy10 \@ptscale8 % bold math symbols
  253.  \font\egtit  = cmti8              % text italic
  254. %\font\egtsl  = cmsl8              % slanted
  255. %\font\egtbf  = cmbx8              % extended bold 
  256. %\font\egtbfs = cmbxsl10\@ptscale8 % extended bold slanted
  257. %\font\egttt  = cmtt8              % typewriter
  258. %\font\egttti = cmitt10 \@ptscale8 % italic typewriter
  259. %\font\egttts = cmsltt10\@ptscale8 % slanted typewriter
  260. %\font\egtsf  = cmss10  \@ptscale8 % sans serif
  261. %\font\egtsfi = cmssi10 \@ptscale8 % italic sans serif
  262. %\font\egtsfb = cmssbx10\@ptscale8 % bold sans serif
  263. %\font\egtsc  = cmcsc10 \@ptscale8 % small caps
  264.  \font\egtly  = lasy8             % LaTeX symbols
  265. %\font\egtlyb = lasyb10 \@ptscale8 % LaTeX symbols
  266. %\font\egtuit = cmu10   \@ptscale8 % unslanted italic
  267.  
  268.  
  269. % nine point
  270.  \font\ninrm  = cmr9               % roman
  271.  \font\ninmi  = cmmi9              % math italic
  272.     \skewchar\ninmi ='177          %  for placement of accents
  273. %\font\ninmib = cmmib10  \@ptscale9 % bold math italic
  274.  \font\ninsy  = cmsy9              % math symbols
  275.     \skewchar\ninsy ='60           %   for placement of math accents
  276. %\font\ninsyb = cmbsy10 \@ptscale9 % bold math symbols
  277.  \font\ninit  = cmti9              % text italic
  278. %\font\ninsl  = cmsl9              % slanted
  279.  \font\ninbf  = cmbx9              % extended bold 
  280. %\font\ninbfs = cmbxsl10\@ptscale9 % extended bold slanted
  281.  \font\nintt  = cmtt9              % typewriter
  282.     \hyphenchar\nintt = -1         %  suppress hyphenation in \tt font
  283. %\font\nintti = cmitt10 \@ptscale9 % italic typewriter
  284. %\font\nintts = cmsltt10\@ptscale9 % slanted typewriter
  285. %\font\ninsf  = cmss10  \@ptscale9 % sans serif
  286. %\font\ninsfi = cmssi10 \@ptscale9 % italic sans serif
  287. %\font\ninsfb = cmssbx10\@ptscale9 % bold sans serif
  288. %\font\ninsc  = cmcsc10 \@ptscale9 % small caps
  289.  \font\ninly  = lasy9             % LaTeX symbols
  290. %\font\ninlyb = lasyb10 \@ptscale9 % LaTeX symbols
  291. %\font\ninuit = cmu10   \@ptscale9 % unslanted italic
  292.  
  293. % ten point
  294.  \font\tenrm  = cmr10    % roman
  295.  \font\tenmi  = cmmi10   % math italic
  296.     \skewchar\tenmi ='177  %  for placement of accents
  297. %\font\tenmib = cmmib10   % bold math italic
  298.  \font\tensy  = cmsy10   % math symbols
  299.     \skewchar\tensy ='60 %   for placement of math accents
  300. %\font\tensyb = cmbsy10  % bold symbols
  301.  \font\tenit  = cmti10   % text italic
  302.  \font\tensl  = cmsl10   % slanted
  303.  \font\tenbf  = cmbx10   % extended bold 
  304. %\font\tenbfs = cmbxsl10 % extended bold slanted
  305.  \font\tentt  = cmtt10   % typewriter
  306.     \hyphenchar\tentt = -1         %  suppress hyphenation in \tt font
  307. %\font\tentti = cmitt10  % italic typewriter
  308. %\font\tentts = cmsltt10 % slanted typewriter
  309.  \font\tensf  = cmss10   % sans serif
  310. %\font\tensfi = cmssi10  % italic sans serif
  311. %\font\tensfb = cmssbx10 % bold sans serif
  312. %\font\tensc  = cmcsc10  % small caps
  313.  \font\tenly  = lasy10  % LaTeX symbols
  314. %\font\tenlyb = lasyb10 % bold LaTeX symbols
  315. %\font\tenuit = cmu10    % unslanted italic
  316.  
  317. % eleven point
  318.  \font\elvrm  = cmr10    \@halfmag % roman  
  319.  \font\elvmi  = cmmi10   \@halfmag % math italic
  320.     \skewchar\elvmi ='177          %  for placement of accents
  321. %\font\elvmib = cmmib10   \@halfmag % bold math italic
  322.  \font\elvsy  = cmsy10   \@halfmag % math symbols
  323.     \skewchar\elvsy ='60           %   for placement of math accents
  324. %\font\elvsyb = cmbsy10  \@halfmag % bold symbols
  325.  \font\elvit  = cmti10   \@halfmag % text italic
  326.  \font\elvsl  = cmsl10   \@halfmag % slanted
  327.  \font\elvbf  = cmbx10   \@halfmag % exelvded bold 
  328. %\font\elvbfs = cmbxsl10 \@halfmag % exelvded bold slanted
  329.  \font\elvtt  = cmtt10   \@halfmag % typewriter
  330.     \hyphenchar\elvtt = -1         %  suppress hyphenation in \tt font
  331. %\font\elvtti = cmitt10  \@halfmag % italic typewriter
  332. %\font\elvtts = cmsltt10 \@halfmag % slanted typewriter
  333.  \font\elvsf  = cmss10   \@halfmag % sans serif
  334. %\font\elvsfi = cmssi10  \@halfmag % italic sans serif
  335. %\font\elvsfb = cmssbx10 \@halfmag % bold sans serif
  336. %\font\elvsc  = cmcsc10  \@halfmag % small caps
  337.  \font\elvly  = lasy10  \@halfmag % LaTeX symbols
  338. %\font\elvlyb = lasyb10 \@halfmag % bold LaTeX symbols
  339. %\font\elvuit = cmu10    \@halfmag % unslanted italic
  340.  
  341. % twelve point
  342.  \font\twlrm  = cmr12                 % roman  
  343.  \font\twlmi  = cmmi12               % math italic
  344.     \skewchar\twlmi ='177          %  for placement of accents
  345. %\font\twlmib = cmmib10   \@magscale1 % bold math italic
  346.  \font\twlsy  = cmsy10   \@magscale1 % math symbols
  347.     \skewchar\twlsy ='60           %   for placement of math accents
  348. %\font\twlsyb = cmbsy10  \@magscale1 % bold symbols
  349.  \font\twlit  = cmti12               % text italic
  350.  \font\twlsl  = cmsl12               % slanted
  351.  \font\twlbf  = cmbx12               % extended bold 
  352. %\font\twlbfs = cmbxsl10 \@magscale1 % extended bold slanted
  353.  \font\twltt  = cmtt12               % typewriter
  354.     \hyphenchar\twltt = -1         %  suppress hyphenation in \tt font
  355. %\font\twltti = cmitt10  \@magscale1 % italic typewriter
  356. %\font\twltts = cmsltt10 \@magscale1 % slanted typewriter
  357.  \font\twlsf  = cmss12               % sans serif
  358. %\font\twlsfi = cmssi10  \@magscale1 % italic sans serif
  359. %\font\twlsfb = cmssbx10 \@magscale1 % bold sans serif
  360. %\font\twlsc  = cmcsc10  \@magscale1 % small caps
  361.  \font\twlly  = lasy10  \@magscale1 % LaTeX symbols
  362. %\font\twllyb = lasyb10 \@magscale1 % bold LaTeX symbols
  363. %\font\twluit = cmu10    \@magscale1 % unslanted italic
  364.  
  365. % fourteen point
  366.  \font\frtnrm  = cmr10    \@magscale2 % roman  
  367.  \font\frtnmi  = cmmi10   \@magscale2 % math italic
  368.     \skewchar\frtnmi ='177          %  for placement of accents
  369. %\font\frtnmib = cmmib10   \@magscale2 % bold math italic
  370.  \font\frtnsy  = cmsy10   \@magscale2 % math symbols
  371.     \skewchar\frtnsy ='60           %   for placement of math accents
  372. %\font\frtnsyb = cmbsy10  \@magscale2 % bold symbols
  373. %\font\frtnit  = cmti10   \@magscale2 % text italic
  374. %\font\frtnsl  = cmsl10   \@magscale2 % slanted
  375.  \font\frtnbf  = cmbx10   \@magscale2 % extended bold 
  376. %\font\frtnbfs = cmbxsl10 \@magscale2 % extended bold slanted
  377. %\font\frtntt  = cmtt10   \@magscale2 % typewriter
  378. %\font\frtntti = cmitt10  \@magscale2 % italic typewriter
  379. %\font\frtntts = cmsltt10 \@magscale2 % slanted typewriter
  380. %\font\frtnsf  = cmss10   \@magscale2 % sans serif
  381. %\font\frtnsfi = cmssi10  \@magscale2 % italic sans serif
  382. %\font\frtnsfb = cmssbx10 \@magscale2 % bold sans serif
  383. %\font\frtnsc  = cmcsc10  \@magscale2 % small caps
  384.  \font\frtnly  = lasy10  \@magscale2 % LaTeX symbols
  385. %\font\frtnlyb = lasyb10 \@magscale2 % bold LaTeX symbols
  386. %\font\frtnuit = cmu10    \@magscale2 % unslanted italic
  387.  
  388. % seventeen point
  389.  \font\svtnrm  = cmr17                % roman  
  390.  \font\svtnmi  = cmmi10   \@magscale3 % math italic
  391.     \skewchar\svtnmi ='177          %  for placement of accents
  392. %\font\svtnmib = cmmib10   \@magscale3 % bold math italic
  393.  \font\svtnsy  = cmsy10   \@magscale3 % math symbols
  394.     \skewchar\svtnsy ='60           %   for placement of math accents
  395. %\font\svtnsyb = cmbsy10  \@magscale3 % bold symbols
  396. %\font\svtnit  = cmti10   \@magscale3 % text italic
  397. %\font\svtnsl  = cmsl10   \@magscale3 % slanted
  398.  \font\svtnbf  = cmbx10   \@magscale3 % extended bold 
  399. %\font\svtnbfs = cmbxsl10 \@magscale3 % extended bold slanted
  400. %\font\svtntt  = cmtt10   \@magscale3 % typewriter
  401. %\font\svtntti = cmitt10  \@magscale3 % italic typewriter
  402. %\font\svtntts = cmsltt10 \@magscale3 % slanted typewriter
  403. %\font\svtnsf  = cmss10   \@magscale3 % sans serif
  404. %\font\svtnsfi = cmssi10  \@magscale3 % italic sans serif
  405. %\font\svtnsfb = cmssbx10 \@magscale3 % bold sans serif
  406. %\font\svtnsc  = cmcsc10  \@magscale3 % small caps
  407.  \font\svtnly  = lasy10  \@magscale3 % LaTeX symbols
  408. %\font\svtnlyb = lasyb10 \@magscale3 % bold LaTeX symbols
  409. %\font\svtnuit = cmu10    \@magscale3 % unslanted italic
  410.  
  411. % twenty point
  412.  \font\twtyrm  = cmr10    \@magscale4 % roman  
  413.  \font\twtymi  = cmmi10   \@magscale4 % math italic
  414.     \skewchar\twtymi ='177          %  for placement of accents
  415. %\font\twtymib = cmmib10   \@magscale4 % bold math italic
  416.  \font\twtysy  = cmsy10   \@magscale4 % math symbols
  417.     \skewchar\twtysy ='60           %   for placement of math accents
  418. %\font\twtysyb = cmbsy10  \@magscale4 % bold symbols
  419. %\font\twtyit  = cmti10   \@magscale4 % text italic
  420. %\font\twtysl  = cmsl10   \@magscale4 % slanted
  421. %\font\twtybf  = cmbx10   \@magscale4 % extended bold 
  422. %\font\twtybfs = cmbxsl10 \@magscale4 % extended bold slanted
  423. %\font\twtytt  = cmtt10   \@magscale4 % typewriter
  424. %\font\twtytti = cmitt10  \@magscale4 % italic typewriter
  425. %\font\twtytts = cmsltt10 \@magscale4 % slanted typewriter
  426. %\font\twtysf  = cmss10   \@magscale4 % sans serif
  427. %\font\twtysfi = cmssi10  \@magscale4 % italic sans serif
  428. %\font\twtysfb = cmssbx10 \@magscale4 % bold sans serif
  429. %\font\twtysc  = cmcsc10  \@magscale4 % small caps
  430.  \font\twtyly  = lasy10  \@magscale4 % LaTeX symbols
  431. %\font\twtylyb = lasyb10 \@magscale4 % bold LaTeX symbols
  432. %\font\twtyuit = cmu10    \@magscale4 % unslanted italic
  433.  
  434. % twenty-five point
  435.  \font\twfvrm  = cmr10    \@magscale5 % roman  
  436. %\font\twfvmi  = cmmi10   \@magscale5 % math italic
  437. %\font\twfvmib = cmmib10   \@magscale5 % bold math italic
  438. %\font\twfvsy  = cmsy10   \@magscale5 % math symbols
  439. %\font\twfvsyb = cmbsy10  \@magscale5 % bold symbols
  440. %\font\twfvit  = cmti10   \@magscale5 % text italic
  441. %\font\twfvsl  = cmsl10   \@magscale5 % slanted
  442. %\font\twfvbf  = cmbx10   \@magscale5 % extended bold 
  443. %\font\twfvbfs = cmbxsl10 \@magscale5 % extended bold slanted
  444. %\font\twfvtt  = cmtt10   \@magscale5 % typewriter
  445. %\font\twfvtti = cmitt10  \@magscale5 % italic typewriter
  446. %\font\twfvtts = cmsltt10 \@magscale5 % slanted typewriter
  447. %\font\twfvsf  = cmss10   \@magscale5 % sans serif
  448. %\font\twfvsfi = cmssi10  \@magscale5 % italic sans serif
  449. %\font\twfvsfb = cmssbx10 \@magscale5 % bold sans serif
  450. %\font\twfvsc  = cmcsc10  \@magscale5 % small caps
  451. %\font\twfvly  = lasy10   \@magscale5 % LaTeX symbols
  452. %\font\twfvlyb = lasyb10  \@magscale5 % bold LaTeX symbols
  453. %\font\twfvuit = cmu10    \@magscale5 % unslanted italic
  454.  
  455. % Math extension
  456.  \font\tenex   = cmex10 
  457.  
  458. % line & circle fonts 
  459. \font\tenln    = line10
  460. \font\tenlnw   = linew10  
  461. \font\tencirc  = circle10
  462. \font\tencircw = circlew10 
  463.  
  464. % Change made 6 May 86: `\@warning' replaced by `\immediate\write 15' 
  465. % since it's not defined when lfonts.tex is read by lplain.tex.
  466. %
  467. \ifnum\fontdimen8\tenln=\fontdimen8\tencirc \else 
  468.   \immediate\write 15{Incompatible thin line and circle fonts}\fi
  469. \ifnum\fontdimen8\tenlnw=\fontdimen8\tencircw \else 
  470.   \immediate\write 15{Incompatible thick line and circle fonts}\fi
  471.  
  472.  
  473. % protected font names
  474. \def\rm{\protect\prm}
  475. \def\it{\protect\pit}
  476. \def\bf{\protect\pbf}
  477. \def\sl{\protect\psl}
  478. \def\sf{\protect\psf}
  479. \def\sc{\protect\psc}
  480. \def\tt{\protect\ptt}
  481.  
  482. %% FONT-CUSTOMIZING:  The following definitions define certain commands
  483. %% to be abbreviations for certain font names.  These commands are used
  484. %% below in \@getfont commands, which load the loaded-on-demand fonts.
  485. %% This is done only to save space.  To change the fonts that are loaded
  486. %% on demand, one can either change these definitions or else change
  487. %% the arguments of the \@getfont commands.  
  488. %%
  489. \def\@mbi{cmmib10}
  490. \def\@mbsy{cmbsy10}
  491. \def\@mcsc{cmcsc10}
  492. \def\@mss{cmss10}
  493. \def\@lasyb{lasyb10}
  494.  
  495. % families
  496.  
  497. \newfam\itfam      % \it is family 4
  498. \newfam\slfam      % \sl is family 5
  499. \newfam\bffam      % \bf is family 6
  500. \newfam\ttfam      % \tt is family 7
  501. \newfam\sffam      % \sf is family 8
  502. \newfam\scfam      % \sf is family 9
  503. \newfam\lyfam      % \ly is family 10
  504.  
  505. \def\cal{\fam\tw@}
  506. \def\mit{\fam\@ne}
  507.  
  508. \def\@setstrut{\setbox\strutbox=\hbox{\vrule \@height .7\baselineskip
  509.     \@depth .3\baselineskip \@width\z@}}
  510.  
  511.  
  512. %% FONT-CUSTOMIZING: The commands \vpt, \vipt, ... , \xxvpt perform all
  513. %% the declarations needed to change the type size to 5pt, 6pt, ... ,
  514. %% 25pt.  To see how this works, consider the definition of \viipt,
  515. %% which determines the fonts used in a 7pt type size.  The command
  516. %%    \def\pit{\fam\itfam\sevit}
  517. %% means that the \it command causes the preloaded \sevit font to
  518. %% be used--this font was defined earlier with a \font\sevit...
  519. %% command.  The commands
  520. %%     \textfont\itfam\sevit 
  521. %%     \scriptfont\itfam\sevit 
  522. %%     \scriptscriptfont\itfam\sevit 
  523. %% tell TeX to use the \sevit font for all three math-mode sizes
  524. %% (text, script, and scriptscript) for the 7pt size.  
  525. %% The fonts appearing in these commands must be preloaded.
  526. %% 
  527. %% The command 
  528. %%     \def\pbf{\@getfont\pbf\bffam\@viipt{ambx7}}
  529. %% declares \bf to use a loaded-on-demand font--namely, the font
  530. %% ambx7.
  531. %%
  532. %% The command
  533. %%     \def\ptt{\@subfont\tt\rm}
  534. %% declares that the \tt font is unavailable in the 7pt size, so
  535. %% the \rm font is used instead.  (The substituted type style should
  536. %% correspond to a preloaded size.)
  537.  
  538. \def\vpt{\textfont\z@\fivrm 
  539.   \scriptfont\z@\fivrm \scriptscriptfont\z@\fivrm
  540. \textfont\@ne\fivmi \scriptfont\@ne\fivmi \scriptscriptfont\@ne\fivmi
  541. \textfont\tw@\fivsy \scriptfont\tw@\fivsy \scriptscriptfont\tw@\fivsy
  542. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  543. \def\prm{\fam\z@\fivrm}%
  544. \def\unboldmath{\everymath{}\everydisplay{}\@nomath
  545.   \unboldmath\fam\@ne\@boldfalse}\@boldfalse
  546. \def\boldmath{\@subfont\boldmath\unboldmath}%
  547. \def\pit{\@subfont\it\rm}% 
  548. \def\psl{\@subfont\sl\rm}%
  549. \def\pbf{\@getfont\pbf\bffam\@vpt{cmbx5}}%
  550. \def\ptt{\@subfont\tt\rm}%
  551. \def\psf{\@subfont\sf\rm}%
  552. \def\psc{\@subfont\sc\rm}%
  553. \def\ly{\fam\lyfam\fivly}\textfont\lyfam\fivly 
  554.     \scriptfont\lyfam\fivly \scriptscriptfont\lyfam\fivly 
  555. \@setstrut\rm}
  556.  
  557. \def\@vpt{}
  558.  
  559. \def\vipt{\textfont\z@\sixrm 
  560.   \scriptfont\z@\sixrm \scriptscriptfont\z@\sixrm
  561. \textfont\@ne\sixmi \scriptfont\@ne\sixmi \scriptscriptfont\@ne\sixmi
  562. \textfont\tw@\sixsy \scriptfont\tw@\sixsy \scriptscriptfont\tw@\sixsy
  563. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  564. \def\prm{\fam\z@\sixrm}%
  565. \def\unboldmath{\everymath{}\everydisplay{}\@nomath
  566.   \unboldmath\@boldfalse}\@boldfalse
  567. \def\boldmath{\@subfont\boldmath\unboldmath}%
  568. \def\pit{\@subfont\it\rm}%
  569. \def\psl{\@subfont\sl\rm}%
  570. \def\pbf{\@getfont\pbf\bffam\@vipt{cmbx6}}%
  571. \def\ptt{\@subfont\tt\rm}%
  572. \def\psf{\@subfont\sf\rm}%
  573. \def\psc{\@subfont\sc\rm}%
  574. \def\ly{\fam\lyfam\sixly}\textfont\lyfam\sixly 
  575.     \scriptfont\lyfam\sixly \scriptscriptfont\lyfam\sixly 
  576. \@setstrut\rm}
  577.  
  578. \def\@vipt{}
  579.  
  580. \def\viipt{\textfont\z@\sevrm 
  581.   \scriptfont\z@\sixrm \scriptscriptfont\z@\fivrm
  582. \textfont\@ne\sevmi \scriptfont\@ne\fivmi \scriptscriptfont\@ne\fivmi
  583. \textfont\tw@\sevsy \scriptfont\tw@\fivsy \scriptscriptfont\tw@\fivsy
  584. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  585. \def\prm{\fam\z@\sevrm}%
  586. \def\unboldmath{\everymath{}\everydisplay{}\@nomath
  587. \unboldmath\@boldfalse}\@boldfalse
  588. \def\boldmath{\@subfont\boldmath\unboldmath}%
  589. \def\pit{\fam\itfam\sevit}\textfont\itfam\sevit 
  590.    \scriptfont\itfam\sevit \scriptscriptfont\itfam\sevit 
  591. \def\psl{\@subfont\sl\it}%
  592. \def\pbf{\@getfont\pbf\bffam\@viipt{cmbx7}}%
  593. \def\ptt{\@subfont\tt\rm}%
  594. \def\psf{\@subfont\sf\rm}%
  595. \def\psc{\@subfont\sc\rm}%
  596. \def\ly{\fam\lyfam\sevly}\textfont\lyfam\sevly 
  597.     \scriptfont\lyfam\fivly \scriptscriptfont\lyfam\fivly 
  598. \@setstrut \rm}
  599.  
  600. \def\@viipt{}
  601.  
  602. \def\viiipt{\textfont\z@\egtrm 
  603.   \scriptfont\z@\sixrm \scriptscriptfont\z@\fivrm
  604. \textfont\@ne\egtmi \scriptfont\@ne\sixmi \scriptscriptfont\@ne\fivmi
  605. \textfont\tw@\egtsy \scriptfont\tw@\sixsy \scriptscriptfont\tw@\fivsy
  606. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  607. \def\prm{\fam\z@\egtrm}%
  608. \def\unboldmath{\everymath{}\everydisplay{}\@nomath
  609. \unboldmath\@boldfalse}\@boldfalse
  610. \def\boldmath{\@subfont\boldmath\unboldmath}%
  611. \def\pit{\fam\itfam\egtit}\textfont\itfam\egtit 
  612.    \scriptfont\itfam\sevit \scriptscriptfont\itfam\sevit 
  613. \def\psl{\@getfont\psl\slfam\@viiipt{cmsl8}}%
  614. \def\pbf{\@getfont\pbf\bffam\@viiipt{cmbx8}}%
  615. \def\ptt{\@getfont\ptt\ttfam\@viiipt{cmtt8}\@nohyphens\ptt\@viiipt}%
  616. \def\psf{\@getfont\psf\sffam\@viiipt{cmss8}}%
  617. \def\psc{\@getfont\psc\scfam\@viiipt{amcsc10 \@ptscale8}}% TEMPORARY KLUDGE
  618. \def\ly{\fam\lyfam\egtly}\textfont\lyfam\egtly 
  619.     \scriptfont\lyfam\sixly \scriptscriptfont\lyfam\fivly 
  620. \@setstrut \rm}
  621.  
  622. \def\@viiipt{}
  623.  
  624. \def\ixpt{\textfont\z@\ninrm 
  625.   \scriptfont\z@\sixrm \scriptscriptfont\z@\fivrm
  626. \textfont\@ne\ninmi \scriptfont\@ne\sixmi \scriptscriptfont\@ne\fivmi
  627. \textfont\tw@\ninsy \scriptfont\tw@\sixsy \scriptscriptfont\tw@\fivsy
  628. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  629. \def\prm{\fam\z@\ninrm}%
  630. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  631.     \@boldfalse}\@boldfalse
  632. \def\boldmath{\@subfont\boldmath\unboldmath}%
  633. \def\pit{\fam\itfam\ninit}\textfont\itfam\ninit 
  634.    \scriptfont\itfam\sevit \scriptscriptfont\itfam\sevit 
  635. \def\psl{\@getfont\psl\slfam\@ixpt{cmsl9}}%
  636. \def\pbf{\fam\bffam\ninbf}\textfont\bffam\ninbf 
  637.    \scriptfont\bffam\ninbf \scriptscriptfont\bffam\ninbf 
  638. \def\ptt{\fam\ttfam\nintt}\textfont\ttfam\nintt
  639.    \scriptfont\ttfam\nintt \scriptscriptfont\ttfam\nintt 
  640. \def\psf{\@getfont\psf\sffam\@ixpt{cmss9}}%
  641. \def\psc{\@getfont\psc\scfam\@ixpt{amcsc10 \@ptscale9}}%  TEMPORARY KLUDGE
  642. \def\ly{\fam\lyfam\ninly}\textfont\lyfam\ninly 
  643.    \scriptfont\lyfam\sixly \scriptscriptfont\lyfam\fivly 
  644. \@setstrut \rm}
  645.  
  646. \def\@ixpt{}
  647.  
  648. \def\xpt{\textfont\z@\tenrm 
  649.   \scriptfont\z@\sevrm \scriptscriptfont\z@\fivrm
  650. \textfont\@ne\tenmi \scriptfont\@ne\sevmi \scriptscriptfont\@ne\fivmi
  651. \textfont\tw@\tensy \scriptfont\tw@\sevsy \scriptscriptfont\tw@\fivsy
  652. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  653. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  654.           \textfont\@ne\tenmi 
  655.           \textfont\tw@\tensy \textfont\lyfam\tenly
  656.           \@boldfalse}\@boldfalse
  657. \def\boldmath{\@ifundefined{tenmib}{\global\font\tenmib\@mbi 
  658.    \global\font\tensyb\@mbsy 
  659.    \global\font\tenlyb\@lasyb\relax\@addfontinfo\@xpt
  660.    {\def\boldmath{\everymath{\mit}\everydisplay{\mit}\@prtct\@nomathbold
  661.         \textfont\@ne\tenmib \textfont\tw@\tensyb 
  662.         \textfont\lyfam\tenlyb \@prtct\@boldtrue}}}{}\@xpt\boldmath}%
  663. \def\prm{\fam\z@\tenrm}%
  664. \def\pit{\fam\itfam\tenit}\textfont\itfam\tenit \scriptfont\itfam\sevit
  665.     \scriptscriptfont\itfam\sevit
  666. \def\psl{\fam\slfam\tensl}\textfont\slfam\tensl 
  667.      \scriptfont\slfam\tensl \scriptscriptfont\slfam\tensl
  668. \def\pbf{\fam\bffam\tenbf}\textfont\bffam\tenbf 
  669.     \scriptfont\bffam\tenbf \scriptscriptfont\bffam\tenbf 
  670. \def\ptt{\fam\ttfam\tentt}\textfont\ttfam\tentt
  671.     \scriptfont\ttfam\tentt \scriptscriptfont\ttfam\tentt
  672. \def\psf{\fam\sffam\tensf}\textfont\sffam\tensf
  673.     \scriptfont\sffam\tensf \scriptscriptfont\sffam\tensf
  674. \def\psc{\@getfont\psc\scfam\@xpt{\@mcsc}}%
  675. \def\ly{\fam\lyfam\tenly}\textfont\lyfam\tenly 
  676.    \scriptfont\lyfam\sevly \scriptscriptfont\lyfam\fivly 
  677. \@setstrut \rm}
  678.  
  679. \def\@xpt{}
  680.  
  681. \def\xipt{\textfont\z@\elvrm 
  682.   \scriptfont\z@\egtrm \scriptscriptfont\z@\sixrm
  683. \textfont\@ne\elvmi \scriptfont\@ne\egtmi \scriptscriptfont\@ne\sixmi
  684. \textfont\tw@\elvsy \scriptfont\tw@\egtsy \scriptscriptfont\tw@\sixsy
  685. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  686. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  687.           \textfont\@ne\elvmi \textfont\tw@\elvsy 
  688.           \textfont\lyfam\elvly \@boldfalse}\@boldfalse
  689. \def\boldmath{\@ifundefined{elvmib}{\global\font\elvmib\@mbi\@halfmag 
  690.          \global\font\elvsyb\@mbsy\@halfmag
  691.          \global\font\elvlyb\@lasyb\@halfmag\relax\@addfontinfo\@xipt
  692.          {\def\boldmath{\everymath{\mit}\everydisplay{\mit}\@prtct\@nomathbold
  693.                 \textfont\@ne\elvmib \textfont\tw@\elvsyb 
  694.                 \textfont\lyfam\elvlyb\@prtct\@boldtrue}}}{}\@xipt\boldmath}%
  695. \def\prm{\fam\z@\elvrm}%
  696. \def\pit{\fam\itfam\elvit}\textfont\itfam\elvit 
  697.    \scriptfont\itfam\egtit \scriptscriptfont\itfam\sevit
  698. \def\psl{\fam\slfam\elvsl}\textfont\slfam\elvsl 
  699.     \scriptfont\slfam\tensl \scriptscriptfont\slfam\tensl 
  700. \def\pbf{\fam\bffam\elvbf}\textfont\bffam\elvbf 
  701.    \scriptfont\bffam\ninbf \scriptscriptfont\bffam\ninbf 
  702. \def\ptt{\fam\ttfam\elvtt}\textfont\ttfam\elvtt
  703.    \scriptfont\ttfam\nintt \scriptscriptfont\ttfam\nintt 
  704. \def\psf{\fam\sffam\elvsf}\textfont\sffam\elvsf
  705.     \scriptfont\sffam\tensf \scriptscriptfont\sffam\tensf
  706. \def\psc{\@getfont\psc\scfam\@xipt{\@mcsc\@halfmag}}%
  707. \def\ly{\fam\lyfam\elvly}\textfont\lyfam\elvly 
  708.    \scriptfont\lyfam\egtly \scriptscriptfont\lyfam\sixly 
  709. \@setstrut \rm}
  710.  
  711. \def\@xipt{}
  712.  
  713. \def\xiipt{\textfont\z@\twlrm 
  714.   \scriptfont\z@\egtrm \scriptscriptfont\z@\sixrm
  715. \textfont\@ne\twlmi \scriptfont\@ne\egtmi \scriptscriptfont\@ne\sixmi
  716. \textfont\tw@\twlsy \scriptfont\tw@\egtsy \scriptscriptfont\tw@\sixsy
  717. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  718. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  719.           \textfont\@ne\twlmi 
  720.           \textfont\tw@\twlsy \textfont\lyfam\twlly
  721.           \@boldfalse}\@boldfalse
  722. \def\boldmath{\@ifundefined{twlmib}{\global\font\twlmib\@mbi\@magscale1\global
  723.         \font\twlsyb\@mbsy \@magscale1\global\font
  724.          \twllyb\@lasyb\@magscale1\relax\@addfontinfo\@xiipt
  725.               {\def\boldmath{\everymath
  726.                 {\mit}\everydisplay{\mit}\@prtct\@nomathbold
  727.                 \textfont\@ne\twlmib \textfont\tw@\twlsyb 
  728.                 \textfont\lyfam\twllyb\@prtct\@boldtrue}}}{}\@xiipt\boldmath}%
  729. \def\prm{\fam\z@\twlrm}%
  730. \def\pit{\fam\itfam\twlit}\textfont\itfam\twlit \scriptfont\itfam\egtit
  731.    \scriptscriptfont\itfam\sevit
  732. \def\psl{\fam\slfam\twlsl}\textfont\slfam\twlsl 
  733.      \scriptfont\slfam\tensl \scriptscriptfont\slfam\tensl
  734. \def\pbf{\fam\bffam\twlbf}\textfont\bffam\twlbf 
  735.    \scriptfont\bffam\ninbf \scriptscriptfont\bffam\ninbf 
  736. \def\ptt{\fam\ttfam\twltt}\textfont\ttfam\twltt
  737.    \scriptfont\ttfam\nintt \scriptscriptfont\ttfam\nintt 
  738. \def\psf{\fam\sffam\twlsf}\textfont\sffam\twlsf
  739.     \scriptfont\sffam\tensf \scriptscriptfont\sffam\tensf
  740. \def\psc{\@getfont\psc\scfam\@xiipt{\@mcsc\@magscale1}}%
  741. \def\ly{\fam\lyfam\twlly}\textfont\lyfam\twlly 
  742.    \scriptfont\lyfam\egtly \scriptscriptfont\lyfam\sixly
  743.  \@setstrut \rm}
  744.  
  745. \def\@xiipt{}
  746.  
  747. \def\xivpt{\textfont\z@\frtnrm 
  748.   \scriptfont\z@\tenrm \scriptscriptfont\z@\sevrm
  749. \textfont\@ne\frtnmi \scriptfont\@ne\tenmi \scriptscriptfont\@ne\sevmi
  750. \textfont\tw@\frtnsy \scriptfont\tw@\tensy \scriptscriptfont\tw@\sevsy
  751. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  752. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath 
  753.           \textfont\@ne\frtnmi \textfont\tw@\frtnsy 
  754.           \textfont\lyfam\frtnly \@boldfalse}\@boldfalse
  755. \def\boldmath{\@ifundefined{frtnmib}{\global\font
  756.         \frtnmib\@mbi\@magscale2\global\font\frtnsyb\@mbsy\@magscale2
  757.          \global\font\frtnlyb\@lasyb\@magscale2\relax\@addfontinfo\@xivpt
  758.                {\def\boldmath{\everymath
  759.                 {\mit}\everydisplay{\mit}\@prtct\@nomathbold
  760.               \textfont\@ne\frtnmib \textfont\tw@\frtnsyb 
  761.               \textfont\lyfam\frtnlyb\@prtct\@boldtrue}}}{}\@xivpt\boldmath}%
  762. \def\prm{\fam\z@\frtnrm}%
  763. \def\pit{\@getfont\pit\itfam\@xivpt{cmti10\@magscale2}}%
  764. \def\psl{\@getfont\psl\slfam\@xivpt{cmsl10\@magscale2}}%
  765. \def\pbf{\fam\bffam\frtnbf}\textfont\bffam\frtnbf 
  766.    \scriptfont\bffam\tenbf \scriptscriptfont\bffam\ninbf 
  767. \def\ptt{\@getfont\ptt\ttfam\@xivpt{cmtt10\@magscale2}\@nohyphens\ptt\@xivpt}%
  768. \def\psf{\@getfont\psf\sffam\@xivpt{\@mss\@magscale2}}%
  769. \def\psc{\@getfont\psc\scfam\@xivpt{\@mcsc\@magscale2}}%
  770. \def\ly{\fam\lyfam\frtnly}\textfont\lyfam\frtnly 
  771.    \scriptfont\lyfam\tenly \scriptscriptfont\lyfam\sevly 
  772. \@setstrut \rm}
  773.  
  774. \def\@xivpt{}
  775.  
  776. \def\xviipt{\textfont\z@\svtnrm 
  777.   \scriptfont\z@\twlrm \scriptscriptfont\z@\tenrm
  778. \textfont\@ne\svtnmi \scriptfont\@ne\twlmi \scriptscriptfont\@ne\tenmi
  779. \textfont\tw@\svtnsy \scriptfont\tw@\twlsy \scriptscriptfont\tw@\tensy
  780. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  781. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  782.           \textfont\@ne\svtnmi \textfont\tw@\svtnsy \textfont\lyfam\svtnly
  783.           \@boldfalse}\@boldfalse
  784. \def\boldmath{\@subfont\boldmath\unboldmath}%
  785. \def\prm{\fam\z@\svtnrm}%
  786. \def\pit{\@getfont\pit\itfam\@xviipt{cmti10\@magscale3}}%
  787. \def\psl{\@getfont\psl\slfam\@xviipt{cmsl10\@magscale3}}%
  788. \def\pbf{\fam\bffam\svtnbf}\textfont\bffam\svtnbf 
  789.     \scriptfont\bffam\twlbf \scriptscriptfont\bffam\tenbf 
  790. \def\ptt{\@getfont\ptt\ttfam\@xviipt{cmtt10\@magscale3}\@nohyphens
  791.    \ptt\@xviipt}%
  792. \def\psf{\@getfont\psf\sffam\@xviipt{cmss17}}%
  793. \def\psc{\@getfont\psc\scfam\@xviipt{\@mcsc\@magscale3}}%
  794. \def\ly{\fam\lyfam\svtnly}\textfont\lyfam\svtnly 
  795.    \scriptfont\lyfam\twlly   \scriptscriptfont\lyfam\tenly
  796. \@setstrut \rm}
  797.  
  798. \def\@xviipt{}
  799.  
  800. \def\xxpt{\textfont\z@\twtyrm 
  801.   \scriptfont\z@\frtnrm \scriptscriptfont\z@\twlrm
  802. \textfont\@ne\twtymi \scriptfont\@ne\frtnmi \scriptscriptfont\@ne\twlmi
  803. \textfont\tw@\twtysy \scriptfont\tw@\frtnsy \scriptscriptfont\tw@\twlsy
  804. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  805. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  806.         \textfont\@ne\twtymi \textfont\tw@\twtysy \textfont\lyfam\twtyly
  807.         \@boldfalse}\@boldfalse
  808. \def\boldmath{\@subfont\boldmath\unboldmath}%
  809. \def\prm{\fam\z@\twtyrm}%
  810. \def\pit{\@getfont\pit\itfam\@xxpt{cmti10\@magscale4}}%
  811. \def\psl{\@getfont\psl\slfam\@xxpt{cmsl10\@magscale4}}%
  812. \def\pbf{\@getfont\pbf\bffam\@xxpt{cmbx10\@magscale4}}%
  813. \def\ptt{\@getfont\ptt\ttfam\@xxpt{cmtt10\@magscale4}\@nohyphens\ptt\@xxpt}%
  814. \def\psf{\@getfont\psf\sffam\@xxpt{\@mss\@magscale4}}%
  815. \def\psc{\@getfont\psc\scfam\@xxpt{\@mcsc\@magscale4}}%
  816. \def\ly{\fam\lyfam\twtyly}\textfont\lyfam\twtyly 
  817.    \scriptfont\lyfam\frtnly \scriptscriptfont\lyfam\twlly 
  818. \@setstrut \rm}
  819.  
  820. \def\@xxpt{}
  821.  
  822. \def\xxvpt{\textfont\z@\twfvrm 
  823.   \scriptfont\z@\twtyrm \scriptscriptfont\z@\svtnrm
  824. \textfont\@ne\twtymi \scriptfont\@ne\twtymi \scriptscriptfont\@ne\svtnmi
  825. \textfont\tw@\twtysy \scriptfont\tw@\twtysy \scriptscriptfont\tw@\svtnsy
  826. \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  827. \def\unboldmath{\everymath{}\everydisplay{}\@nomath\unboldmath
  828.         \textfont\@ne\twtymi \textfont\tw@\twtysy \textfont\lyfam\twtyly
  829.         \@boldfalse}\@boldfalse
  830. \def\boldmath{\@subfont\boldmath\unboldmath}%
  831. \def\prm{\fam\z@\twfvrm}%
  832. \def\pit{\@subfont\it\rm}%
  833. \def\psl{\@subfont\sl\rm}%
  834. \def\pbf{\@getfont\pbf\bffam\@xxvpt{cmbx10\@magscale5}}%
  835. \def\ptt{\@subfont\tt\rm}%
  836. \def\psf{\@subfont\sf\rm}%
  837. \def\psc{\@subfont\sc\rm}%
  838. \def\ly{\fam\lyfam\twtyly}\textfont\lyfam\twtyly 
  839.    \scriptfont\lyfam\twtyly \scriptscriptfont\lyfam\svtnly 
  840. \@setstrut \rm}
  841.  
  842. \def\@xxvpt{}
  843.  
  844. % SPECIAL LaTeX character definitions
  845.  
  846. % Definitions of math operators added by LaTeX
  847. \mathchardef\mho"0A30
  848. \mathchardef\Join"3A31
  849. \mathchardef\Box"0A32
  850. \mathchardef\Diamond"0A33
  851. \mathchardef\leadsto"3A3B
  852. \mathchardef\sqsubset"3A3C
  853. \mathchardef\sqsupset"3A3D
  854. \def\lhd{\mathbin{< \hbox to -.43em{}\hbox{\vrule 
  855.       \@width .065em \@height .55em \@depth .05em}\hbox to .2em{}}}
  856. \def\rhd{\mathbin{\hbox to .3em{}\hbox{\vrule \@width .065em \@height 
  857.        .55em \@depth .05em}\hbox to -.43em{}>}}
  858. \def\unlhd{\mathbin{\leq \hbox to -.43em{}\hbox
  859.         {\vrule \@width .065em \@height .63em \@depth -.08em}\hbox to .2em{}}}
  860. \def\unrhd{\mathbin{ \hbox to .3em{}\hbox
  861.  {\vrule \@width .065em \@height .63em \@depth -.08em}\hbox to -.43em{}\geq}}
  862.  
  863. % Definition of \$ to work in italic font (since it produces a pound sterling
  864. % sign in the cmit font.
  865.  
  866. \def\${\protect\pdollar}
  867. \def\pdollar{{\ifdim \fontdimen\@ne\font >\z@ \sl \fi\char`\$}}
  868.  
  869. % Definition of pound sterling sign.
  870.  
  871. \def\pounds{{\it \char'44}}
  872.  
  873. % Definition of \copyright changed so it works in other type styles,
  874. % and so it is robust
  875. \def\copyright{\protect\pcopyright}
  876. \def\pcopyright{{\rm\ooalign{\hfil
  877.      \raise.07ex\hbox{c}\hfil\crcr\mathhexbox20D}}}
  878.