home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d6xx / d616 / tex.lha / TeX / texinputs.lha / texinputs / ini / lfonts.tex < prev    next >
Text File  |  1991-11-09  |  42KB  |  943 lines

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