Back out r1438/r1439
[latex2e.git] / trunk / base / latex209.dtx
blob1e29bf76226702d579d52073ffa0cbc4ba04bc49
1 % \iffalse meta-comment
3 % Copyright 1993-2016
4 % The LaTeX3 Project and any individual authors listed elsewhere
5 % in this file.
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
22 % information.
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.
28 % \fi
30 % \title{Compatibility mode for \LaTeXe{} emulating \LaTeX~2.09}
31 % \author{Alan Jeffrey and Frank Mittelbach}
32 % \date{1995/12/27}
36 % \changes{v0.01}{1993/12/11}{Created the file, including:
37 %   setting the compatibility flag,
38 %   inputting oldlfont.sty,
39 %   setting the default encoding to be OT1, and
40 %   inputting the latex209.rc file}
41 % \changes{v0.02}{1993/12/12}{Changed the package filename to
42 %   latex209.sty, and added the provides-package command.}
43 % \changes{v0.03}{1993/12/16}{Added an empty mark, replaced
44 %   provides-package with provides-file, added the compatibility hook.}
45 % \changes{v0.04}{1993/12/16}{Moved oldlfont.sty out of the
46 %    compatibility hook and back into latex209.cmp.  Redefined
47 %    newfontswitch to ignore redefinitions.  Set the LaTeX 2e commands
48 %    to be errors.}
49 % \changes{v0.05}{1993/12/17}
50 %    {Removed the \cs{mark}, since it is now in the kernel.}
51 % \changes{v0.06}{1993/12/18}{Replaced the redefinition of
52 %    \cs{@newfontswitch} to a redefinition of \cs{@renewfontswitch}.
53 %    Added \cs{sloppy.}}
54 % \changes{v0.07}{1993/12/18}{Fixed a bug with \cs{@missingfileerror}.}
55 % \changes{v0.08}{1993/12/18}{Added the obsolete .sty files.}
56 % \changes{v0.09}{1993/12/20}{Removed art10.sty and friends.}
57 % \changes{v0.10}{1994/01/14}{Replaced latex209.rc by latex209.cfg.}
58 % \changes{v0.11}{1994/01/21}{Replaced latex209.cmp by latex209.def.
59 %    Moved half of oldlfont.dtx to here.  Split the package dst option
60 %    into head and tail.}
61 % \changes{v0.12}{1994/01/24}
62 %   {Added \cs{normalshape} and \cs{mediumseries}, and
63 %    declared the `oldlfont' option to stop oldlfont.sty from being
64 %    loaded.}
65 % \changes{v0.13}{1994/01/31}{removed setting of \cs{normalsize}. FMi}
66 % \changes{v0.14}{1994/02/07}{Added it back again.}
67 % \changes{v0.15}{1994/02/10}{Renamed \cs{@compatibility} to
68 %    \cs{@documentclasshook}.  Added the check for whether
69 %     \cs{normalsize} or \cs{@normalsize} needs defined.}
70 % \changes{v0.16}{1994/02/11}{Replaced the allocation of temporary
71 %    dimens for \cs{footheight}, \cs{@maxsep} and \cs{@dblmaxsep}
72 %     by real dimen variables.}
73 % \changes{v0.17}{1994/03/02}{Moved the documentation to the front, so
74 %     this file can be processed directly without a driver file.
75 %     Added \cs{@ptscale}, \cs{@halfmag}, \cs{@magscale}, and set the
76 %     default font to be CMR at 10pt.}
77 % \changes{v0.18}{1994/03/11}{Restored the old definition of \cs{verb}.
78 %     Set the catcodes of the non-alphanumerics.}
79 % \changes{v0.19}{1994/04/05}{Switched off more 2e features: \cs{lrbox},
80 %     \cs{width}, \cs{height}, \cs{depth} in box dimensions, and the new
81 %     optional arguments to \cs{parbox}, \cs{minipage} and
82 %     \cs{newcommand}.  The code was provided by DPC.  Fixed a misplaced
83 %     </head!>.  Made the \cs{ProvidesPackage} and \cs{ProvidesClass}
84 %     warnings log messages. Removed \cs{filedate}.}
85 % \changes{v0.20}{1994/04/20}
86 %      {Restored the 2.09 definition of \cs{@noligs}.}
87 % \changes{v0.21}{1994/04/24}
88 %      {Restored the 2.09 definition of \cs{@lquote}.}
89 % \changes{v0.22}{1994/05/02}{Added \cs{@latex@e@command}.}
90 % \changes{v0.23}{1994/05/11}{Added bezier.sty.}
91 % \changes{v0.24}{1994/05/14}{Removed \cs{@@@} and switched the box
92 %    commands back on, for use in packages.}
93 % \changes{v0.24}{1994/05/14}{Changed the 2e command error help.}
94 % \changes{v0.24}{1994/05/14}{Removed date from announcement of
95 %    2.09 mode.}
96 % \changes{v0.25}{1994/05/14}{Added the newlfont option, and rewrote the
97 %    oldlfont option.}
98 % \changes{v0.26}{1994/05/15}{Added the margid and nomargid options.}
99 % \changes{v0.27}{1994/05/16}{Fixed a bug with the margid option.}
100 % \changes{v0.28}{1994/05/16}{Fixed a bug with \cs{mediumseries}.}
101 % \changes{v0.29}{1994/05/17}{Fixed a bug with \cs{newlfont}.}
102 % \changes{v0.29}{1994/05/17}{Removed extra spaces from the missing
103 %    file error.}
104 % \changes{v0.29}{1994/05/17}{Made the bezier package use \cs{iffalse}
105 %    to comment itself out, rather than \%\%, which caused it to
106 %    appear in every 2.09 file.}
107 % \changes{v0.30}{1994/05/18}{Added \cs{@finalstrut}.}
108 % \changes{v0.31}{1994/05/20}{New definition of \cs{@finalstrut}.}
109 % \changes{v0.31}{1994/05/20}{Added the t1enc package.}
110 % \changes{v0.32}{1994/05/20}{Added SLiTeX.}
111 % \changes{v0.33}{1994/06/01}{Fixed bug with SLiTeX.}
112 % \changes{v0.34}{1994/08/22}{Replaced l2euser by usrguide.}
113 % \changes{v0.34}{1994/08/22}{Added a default definition for \cs{+}.}
114 % \changes{v0.35}{1994/09/23}
115 %                {Added spaces to the old font scale commands.}
116 % \changes{v0.36}{1994/10/17}{Added an empty \cs{mark} back again.}
117 % \changes{v0.37}{1994/10/20}{Corrected a typo.}
118 % \changes{v0.38}{1994/11/16}{Removed \cs{LaTeXe} from this list}
119 % \changes{v0.39}{1994/11/28}{Added old behaviour of floats and space.}
120 % \changes{v0.40}{1995/05/05}{Make \cs{verb} use \cs{tt} font in
121 %                             math mode.}
122 % \changes{v0.49}{1995/10/26}{Added code for fleqn.sty, leqno.sty,
123 %                             openbib.sty.}
124 % \changes{v0.50}{1995/12/08}{Switched of \cs{@inmathwarn}.}
125 % \changes{v0.53}{2015/02/22}{Dropped \cs{@no@font@optfalse} in various places
126 %                              - no longer provided by ltfsscmp.dtx.}
128 % \MaintainedByLaTeXTeam{latex}
129 % \maketitle
131 % \section{Introduction}
133 % The file |latex209.def| is read in by \LaTeXe{} whenever it finds a
134 % |\documentstyle| rather than |\documentclass| command at the
135 % beginning of the file.  This indicates a \LaTeX~2.09 document, which
136 % should be processed in {\em compatibility mode}.
138 % Any document which compiled under \LaTeX~2.09 should compile under
139 % compatibility mode, unless it uses low-level commands such as
140 % |\tenrm|.
142 % \section{The docstrip modules}
144 % The following modules are used in the implementation to direct
145 % docstrip in generating the external files:
146 % \begin{center}
147 % \begin{tabular}{ll}
148 %   driver & produce a documentation driver file \\
149 %   head    & produce the beginning of |latex209.def| \\
150 %   tail    & produce the end of |latex209.def| \\
151 %   article  & produce |article.sty| \\
152 %   book     & produce |book.sty| \\
153 %   report   & produce |report.sty| \\
154 %   slides   & produce |slides.sty| \\
155 %   letter   & produce |letter.sty| \\
156 %   bezier   & produce |bezier.sty| \\
157 %   fleqn    & produce |fleqn.sty| \\
158 %   leqno    & produce |leqno.sty| \\
159 %   openbib  & produce |openbib.sty|
160 % \end{tabular}
161 % \end{center}
162 % Between the |head| and |tail| of |latex209.def|, the code for
163 % |oldlfont.sty| is included, so \LaTeX~2.09 documents will
164 % automatically be run simulating the OFSS.
165 % \changes{v0.09}{1993/12/20}{Removed artN.sty, bkN.sty and repN.sty.}
166 % \changes{v0.11}{1994/01/21}{Split package into head and tail.}
167 % \changes{v0.23}{1994/05/11}{Added bezier option.}
169 % \StopEventually{}
171 % \section{Driver}
173 % This section contains the driver for this documentation.
174 %    \begin{macrocode}
175 %<*driver>
176 \documentclass{ltxdoc}
177 \DisableCrossrefs
178 % \OnlyDescription
179 \begin{document}
180    \DocInput{latex209.dtx}
181 \end{document}
182 %</driver>
183 %    \end{macrocode}
185 % \section{Beginning of latex209.def}
187 % \changes{v0.11}{1994/01/21}{oldlfont.dtx is now also used to generate
188 %    latex209.dtx.}
190 % This section describes the beginning of the file |latex209.def|.
191 %    \begin{macrocode}
192 %<*head>
193 %    \end{macrocode}
195 % \subsection{Identification}
197 % This file needs to be run with \LaTeXe.
198 %    \begin{macrocode}
199 \NeedsTeXFormat{LaTeX2e}
200 %    \end{macrocode}
201 % Describe the file.
202 %    \begin{macrocode}
203 \ProvidesFile{latex209.def}[2015/02/22 v0.53 Standard LaTeX file]
204 %    \end{macrocode}
205 % \changes{v0.24}{1994/05/14}{Removed date.}
206 % \changes{v0.40}{1995/03/21}
207 %         {(DPC) Do not execute this file twice latex/1460}
208 % Announce compatibility mode to the user.
209 % \changes{v0.52}{1998/05/13}{Added experimental
210 %    long typeout to possibly avoid prs like 2807}
211 %    \begin{macrocode}
212 \if@compatibility
213   \expandafter\endinput
214 \else
215   \typeout{^^J\space
216 \@spaces\@spaces\space  Entering LaTeX 2.09 COMPATIBILITY MODE^^J\space
217  *************************************************************^^J\space
218  \space\space\space!!WARNING!!\space
219  \space\space\space!!WARNING!!\space
220  \space\space\space!!WARNING!!\space
221  \space\space\space!!WARNING!!\space\space\space   ^^J\space
222  ^^J\space
223  This mode attempts to provide an emulation of the LaTeX 2.09^^J\space
224  author environment so that OLD documents can be successfully^^J\space
225  processed. It should NOT be used for NEW documents!^^J\space
226  ^^J\space
227  New documents should use Standard LaTeX conventions and start^^J\space
228  with the \string\documentclass\space command.^^J\space
229  ^^J\space
230  Compatibility mode is UNLIKELY TO WORK with LaTeX 2.09 style^^J\space
231  files that change any internal macros, especially not with^^J\space
232  those that change the FONT SELECTION or OUTPUT ROUTINES.^^J\space
233 ^^J\space
234  Therefore such style files   MUST BE UPDATED to use^^J\space
235 \@spaces\@spaces\space        Current Standard LaTeX: LaTeX2e.^^J\space
236  If you suspect that you may be using such a style file, which^^J\space
237  is probably very, very old by now, then you should attempt to^^J\space
238  get it updated by sending a copy of this error message to the^^J\space
239  author of that file.^^J\space
240  *************************************************************^^J}
241  \fi
242 %    \end{macrocode}
244 % \subsection{Compatibility flag}
246 % \begin{macro}{\@compatibilitytrue}
247 %    \LaTeXe{} has a flag |\if@compatibility| which can be used by
248 %    document classes or packages to determine whether they are running
249 %    in compatibility mode or not.  This flag is set true by this file.
250 %    \begin{macrocode}
251 \@compatibilitytrue
252 %    \end{macrocode}
253 % \end{macro}
255 % \subsection{Removing features}
257 % \changes{v0.22}{1994/05/02}{Added \cs{latex@e@command}.}
258 % \changes{v0.36}{1994/10/17}{Redid switching off commands.}
259 % \changes{v0.38}{1994/11/16}{Removed \cs{LaTeXe} from this list}
261 % \begin{macro}{\usepackage}
262 % \begin{macro}{\listfiles}
263 % \begin{macro}{\ensuremath}
264 % \begin{macro}{\lrbox}
265 % \begin{macro}{\newcommand}
266 %    These \LaTeXe{} commands are switched off in compatibility mode.
267 %    This is done by saving the old definition, and redefining the
268 %    command to call |\@latex@e@error| before executing the old version.
269 %    \begin{macrocode}
270 \def\@tempa#1#2{%
271    \expandafter\let\csname @@\string#1\endcsname#1%
272    \edef#1{%
273       \noexpand\@latex@e@error{\noexpand#2}%
274       \expandafter\noexpand\csname @@\string#1\endcsname
275    }%
277 \@tempa\usepackage\usepackage
278 \@tempa\listfiles\listfiles
279 \@tempa\ensuremath\ensuremath
280 \@tempa\lrbox{\begin{lrbox}}%
281 \@tempa\@xargdef{\newcommand{cmd}[args][def]}%
282 %    \end{macrocode}
283 % \end{macro}
284 % \end{macro}
285 % \end{macro}
286 % \end{macro}
287 % \end{macro}
289 % \changes{v0.22}{1994/05/02}
290 %         {Added \cs{if@latex@e@errors} and \cs{@@@}.}
291 % \changes{v0.24}
292 %         {1994/05/14}{Removed \cs{if@latex@e@errors} and \cs{@@@}.}
293 % \changes{v0.24}{1994/05/14}{Changed the error help.}
294 % \changes{v0.36}{1994/10/17}{Initialized \cs{@latex@e@error} to do
295 %    nothing, and switched it on at the begin document.}
297 % \begin{macro}{\@latex@e@error}
298 % \begin{macro}{\@latex@e@error@}
299 %   This error is produced if a user uses a \LaTeXe{} command in
300 %   compatibility mode.  This is to encourage users to move over to
301 %   using |\documentclass| as quickly as possible.  During the preamble
302 %   the error does nothing (so that packages can use \LaTeXe{} commands)
303 %   but it is redefined to be an error message at |\begin{document}|.
304 %    \begin{macrocode}
305 \let\@latex@e@error\@gobble
306 \def\@latex@e@error@#1{%
307       \@latexerr{%
308          LaTeX2e command \string#1\space in LaTeX 2.09 document%
309       }{%
310          This is a LaTeX 2.09 document, but it contains
311          \string#1.^^J%
312          If you want to use the new features of LaTeX2e,
313          your document^^J%
314          should begin with \string\documentclass\space
315          rather than \string\documentstyle
316       }%
318 %    \end{macrocode}
319 % \end{macro}
320 % \end{macro}
322 % \changes{v0.36}{1994/10/17}
323 %         {Allow 2e commands to be redefined once with \cs{newcommand}.}
324 % \changes{v0.40}{1995/03/21}{
325 %         (DPC) Add \cs{r} to the list of 2e commands latex/1424}
327 % \begin{macro}{\@ifdefinable}
328 % \begin{macro}{\@old@ifdefinable}
329 % \begin{macro}{\@@ifdefinable}
330 % \begin{macro}{\@latex@e@commands}
331 %    We trap the |\@notdefinable| error message to check to see if the
332 %    command is a \LaTeXe{} command, in which case we allow the
333 %    definition to happen.   We keep a list of commands which are
334 %    allowed to be redefined this way in |\@latex@e@commands|, and
335 %    remove an entry each time it is defined.
336 %    \begin{macrocode}
337 \let\@old@ifdefinable\@ifdefinable
338 \long\def\@ifdefinable#1{%
339    \def\@tempa##1#1##2#1##3#1##4\@tempa{%
340       \def\@latex@e@commands{##1##2}%
341       ##3% ##3 will either be \iftrue or \iffalse
342          \expandafter\@firstofone
343       \else
344          \expandafter\@old@ifdefinable\expandafter#1%
345       \fi
346    }%
347    \expandafter\@tempa\@latex@e@commands#1\iftrue#1\iffalse#1\@tempa%
349 \let\@@ifdefinable\@ifdefinable
350 \def\@latex@e@commands{%
351    \usepackage\listfiles\ensuremath\LaTeXe\lrbox
352    \th\dh\ng\dj\TH\DH\NG\DJ\k\r\SS
353    \guillemotleft\guillemotright\guilsinglleft
354    \guilsinglright\quotedblbase\quotesinglbase
356 %    \end{macrocode}
357 % \end{macro}
358 % \end{macro}
359 % \end{macro}
360 % \end{macro}
362 % \begin{macro}{\@begin@tempboxa}
363 %    \changes{v0.22}{1994/05/02}{Commented out the redefinition of
364 %       \cs{@begin@tempboxa}.}
365 %    If we were to switch off the new |\width|, |\height| and |\depth|
366 %    commands, this is how to do it.  This isn't done, since these
367 %    commands may be used in packages.
368 %    \begin{verbatim}
369 %\long\def\@begin@tempboxa#1#2{%
370 %  \begingroup
371 %    \setbox\@tempboxa#1{{#2}}}
372 %    \end{verbatim}
373 % \end{macro}
375 % \subsection{Document class hook}
377 % \begin{macro}{\@documentclasshook}
378 % \changes{v0.15}{1994/02/10}{Renamed from \cs{@compatibility} to
379 %    \cs{@documentclasshook}.  Added the check for \cs{@normalsize} and
380 %    \cs{normalsize} being defined.}
381 % \changes{v0.22}{1994/05/02}{Moved switching off commands into the
382 %    document class hook.}
383 % \changes{v0.24}{1994/05/14}{Switched the box commands back on, for use
384 %    in packages.}
385 % \changes{v0.36}{1994/10/17}{Changed the way the 2e command error is
386 %    activated.}
387 % \changes{v0.51}{1996/05/24}{(DPC) Reimplemented for /2153.}
388 %    This macro is called by each use of |\documentclass|.  We define
389 %    it to define |\@normalsize| and |\normalsize| if necessary,
390 %    to input each unused option as a package, and to switch off the new
391 %    \LaTeXe{} commands.  However, we leave on the commands
392 %    |\settoheight|, |\settowidth| and the new options to |\parbox| and
393 %    |\minipage|, since these are likely to be used in packages.
395 % The intention of the strange |\normalsize| tests below are that after
396 % the |\documentstyle| command has completed, then
397 % if neither of the commands |\normalsize|
398 % nor |\@normalsize|  were defined by the main style or one of its
399 % `substyles' or `options', then |\@normalsize| will be undefined and
400 % |\normalsize| will generate an error saying it hasn't been defined.
402 % If the style defined either |\normalsize| or \@|normalsize| then
403 % these two commands will be |\let| equal to each other, with the
404 % definition given by the style file.
406 % If the style defines both |\normalsize| and |\@normalsize| then
407 % those two definitions are kept.
408 %    \begin{macrocode}
409 \def\@documentclasshook{%
410   \RequirePackage\@unusedoptionlist
411   \let\@unusedoptionlist\@empty
412   \def\@tempa{\@normalsize}%
413   \ifx\normalsize\@tempa
414     \let\normalsize\@normalsize
415   \fi
416   \ifx\@normalsize\@undefined
417     \let\@normalsize\normalsize
418   \fi
419   \ifx\normalsize\@undefined
420     \let\normalsize\original@normalsize
421   \fi
422   \let\@latex@e@error\@latex@e@error@}
423 %    \end{macrocode}
424 % \end{macro}
426 % \begin{macro}{\original@normalsize}
427 % \changes{v0.51}{1996/05/24}{(DPC) Macro added /2153.}
428 % Save the original definition of |\normalsize| (which generates an
429 % error)
430 %    \begin{macrocode}
431 \let\original@normalsize\normalsize
432 %    \end{macrocode}
433 % \end{macro}
435 % \begin{macro}{\normalsize}
436 % \changes{v0.14}{1994/02/07}{Added \cs{normalsize}.}
437 %    Some styles don't define |\normalsize|, just |\@normalsize|.
438 %    \begin{macrocode}
439 \def\normalsize{\@normalsize}
440 %    \end{macrocode}
441 % \end{macro}
443 % \subsection{Compatibility with \LaTeX~2.09 document styles}
445 % \begin{macro}{\@missingfileerror}
446 %    If a |.cls| file is missing, we look to see if there is
447 %    a file of the same name with a |.sty| extension.
448 % \changes{v0.06}{1993/12/18}{Corrected a typo
449 %  \cs{@saved@missingfileerror}
450 %    should have been \cs{saved@missingfileerror}.}
451 % \changes{v0.07}{1993/12/18}{Corrected a typo, I'd forgotten to pass
452 %    the arguments of \cs{@missingfileerror} on to
453 %    \cs{saved@missingfileerror}.}
454 % \changes{v0.29}{1994/05/17}{Removed extraneous spaces.}
455 %    \begin{macrocode}
456 \@ifundefined{saved@missingfileerror}{
457    \let\saved@missingfileerror=\@missingfileerror
459 \def\@missingfileerror#1#2{%
460    \ifx#2\@clsextension
461       \InputIfFileExists{#1.\@pkgextension}{%
462          \wlog{Compatibility mode: loading #1.\@pkgextension
463             \space rather than #1.#2.}%
464       }{%
465          \saved@missingfileerror{#1}{#2}%
466       }%
467    \else
468       \saved@missingfileerror{#1}{#2}%
469    \fi
471 %    \end{macrocode}
472 % \end{macro}
474 % \begin{macro}{\@obsoletefile}
475 %    For compatibility with the document styles which |\input| the
476 %    standard \LaTeX~2.09 document styles, we distribute
477 %    files called |article.sty|, |book.sty|, |report.sty|,
478 %    |slides.sty| and |letter.sty|.  These use the command
479 %    |\@obsoletefile|, which the \LaTeXe{} kernel defines to produce a
480 %    warning message.  We redefine it to just produce a message in the
481 %    log file, and to pass any options from the old filename to the
482 %    new filename.
483 %    \changes{v0.08}{1993/12/19}{Added this command.}
484 %    \changes{v0.10}{1994/01/14}{Added the option-passing.}
485 %    \begin{macrocode}
486 \def\@obsoletefile#1#2{%
487    \expandafter\let\csname opt@#1\expandafter\endcsname
488       \csname opt@\@currname.\@currext\endcsname
489    \wlog{Compatibility mode: inputting `#1'
490       instead of obsolete `#2'.}}
491 %    \end{macrocode}
492 % \end{macro}
494 % \begin{macro}{\footheight}
495 % \begin{macro}{\@maxsep}
496 % \begin{macro}{\@dblmaxsep}
497 %    \LaTeX~2.09 supported these parameters, so for compatibility with
498 %    old document styles we allocate them.
499 % \changes{v0.16}{1994/02/11}{Replaced the allocation of temporary
500 %    dimens for \cs{footheight}, \cs{@maxsep} and \cs{@dblmaxsep} by
501 %     real dimen variables.}
502 %    \begin{macrocode}
503 \newdimen\footheight
504 \newdimen\@maxsep
505 \newdimen\@dblmaxsep
506 %    \end{macrocode}
507 % \end{macro}
508 % \end{macro}
509 % \end{macro}
511 % \changes{v0.36}{1994/10/17}{Added an empty \cs{mark}.}
512 % \changes{v0.37}
513 %         {1994/10/20}{Corrected a type with the empty \cs{mark}.}
515 % \begin{macro}{\mark}
516 %    \LaTeX~2.09 initialized an empty mark.  Who knows, someone may have
517 %    relied on it:
518 %    \begin{macrocode}
519 \mark{{}{}}
520 %    \end{macrocode}
521 % \end{macro}
523 % \subsection{Layout}
525 % \begin{macro}{\sloppy}
526 % \changes{v0.06}{1993/12/18}{Added \cs{sloppy}}
527 %    There is a new version of |\sloppy| in \LaTeXe, so we restore the
528 %    old one.
529 %    \begin{macrocode}
530 \def\sloppy{\tolerance \@M \hfuzz .5\p@ \vfuzz .5\p@}
531 %    \end{macrocode}
532 % \end{macro}
534 % \begin{macro}{\@finalstrut}
535 % \changes{v0.30}{1994/05/18}{Added \cs{@finalstrut}.}
536 % \changes{v0.31}{1994/05/20}{New definition of \cs{@finalstrut}.}
537 %    The strut which is used in a footnote has changed.  This restores
538 %    the old definition.
539 %    \begin{macrocode}
540 \def\@finalstrut#1{\unskip\strut}
541 %    \end{macrocode}
542 % \end{macro}
544 % \begin{macro}{\@marginparreset}
545 % \begin{macro}{\@floatboxreset}
546 % \changes{v0.39}{1994/11/28}{Added old behaviour of floats and space.}
547 % \changes{v0.45}{1995/05/25}{(CAR) Changed method of restoring
548 %    old behaviour of floats and space.}
549 %    Restore the old spacing around floats.
550 %    \begin{macrocode}
551 \let \@marginparreset \@empty
552 \let \@floatboxreset \@empty
553 %    \end{macrocode}
554 % \end{macro}
555 % \end{macro}
557 % \begin{macro}{\proclaim}
558 % \changes{v0.41}{1995/04/24}
559 %         {Move here from ltplain.dtx}
560 % From plain \TeX.
561 %    \begin{macrocode}
562 \outer\def\proclaim #1. #2\par{%
563   \medbreak
564   \noindent{\bfseries#1.\enspace}{\slshape#2\par}%
565   \ifdim\lastskip<\medskipamount
566     \removelastskip\penalty55\medskip
567   \fi}
568 %    \end{macrocode}
569 % \end{macro}
571 % \begin{macro}{\hang}
572 % \begin{macro}{\textindent}
573 % \changes{v0.42}{1995/04/27}
574 %         {Move here from ltplain.dtx}
575 % From plain \TeX.
576 %    \begin{macrocode}
577 \def\hang{\hangindent\parindent}
578 \def\textindent#1{\indent\llap{#1\enspace}\ignorespaces}
579 %    \end{macrocode}
580 % \end{macro}
581 % \end{macro}
582 % \begin{macro}{\ttraggedright}
583 % \changes{v0.41}{1995/04/24}
584 %         {Move here from ltplain.dtx}
585 %    \begin{macrocode}
586 \def\ttraggedright{\reset@font\ttfamily\rightskip\z@ plus2em\relax}
587 %    \end{macrocode}
588 % \end{macro}
591 % \begin{macro}{\@footnotemark}
592 % \changes{v0.43}{1995/05/12}
593 %         {macro added}
594 % \LaTeXe\ version has |\nobreak| to allow hyphenation.
595 %    \begin{macrocode}
596 \def\@footnotemark{%
597   \leavevmode
598   \ifhmode\edef\@x@sf{\the\spacefactor}\fi
599   \@makefnmark
600   \ifhmode\spacefactor\@x@sf\fi
601   \relax}
602 %    \end{macrocode}
603 % \end{macro}
605 % \begin{macro}{\@textsuperscript}
606 % \changes{v0.48}{1995/07/07}
607 %         {macro added for latex/1722}
608 % Fudge this command to remove the text font command which
609 % is always the first thing in the argument. This is needed
610 % as in compatibility mode footnotes are processed in math mode,
611 % but the standard classes call |\@textsuperscript| in the definition
612 % of |\thanks|.
613 %    \begin{macrocode}
614 \def\@textsuperscript#1{$\m@th^{\@gobble#1}$}
615 %    \end{macrocode}
616 % \end{macro}
620 %  \begin{macro}{\@makefnmark}
621 % \changes{v0.44}{1995/05/20}{macro added}
622 %    \LaTeXe\ version uses |\textsuperscript| rather than
623 %    math mode.
624 %    \begin{macrocode}
625 \def\@makefnmark{\hbox{$^{\@thefnmark}\m@th$}}
626 %    \end{macrocode}
627 %  \end{macro}
629 %  \begin{macro}{\thempfootnote}
630 % \changes{v0.44}{1995/05/20}{macro added}
631 %    \LaTeXe\ version has an additional |\itshape| which would not
632 %    work (and would not make sense) in math mode.
633 %    \begin{macrocode}
634 \def\thempfootnote{\@alph\c@mpfootnote}
635 %    \end{macrocode}
636 %  \end{macro}
638 %  \begin{macro}{\@fnsymbol}
639 % \changes{v0.46}{1995/06/30}{macro added}
640 % \LaTeX\ version uses |\ensuremath| which does not work in
641 % compatibility mode.
642 %    \begin{macrocode}
643 \def\@fnsymbol#1{\ifcase#1\or *\or \dagger\or \ddagger\or
644     \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
645     \or \ddagger\ddagger \else\@ctrerr\fi}
646 %    \end{macrocode}
647 %  \end{macro}
649 % \begin{macro}{\@inmathwarn}
650 % \changes{v0.50}{1995/12/08}{Switched off \cs{@inmathwarn}}
651 % \LaTeX\ (1995/12/01) checks for text commands being used in math
652 % mode.  We switch this off in compatibility mode.
653 %    \begin{macrocode}
654 \let\@inmathwarn\@gobble
655 %    \end{macrocode}
656 % \end{macro}
658 % \subsection{Verbatim}
660 % \changes{v0.18}{1994/03/11}{Added the changes to \cs{verb}}
661 % \changes{v0.40}{1995/05/05}{Make \cs{verb} use \cs{tt} font in
662 %                             math mode.}
663 % \begin{macro}{\verb}
664 % \begin{macro}{\@sverb}
665 %    We restore the old definition of |\verb|, but using
666 %    |\verbatim@font| rather than |\tt|. The use of |\bgroup| and
667 %    |\egroup| allows us to prefix it with |\hbox| in math mode.
668 %    \begin{macrocode}
669 \def\verb{%
670    \relax\ifmmode\hbox\fi\bgroup
671       \@noligs
672       \verbatim@font
673       \let\do\@makeother \dospecials
674       \@ifstar{\@sverb}{\@verb}%
676 \def\@sverb#1{%
677    \def\@tempa ##1#1{\leavevmode\null##1\egroup}%
678    \@tempa
680 %    \end{macrocode}
681 % \end{macro}
682 % \end{macro}
684 % \begin{macro}{\verbatim@nolig@list}
685 % \changes{v0.20}{1994/04/20}{Added the redefinition of
686 %    \cs{verbatim@nolig@list}.}
687 %    The only ligatures which should be switched off in 2.09 mode are
688 %    the Spanish punctuation.
689 %    \begin{macrocode}
690 \def\verbatim@nolig@list{\do\`}
691 %    \end{macrocode}
692 % \end{macro}
694 % \begin{macro}{\@lquote}
695 % \changes{v0.21}{1994/04/24}{Added the definition of \cs{@lquote}.}
696 %    We restore the old definition of |\@lquote| in case any packages
697 %    use it.
698 %    \begin{macrocode}
699 \def\@lquote{\leavevmode{\kern\z@}`}
700 %    \end{macrocode}
701 % \end{macro}
704 % \subsection{Character codes}
706 % \changes{v0.18}{1994/03/11}{Added the catcode changes}
708 % By default, \LaTeXe{} makes the input charactes 0--8, 11, 14--31 and
709 % 128--255 illegal.  In compatibility mode, we restore their old
710 % meanings.
711 %    \begin{macrocode}
712 \catcode0=9
713 \@tempcnta=1
714 \loop\ifnum\@tempcnta<32
715    \catcode\@tempcnta=12
716    \advance\@tempcnta by 1
717 \repeat%
718 \catcode`\^^I=10\relax%
719 \catcode`\^^L=13\relax%
720 \catcode`\^^M=5\relax%
721 \catcode127=15
722 \@tempcnta=128
723 \loop\ifnum\@tempcnta<256
724    \catcode\@tempcnta=12
725    \advance\@tempcnta by 1
726 \repeat
727 %    \end{macrocode}
729 % \subsection{Miscellaneous commands}
731 % \begin{macro}{\SLiTeX}
732 %    The \textsc{Sli\TeX} logo.
733 %    \begin{macrocode}
734 \DeclareRobustCommand{\SLiTeX}{{%
735    \normalfont S\kern -.06em
736    {\scshape l\kern -.035emi}\kern -.06em
737    \TeX}}
738 %    \end{macrocode}
739 % \end{macro}
741 % \begin{macro}{\+}
742 %    The |\+| command should be defined, so that it can be used in
743 %    |\renewcommand|.
744 %    \begin{macrocode}
745 \let\+\@empty
746 %    \end{macrocode}
747 % \end{macro}
749 % \begin{macro}{\@cla}
750 % \begin{macro}{\@clb}
751 % \changes{v0.47}{1995/09/25}
752 %         {(DPC) Declare old \cs{cline} registers}
753 % \begin{macro}{\mscount}
754 % \LaTeX2.09 (and early versions of \LaTeXe) used these count registers
755 % in the definition of |\cline| and |\multispan|.
756 % Declare them here in case they were used for any other purposes.
757 %    \begin{macrocode}
758 \newcount\@cla
759 \newcount\@clb
760 \newcount\mscount
761 %    \end{macrocode}
762 % \end{macro}
763 % \end{macro}
764 % \end{macro}
766 % \begin{macro}{\@imakepicbox}
767 % \changes{v0.48}{1995/10/16}
768 %         {(DPC) emulate old behaviour of picture mode makebox}
769 % picture mode version
770 %    \begin{macrocode}
771 \long\def\@imakepicbox(#1,#2)[#3]#4{%
772   \vbox to#2\unitlength
773    {\let\mb@b\vss \let\mb@l\hss\let\mb@r\hss
774     \let\mb@t\vss
775     \@tfor\reserved@a :=#3\do{%
776       \if s\reserved@a
777         \let\mb@l\relax\let\mb@r\relax
778       \else
779         \expandafter\let\csname mb@\reserved@a\endcsname\relax
780       \fi}%
781     \mb@t
782     \hb@xt@ #1\unitlength{\mb@l #4\mb@r}%
783     \mb@b
784 %    \end{macrocode}
785 % This kern ensures that a |b| option aligns on the bottom of the
786 % text rather than the baseline. this is the documented behaviour in
787 % the \LaTeX Book. The kern is removed in compatibility mode.
789 % Remove kern for bug compatibility with 2.09.
790 %    \begin{macrocode}
791 %    \kern\z@
792      }}
793 %    \end{macrocode}
794 % \end{macro}
796 % \begin{macro}{\supereject}
797 %    \begin{macrocode}
798 \def\supereject{\par\penalty-\@MM}
799 %    \end{macrocode}
800 %  \end{macro}
802 % \begin{macro}{\nofiles}
803 % \changes{v0.51}{1996/05/24}{(DPC) Old definition, without \cs{write}
804 % added to \cs{protected@write}, for latex/2146}
805 % This old version might change the vertical spacing when it is used.
806 % Some old document might depend on that changed spacing so\ldots
807 %    \begin{macrocode}
808 \def\nofiles{%
809   \@fileswfalse
810   \typeout{No auxiliary output files.^^J}%
811   \long\def\protected@write##1##2##3{}%
812   \let\makeindex\relax
813   \let\makeglossary\relax}
814 %    \end{macrocode}
815 % \end{macro}
817 % \subsection{Packages and classes}
819 % \begin{macro}{\ProvidesPackage}
820 % \begin{macro}{\ProvidesClass}
821 %    We redefine |\ProvidesPackage| and |\ProvidesClass| to produce a
822 %    log message rather than a warning if they find an unexpected
823 %    file.
824 %    \begin{macrocode}
825 \def\ProvidesPackage#1{%
826   \xdef\@gtempa{#1}%
827   \ifx\@gtempa\@currname\else
828     \wlog{Compatibility mode: \@cls@pkg\space`\@currname' requested,
829        but `#1' provided.}%
830   \fi
831   \@ifnextchar[\@pr@videpackage{\@pr@videpackage[]}}%]
832 \let\ProvidesClass=\ProvidesPackage
833 %    \end{macrocode}
834 % \end{macro}
835 % \end{macro}
836 % That ends the head of |latex209.def|.
837 %    \begin{macrocode}
838 %</head>
839 %    \end{macrocode}
841 % \section{Middle of latex209.def}
843 % At this point, the code for |oldlfont.sty| is read in by the
844 % installation script.
846 % \section{End of latex209.def}
848 % This section describes the end of |latex209.def|.
849 %    \begin{macrocode}
850 %<*tail>
851 %    \end{macrocode}
853 % \subsection{Font commands}
855 % \changes{v0.12}{1994/01/24}{Added the oldlfont option.}
856 % \changes{v0.25}{1994/05/14}{Added the newlfont option, rewrote the
857 %    oldlfont option to change math grouping.}
858 % \changes{v0.26}{1994/05/15}{Added the margid and nomargid options.}
859 % \changes{v0.27}{1994/05/16}{Replaced \# by \#\# in margid.}
860 % \changes{v0.28}{1994/05/17}{Replaced \cs{input} newlfont.sty by
861 %    \cs{OptionNotUsed} in \cs{ds@newlfont}.}
863 % \begin{macro}{\ds@oldlfont}
864 % \begin{macro}{\ds@newlfont}
865 % \begin{macro}{\ds@margid}
866 % \begin{macro}{\ds@nomargid}
867 %    We declare |oldlfont|, |newlfont|, |margid| and |nomargid|
868 %    options to mimic the \LaTeX~2.09 NFSS1 options.
869 %    \begin{macrocode}
870 \def\ds@oldlfont{%
871 %FM   \@no@font@optfalse
872    \let\math@bgroup\@empty
873    \let\math@egroup\@empty
874    \let\@@math@bgroup\math@bgroup
875    \let\@@math@egroup\math@egroup
877 \def\ds@newlfont{%
878 %FM    \@no@font@optfalse
879    \OptionNotUsed
881 \def\ds@margid{%
882 %FM   \@no@font@optfalse
883   \let\math@bgroup\bgroup
884   \def\math@egroup##1{##1\egroup}%
885   \let \@@math@bgroup \math@bgroup
886   \let \@@math@egroup \math@egroup
888 \let\ds@nomargid\ds@oldlfont
889 \@onlypreamble\ds@oldfont
890 \@onlypreamble\ds@newfont
891 \@onlypreamble\ds@margid
892 \@onlypreamble\ds@nomargid
893 %    \end{macrocode}
894 % \end{macro}
895 % \end{macro}
896 % \end{macro}
897 % \end{macro}
899 % \begin{macro}{\encodingdefault}
900 %    The default encoding for old documents is OT1 rather than T1.
901 %    \begin{macrocode}
902 \renewcommand{\encodingdefault}{OT1}
903 %    \end{macrocode}
904 % \end{macro}
906 % \begin{macro}{\cmex/m/n/10}
907 %    Just in case a document style relies on |\cmex/m/n/10| to exist
908 %    (which may have been hard-wired to |\fam3|) we load the font.
909 %    \begin{macrocode}
910 \expandafter\font\csname cmex/m/n/10\endcsname=cmex10
911 %    \end{macrocode}
912 % \end{macro}
915 % \changes{v0.12}{1994/01/24}
916 %    {Added \cs{normalshape} and \cs{mediumseries}.}
917 % \changes{v0.28}{1994/05/16}{\cs{mediumseries} was using
918 %    \cs{fontshape} rather than \cs{fontseries}.}
920 % \begin{macro}{\normalshape}
921 % \begin{macro}{\mediumseries}
922 %    These commands were used in older versions of NFSS.
923 %    \begin{macrocode}
924 \def\normalshape{\fontshape\shapedefault\selectfont}
925 \def\mediumseries{\fontseries\seriesdefault\selectfont}
926 %    \end{macrocode}
927 % \end{macro}
928 % \end{macro}
929 % \begin{macro}{\DeclareOldFontCommand}
930 %    We redefine |\DeclareOldFontCommand| to do nothing.  This means
931 %    that any new document classes will have their redefinitions of
932 %    |\rm|, |\bf| etc.~ignored.
933 % \changes{v0.06}{1993/12/18}{Replaced \cs{@newfontswitch} by
934 %    \cs{@renewfontswitch}.}
935 % \changes{v0.11}{1994/01/21}{Removed \cs{RequirePackage}{oldlfont}.}
936 % \changes{v0.19}{1994/04/05}{Replaced \cs{@renewfontswitch} by
937 %    \cs{DeclareOldFontCommand}.}
938 %    \begin{macrocode}
939 \def \DeclareOldFontCommand #1#2#3{%
940   \wlog{Compatibility mode: definition
941         of \string#1\space ignored.}%
943 %    \end{macrocode}
944 % \end{macro}
946 % \changes{v0.17}
947 %    {1994/03/02}{Added \cs{@halfmag}, \cs{@magscale} and \cs{@ptscale}}
948 % \changes{v0.35}
949 %         {1994/09/23}{Added spaces to the old font scale commands.}
951 % \begin{macro}{\@halfmag}
952 % \begin{macro}{\@magscale}
953 % \begin{macro}{\@ptscale}
954 %    Some font-specifying commands from \LaTeX~2.09.
955 %    \begin{macrocode}
956 \def\@halfmag{ scaled \magstephalf}
957 \def\@magscale#1{ scaled \magstep#1 }
958 \def\@ptscale#1{ scaled #100 }
959 %    \end{macrocode}
960 % \end{macro}
961 % \end{macro}
962 % \end{macro}
964 % \begin{macro}{\font}
965 %    The current font is set to be CMR 10pt, to match \LaTeX~2.09.
966 %    \begin{macrocode}
967 \fontencoding{OT1} \fontfamily{cmr}
968 \fontsize{10}{12} \fontseries{m} \fontshape{n}
969 \selectfont
970 %    \end{macrocode}
971 % \end{macro}
973 % \changes{v0.11}{1994/01/21}{Added the rest of this subsection, which
974 %    used to be in oldlfont.dtx.}
976 % \begin{macro}{\load}
977 %    The |\load| command is no longer needed, it is therefore
978 %    defined to do nothing.
979 %    \begin{macrocode}
980 \let\load\@gobbletwo
981 %    \end{macrocode}
982 % \end{macro}
984 %    Here are three delimiters which have be partly disabled by
985 %    NFSS2 (the small variants) since the corresponding fonts are
986 %    normally not preloaded as math symbol fonts.
987 %    \begin{macrocode}
988 \DeclareMathDelimiter{\lgroup} % extensible ( with sharper tips
989      {\mathopen}{bold}{"28}{largesymbols}{"3A}
990 \DeclareMathDelimiter{\rgroup} % extensible ) with sharper tips
991      {\mathclose}{bold}{"29}{largesymbols}{"3B}
992 \DeclareMathDelimiter{\bracevert} % the vertical bar that extends braces
993      {\mathord}{typewriter}{"7C}{largesymbols}{"3E}
994 %    \end{macrocode}
996 %    In old documents we might find some usages of |\bffam| etc. Thus
997 %    we add the following code:
998 %    \begin{macrocode}
999 \let\bffam\symbold
1000 \let\sffam\symsans
1001 \let\itfam\symitalic
1002 \let\ttfam\symtypewriter
1003 \let\scfam\symsmallcaps
1004 \let\slfam\symslanted
1005 \let\rmfam\symoperators
1006 %    \end{macrocode}
1008 %    Below are the |\..pt| commands with hopefully the same
1009 %    functionality as in the old \texttt{lfonts.tex}. Notice that the
1010 %    |\baselineskip| parameter wasn't set by these commands so that
1011 %    using them now shouldn't set this either. Thus we go low-level.
1012 %    This means that the commands are now fragile but I think they
1013 %    have been fragile before.
1014 %    \begin{macrocode}
1015 \newcommand\vpt   {\edef\f@size{\@vpt}\rm}
1016 \newcommand\vipt  {\edef\f@size{\@vipt}\rm}
1017 \newcommand\viipt {\edef\f@size{\@viipt}\rm}
1018 \newcommand\viiipt{\edef\f@size{\@viiipt}\rm}
1019 \newcommand\ixpt  {\edef\f@size{\@ixpt}\rm}
1020 \newcommand\xpt   {\edef\f@size{\@xpt}\rm}
1021 \newcommand\xipt  {\edef\f@size{\@xipt}\rm}
1022 \newcommand\xiipt {\edef\f@size{\@xiipt}\rm}
1023 \newcommand\xivpt {\edef\f@size{\@xivpt}\rm}
1024 \newcommand\xviipt{\edef\f@size{\@xviipt}\rm}
1025 \newcommand\xxpt  {\edef\f@size{\@xxpt}\rm}
1026 \newcommand\xxvpt {\edef\f@size{\@xxvpt}\rm}
1027 %    \end{macrocode}
1029 % \subsection{User customization}
1031 % For sites which customized their version of \LaTeX~2.09, we provide
1032 % a file |latex209.cfg|, which is loaded every time we enter
1033 % compatibility mode.  If the file doesn't exist, we don't do
1034 % anything.
1035 %    \begin{macrocode}
1036 \InputIfFileExists{latex209.cfg}{}{}
1037 %    \end{macrocode}
1038 % That ends the file |latex209.def|.
1039 %    \begin{macrocode}
1040 %</tail>
1041 %    \end{macrocode}
1043 % \section{Obsolete style files}
1045 % \changes{v0.08}{1993/12/19}{Added this section.}
1046 % \changes{v0.09}{1993/12/20}{Removed artN.sty, bkN.sty and repN.sty.}
1047 % \changes{v0.23}{1994/05/11}{Added bezier.sty.}
1048 % \changes{v0.31}{1994/05/20}{Added t1enc.sty.}
1050 % For each of the standard \LaTeX~2.09 document styles, we produce a
1051 % file which points to the appropriate \LaTeXe{} document class file.
1052 % This means that any styles which say |\input article.sty| should
1053 % still work.
1055 %    \begin{macrocode}
1056 %<*article|book|report|letter|slides>
1057 \NeedsTeXFormat{LaTeX2e}
1058 %</article|book|report|letter|slides>
1059 %<*article>
1060 \@obsoletefile{article.cls}{article.sty}
1061 \LoadClass{article}
1062 %</article>
1063 %<*book>
1064 \@obsoletefile{book.cls}{book.sty}
1065 \LoadClass{book}
1066 %</book>
1067 %<*report>
1068 \@obsoletefile{report.cls}{report.sty}
1069 \LoadClass{report}
1070 %</report>
1071 %<*letter>
1072 \@obsoletefile{letter.cls}{letter.sty}
1073 \LoadClass{letter}
1074 %</letter>
1075 %<*slides>
1076 \@obsoletefile{slides.cls}{slides.sty}
1077 \LoadClass{slides}
1078 %</slides>
1079 %    \end{macrocode}
1080 % We also produce empty |fleqn.sty| and |leqno.sty| files in case
1081 % anyone has |\input| one of them.
1082 %    \begin{macrocode}
1083 %<*fleqn>
1084 \@obsoletefile{fleqn.clo}{fleqn.sty}
1085 \input{fleqn.clo}
1086 %</fleqn>
1087 %<*leqno>
1088 \@obsoletefile{leqno.clo}{leqno.sty}
1089 \input{leqno.clo}
1090 %</leqno>
1091 %    \end{macrocode}
1092 % We also produce an empty |openbib.sty| in case anyone has |\input|
1093 % |openbib.sty|.  The |openbib| class option is now part of the kernel.
1094 %    \begin{macrocode}
1095 %<*openbib>
1096 \iffalse
1098 The openbib option is now part of LaTeX thus this package is no
1099 longer necessary.  It is only retained for upward compatibility.
1100 See the 2nd edition of the LaTeX book, or the file usrguide.tex
1101 which comes with the LaTeX distribution, for more details.
1104 %</openbib>
1105 %    \end{macrocode}
1106 % We also produce an empty |bezier.sty| in case anyone has |\input|
1107 % |bezier.sty|.  The |\bezier| command is now part of the kernel.
1108 %    \begin{macrocode}
1109 %<*bezier>
1110 \iffalse
1112 The \bezier command is now part of LaTeX thus this package is no
1113 longer necessary.  It is only retained for upward compatibility.
1114 Also, please note that LaTeX now offers an extended bezier command
1115 which automatically calculates the number of points needed for the
1116 plot.  See the 2nd edition of the LaTeX book, or the file
1117 usrguide.tex which comes with the LaTeX distribution, for more
1118 details.
1121 %</bezier>
1122 %    \end{macrocode}
1123 % We also produce a |t1enc| package, for compatibility with the
1124 % Companion.  This has been replaced by the |fontenc| package.
1125 %    \begin{macrocode}
1126 %<*t1enc>
1127 \NeedsTeXFormat{LaTeX2e}
1128 \ProvidesPackage{t1enc}[1994/06/01 Standard LaTeX package]
1129 \renewcommand{\encodingdefault}{T1}
1130 \fontencoding{T1}\selectfont
1131 %</t1enc>
1132 %    \end{macrocode}
1133 % \DeleteShortVerb{\|}
1134 % \Finale
1135 \endinput