[comp.text.tex] A small bug in oldlfont.sty of New Font ... and

akgul@TRBILUN.BITNET (Mustafa Akgul) (03/28/91)

I found a small bug in oldlfont.sty of AMS distribution
of the  New Font Selection Scheme of FMi & RS.
 
If you try to load oldlfont.sty at dump time you will get
an error message stating that `\@undefined' is really UNDEFINED
at that point. It is defined in LaTeX.tex which is read later.
To remedy one should change the line
 
\@ifundefined{ds@oldlfont}{\let\ds@oldlfont\@empty}{\endinput}
 
with
 
\expandafter\ifx\csname ds@oldlfont\endcsname\relax
\let\ds@oldlfont\@empty  \else \endinput \fi
 
and everything works fine.
When you use fontdef.ori, preload.min and modified
oldlfont.sty ( which is called oldlfont.xxx by me),
you will get essentially the lplain.fmt with added
capacity to switch to new font selection scheme.
You only need to pay in time for the loading of actual fonts,
which is mainly minimal.
 
I have compared the size of this .fmt, say lams0, and lplain.fmt
in various environment. Here are the results:
 
Environment                   lplain     lams0      plain
ctex 2.991 on SUN4             459K       308K       246K
ctex 2.991 on SUN3             492K       341K       274K
TeX 3.1 on DG MV20000 AOS/VS   583K       432K       335K
SB30TEX on XT                  283K       213K       140K
 
ctex has main memory of 100K and TeX 3.1 has 112K main memory,
several other parameters are also increased.
 
Clearly it pays to switch to new font selection scheme even if
you do not use it. These is important especially if you do not
have bigTeX at your location.
 
%%%%%%%%%%%%
For convience to some of the readers I am including oldlfont.xxx
below:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% OLDLFONT.XXX                                              March  1991      %
%  Modified from ... by M. Akgul <akgul@trbilun.bitnet>
% to be able use instead of  basefont.tex or newlfont.sty
% at the dump time.
% Check sums are not correct !
% OLDLFONT.STY                                              July 1990      %
%                                                                          %
% This file is part of the AMS-LaTeX Version 1.0 distribution              %
%   American Mathematical Society, Technical Support Group,                %
%   P. O. Box 6248, Providence, RI 02940                                   %
%   800-321-4AMS (321-4267) or 401-455-4080                                %
%   Internet: Tech-Support@Math.AMS.com                                    %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% This is file `oldlfont.sty' generated
%% on <1990/6/30> with the docstrip utility (v1.1k).
%%
%% The original source file was `oldlfont.doc'.
%%
%%
%% Copyright (C) 1989,1990 by Frank Mittelbach, Rainer Schoepf.
%% All rights reserved.
%%
%% IMPORTANT NOTICE:
%%
%% You are not allowed to change this file. You may however copy this file
%% to a file with a different name and then change the copy.
%%
%% You are allowed to distribute this file under the condition that it is
%% distributed together with all files mentioned in readme.mz3. If you
%% receive only some of these files from someone, complain!
%%
%% You are NOT ALLOWED to distribute this file alone. You are NOT ALLOWED
%% to take money for the distribution or use of either this file or a
%% changed version, except for a nominal charge for copying etc.
%%
%% Error Reports in case of UNCHANGED versions to
%%
%% F. Mittelbach
%% Eichenweg 29
%% D-6500 Mainz 1
%% Federal Republic of Germany
%% Bitnet: <PZF5HZ@DRUEDS2>
%%
%% or:
%% R. Sch\"opf
%% Inst. f. Theor. Physik
%% der Universit\"at Heidelberg
%% Philosophenweg 16
%% D-6900 Heidelberg
%% Federal Republic of Germany
%% Bitnet: <BK4@DHDURZ1>
%%
%%
\def\fileversion{v1.2i}
\def\filedate{90/06/29}
\def\docdate {90/06/29}
 
%% \CheckSum{220}
%% \CharacterTable
%%  {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
%%   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
%%   Digits        \0\1\2\3\4\5\6\7\8\9
%%   Exclamation   \!     Double quote  \"     Hash (number) \#
%%   Dollar        \$     Percent       \%     Ampersand     \&
%%   Acute accent  \'     Left paren    \(     Right paren   \)
%%   Asterisk      \*     Plus          \+     Comma         \,
%%   Minus         \-     Point         \.     Solidus       \/
%%   Colon         \:     Semicolon     \;     Less than     \<
%%   Equals        \=     Greater than  \>     Question mark \?
%%   Commercial at \@     Left bracket  \[     Backslash     \\
%%   Right bracket \]     Circumflex    \^     Underscore    \_
%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%%   Right brace   \}     Tilde         \~}
%% Copyright (C) 1989,1990 Frank Mittelbach and Rainer Sch\"opf,
%% all rights reserved.
 
%\expandafter\ifx\csname mdqon\endcsname\relax
 
\expandafter\ifx\csname ds@oldlfont\endcsname\relax
\let\ds@oldlfont\@empty  \else \endinput \fi
\immediate
 \write\sixt@@n{Style-Option: `oldlfont'
 \fileversion\space <\filedate>  (FMi and RmS)}
\immediate
 \write\sixt@@n{English Documentation
 \@spaces\@spaces\space <\docdate>  (FMi and RmS)}
\def\newfont#1#2{\@ifdefinable#1{\global
                        \font#1=#2\relax}}
\def\symbol#1{\char #1\relax}
\def\@gobbletwo#1#2{}
\let\load\@gobbletwo
\new@mathgroup\bffam
\new@mathgroup\sffam
\new@mathgroup\ttfam
\new@mathgroup\itfam
\new@mathgroup\scfam
\new@mathgroup\slfam
\new@internalmathalphabet\mathbf\bffam{cmr}{bx}{n}
\new@internalmathalphabet\mathsf\sffam{cmss}{m}{n}
\new@internalmathalphabet\mathtt\ttfam{cmtt}{m}{n}
\new@internalmathalphabet\mathit\itfam{cmr}{m}{it}
\new@internalmathalphabet\mathsc\scfam{cmr}{m}{sc}
\new@internalmathalphabet\mathsl\slfam{cmr}{m}{sl}
\def\prm{\family\rmdefault
    \series\default@series
    \shape\default@shape\selectfont
    \mathrm}
\def\psf{\family\sfdefault
    \series\default@series
    \shape\default@shape\selectfont\mathsf}
\def\psl{\family\rmdefault
    \series\default@series
    \shape\sldefault\selectfont\mathsl}
\def\pbf{\family\rmdefault
    \series\bfdefault
    \shape\default@shape\selectfont\mathbf}
\def\psc{\family\rmdefault
    \series\default@series
    \shape\scdefault\selectfont\mathsc}
\def\pit{\family\rmdefault
    \series\default@series
    \shape\itdefault\selectfont\mathit}
\def\ptt{\family\ttdefault
    \series\default@series
    \shape\default@shape\selectfont\mathtt}
\def\em{\protect\pem}
\def\pem{\@nomath\em \ifdim \fontdimen\@ne\font >\z@
                       \rm \else \it \fi}
\def\@setsize#1#2#3#4{\@nomath#1\size{#4}{#2}%
    \family\default@family
    \series\default@series\shape\default@shape
    \selectfont}
 
\let\math@bgroup\@empty
\let\math@egroup\@empty
 \ifx\lyfam\undefined
 \new@mathgroup\lyfam
 \define@mathgroup\mv@normal\lyfam
       {lasy}{m}{n}
 \define@mathgroup\mv@bold\lyfam
       {lasy}{b}{n}
 
\edef\@tempa{\hexnumber@\lyfam}
\mathchardef\mho"0\@tempa 30
\mathchardef\Join"3\@tempa 31
\mathchardef\Box"0\@tempa 32
\mathchardef\Diamond"0\@tempa 33
\mathchardef\leadsto"3\@tempa 3B
\mathchardef\sqsubset"3\@tempa 3C
\mathchardef\sqsupset"3\@tempa 3D
\mathchardef\lhd"3\@tempa 01
\mathchardef\unlhd"3\@tempa 02
\mathchardef\rhd"3\@tempa 03
\mathchardef\unrhd"3\@tempa 04
\fi
\endinput
%%
%% End of file `oldlfont.sty'.