1 % \iffalse meta-comment
4 % The LaTeX3 Project and any individual authors listed elsewhere
7 % This file is part of the LaTeX base system.
8 % -------------------------------------------
10 % It may be distributed and/or modified under the
11 % conditions of the LaTeX Project Public License, either version 1.3c
12 % of this license or (at your option) any later version.
13 % The latest version of this license is in
14 % http://www.latex-project.org/lppl.txt
15 % and version 1.3c or later is part of all distributions of LaTeX
16 % version 2005/12/01 or later.
18 % This file has the LPPL maintenance status "maintained".
20 % The list of all files belonging to the LaTeX base distribution is
21 % given in the file `manifest.txt'. See also `legal.txt' for additional
24 % The list of derived (unpacked) files belonging to the distribution
25 % and covered by LPPL is defined by the unpacking scripts (with
26 % extension .ins) which are part of the distribution.
29 %\iffalse % this is a METACOMMENT !
31 %% File `oldlfont.dtx'.
32 %% Copyright (C) 1989-1995 Frank Mittelbach and Rainer Sch\"opf,
33 %% all rights reserved.
36 \ProvidesFile{oldlfont.dtx}
38 %<package>\NeedsTeXFormat{LaTeX2e}
39 %<package>\ProvidesPackage{oldlfont}
40 %<driver> \ProvidesFile{oldlfont.drv}
43 % \ProvidesFile{oldlfont.dtx}
44 [2014/09/29 v2.2k Standard LaTeX package]
49 \documentclass{ltxdoc}
51 \DocInput{oldlfont.dtx}
59 %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
60 %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
61 %% Digits \0\1\2\3\4\5\6\7\8\9
62 %% Exclamation \! Double quote \" Hash (number) \#
63 %% Dollar \$ Percent \% Ampersand \&
64 %% Acute accent \' Left paren \( Right paren \)
65 %% Asterisk \* Plus \+ Comma \,
66 %% Minus \- Point \. Solidus \/
67 %% Colon \: Semicolon \; Less than \<
68 %% Equals \= Greater than \> Question mark \?
69 %% Commercial at \@ Left bracket \[ Backslash \\
70 %% Right bracket \] Circumflex \^ Underscore \_
71 %% Grave accent \` Left brace \{ Vertical bar \|
72 %% Right brace \} Tilde \~}
76 % \providecommand\dst{\expandafter{\normalfont\scshape docstrip}}
78 % \GetFileInfo{oldlfont.dtx}
80 % \title{The file \texttt{oldlfont.dtx} for use with
81 % \LaTeXe.\thanks{This file has version
82 % number \fileversion, dated \filedate.}\\[2pt]
83 % It contains the code for \texttt{oldlfont.sty}}
85 % \author{Frank Mittelbach}
87 % \MaintainedByLaTeXTeam{latex}
90 % \section{Introduction}
92 % This file contains the code for the \texttt{oldlfont} package
93 % which emulates the following \LaTeX~2.09 font commands:
95 % \item The two-letter font-changing commands |\rm|, etc.~are
96 % defined to cancel each other out as they did in \LaTeX~2.09.
97 % \item The two-letter font-changing commands are allowed in math
99 % \item The |latexsym| package is loaded.
101 % For full compatibility mode, the file |latex209.def| is loaded by
104 % The following modules are used in the implementation to direct
105 % \dst{} in generating the external files:
107 % \begin{tabular}{ll}
108 % driver & produce a documentation driver file \\
109 % package & produce |oldlfont.sty| \\
110 % latex209 & produce part of |latex209.def|
116 % \changes{v2.2k}{1995/11/29}{Remove duplicate driver code.}
121 % \begin{macro}{\math@bgroup}
122 % \begin{macro}{\math@egroup}
123 % To make \meta{math alphabet identifier} work like simple font
124 % switches we change the meaning of |\math@bgroup| and
125 % |\math@egroup| to |\@empty|. This emulates the behavior of
126 % \texttt{oldlfont.sty} in NFSS1 setups. These definitions are not
127 % part of \texttt{latex209} automatically, since to emulate 2.09
128 % they are not necessary (all standard fonts are declared as math
130 % \changes{v2.2f}{1994/05/05}{Added saved versions of the
131 % math-groupers, CAR}
132 % \changes{v2.2g}{1994/05/09}{Moved outside latex209 part}
134 \let\math@bgroup\@empty
135 \let\math@egroup\@empty
136 \let \@@math@bgroup \math@bgroup
137 \let \@@math@egroup \math@egroup
143 % The rest of this document describes code that is used in
144 % |oldlfont.sty| and |latex209.def|.
149 % When emulating the old settings we don't want a lot of NFSS
150 % information being displayed. Thus we required that the
151 % \texttt{tracefnt} package is loaded with the option
152 % \texttt{errorshow}.
154 \RequirePackage[errorshow]{tracefnt}
157 % We define math \emph{alphabet} identifiers for the typefaces
158 % described in the \LaTeX{} manual. This is straightforward. Some
159 % are already defined by the kernel code.
160 % And here are the other ones defined by the old \LaTeX{}. They all
161 % get declared as math symbol font alphabets. Thus we first
162 % allocate the additional symbol fonts.
164 \DeclareSymbolFont{bold}{OT1}{cmr}{bx}{n}
165 \DeclareSymbolFont{sans}{OT1}{cmss}{m}{n}
166 \DeclareSymbolFont{typewriter}{OT1}{cmtt}{m}{n}
167 \DeclareSymbolFont{italic}{OT1}{cmr}{m}{it}
168 \DeclareSymbolFont{smallcaps}{OT1}{cmr}{m}{sc}
169 \DeclareSymbolFont{slanted}{OT1}{cmr}{m}{sl}
171 % And here are the corresponding math identifiers.
173 \DeclareSymbolFontAlphabet\mathbf{bold}
174 \DeclareSymbolFontAlphabet\mathsf{sans}
175 \DeclareSymbolFontAlphabet\mathtt{typewriter}
176 \DeclareSymbolFontAlphabet\mathsc{smallcaps}
177 \DeclareSymbolFontAlphabet\mathsl{slanted}
179 % We undefine the old |\mit| and |\cal| macros (whatever meaning
180 % they have) and reallocate them as symbol font alphabets.
184 \let\mathit\undefined
185 \DeclareSymbolFontAlphabet\mathit{italic}
186 \DeclareSymbolFontAlphabet{\mit}{letters}
187 \DeclareSymbolFontAlphabet{\cal}{symbols}
190 % We define the font commands for selecting the typeface. They are
191 % probably defined by the document class/style but we want to force
194 % And here are the definition as they were in \LaTeX~2.09 but
195 % translated into NFSS2 language.
196 % \changes{v2.2h}{1994/05/11}{DPC use \cs{DeclareProtectedCommand}}
197 % \changes{v2.2i}{1994/05/13}{DPC renamed to \cs{DeclareRobustCommand}}
199 \DeclareRobustCommand\rm{\normalfont\rmfamily\mathgroup\symoperators}
200 \DeclareRobustCommand\sf{\normalfont\sffamily\mathgroup\symsans}
201 \DeclareRobustCommand\sl{\normalfont\slshape\mathgroup\symslanted}
202 \DeclareRobustCommand\bf{\normalfont\bfseries\mathgroup\symbold}
203 \DeclareRobustCommand\sc{\normalfont\scshape\mathgroup\symsmallcaps}
204 \DeclareRobustCommand\it{\normalfont\itshape\mathgroup\symitalic}
205 \DeclareRobustCommand\tt{\normalfont\ttfamily\mathgroup\symtypewriter}
207 % We also have to define the \emph{emphasize} font change command
208 % (i.e.\ |\em|). This command will look whether the current font is
209 % sloped (i.e.\ has a positive |\fontdimen1|) and will then select
210 % either |\rm| or |\it|.
212 \DeclareRobustCommand\em{%
214 \ifdim \fontdimen\@ne\font>\z@\rm\else\it\fi}
217 % \begin{macro}{\@setfontsize}
218 % Font size changes are handled using the |\@setfontsize| command
219 % (in new class files) or by the |@setsize| command in old document
220 % style files. The latter is now defined to call |\@setfontsize| in
221 % the NFSS2 kernel code.
222 % Thus to make all size changing commands automatically return to
223 % the normal font of the document we only have to slightly modify
224 % the definition of |\@setfontsize| by adding a |\normalfont|
226 % \changes{v2.2j}{1994/11/06}{Use \cs{@typeset@protect}}
228 \def\@setfontsize#1#2#3{\@nomath#1%
229 \ifx\protect\@typeset@protect
232 \fontsize{#2}{#3}\normalfont}
237 % \begin{macro}{\non@alpherr}
238 % Since we emulate the old syntax we also have to silently ignore
239 % uses of a math alphabet outside math mode. Since we now use the
240 % |\sym...| switches the following setting is not longer necessary.
242 %\let\non@alpherr\@gobble
246 % \begin{macro}{\not@math@alphabet}
247 % But we need to disable the error message that is generated from
250 \let\not@math@alphabet\@gobbletwo
255 % We left out the special \LaTeX{} fonts which are not automatically
256 % included in the base version of the font selection since these
257 % fonts contain only a few characters which are also included in
258 % the AMS fonts so anybody who is using these fonts doesn't need
259 % them. But for compatibility reasons we will define these symbols.
262 \RequirePackage{latexsym}
266 % \DeleteShortVerb{\|}