summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/base/ltfsscmp.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/base/ltfsscmp.dtx')
-rw-r--r--Master/texmf-dist/source/latex/base/ltfsscmp.dtx153
1 files changed, 59 insertions, 94 deletions
diff --git a/Master/texmf-dist/source/latex/base/ltfsscmp.dtx b/Master/texmf-dist/source/latex/base/ltfsscmp.dtx
index 6600111aca1..755a8837b6e 100644
--- a/Master/texmf-dist/source/latex/base/ltfsscmp.dtx
+++ b/Master/texmf-dist/source/latex/base/ltfsscmp.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
+% Copyright 1993-2015
% The LaTeX3 Project and any individual authors listed elsewhere
% in this file.
%
@@ -36,7 +36,7 @@
%
%
\ProvidesFile{ltfsscmp.dtx}
- [1995/08/26 v3.0c LaTeX Kernel (NFSS1 Compatibility)]
+ [2015/02/22 v3.0e LaTeX Kernel (NFSS1 Compatibility)]
% \iffalse
\documentclass{ltxdoc}
\begin{document}
@@ -52,7 +52,7 @@
%<+checkmem>\CHECKMEM
% \fi
%
-% \CheckSum{235}
+% \CheckSum{259}
%
%
% \GetFileInfo{ltfsscmp.dtx}
@@ -63,6 +63,7 @@
%
% \author{Frank Mittelbach \and Rainer Sch\"opf}
%
+% \MaintainedByLaTeXTeam{latex}
% \maketitle
%
% This file contains the implementation of commands giving
@@ -72,10 +73,16 @@
% \begin{quote}
% \textbf{Warning:}
% The macro documentation is still basically the documentation from the
-% first NFSS release and therefore in some cases probably not
+% first NFSS release and therefore in some cases probably not
% completely accurate.
% \end{quote}
%
+% Version 1 of NFSS is obsolete now for about 20 years (and was
+% ``current'' only for a short intermediate time) so with the 2015
+% release these internal interface commands are removed from the
+% kernel and made available via \textsf{latexrelease} package so that
+% backward compatibility remains ensured for very old documents.
+%
% \StopEventually{}
%
%
@@ -83,78 +90,42 @@
% {(DPC) minor documentation edits}
% \changes{v3.0a}{1995/05/24}
% {(DPC) Make file from previous file, fam.dtx 1995/05/20 v2.2d}
+% \changes{v3.0d}{2015/02/21}
+% {Removed autoload code}
+% \changes{v3.0e}{2015/02/22}
+% {Moved all code into latexrelease - obsolete commands are no
+% longer automatically part of the kernel}
%
%
-%
-% \section{Compatibility code for NFSS release 1}
-%
-% There have been a couple of commands which became obsolete with NFSS2.
-% In the past they have been still part of the kernel code to make it
-% possible to process old packages using those commands but since they
-% take up valuable space we decided to remove them and instead
-% auto-load their definitions if they are actually encountered in some
-% file.
-%
-% Thus the following code doesn't really belong to this file but I put
-% it here for the moment until finally a documented version of
-% \texttt{ltfss.dtx} is available.
-%
-% [ auto-loading not activated ]
-%
-% \begin{macro}{\new@fontshape}
-% \begin{macro}{\subst@fontshape}
-% \begin{macro}{\extra@def}
-% \begin{macro}{\default@mextra}
-% \begin{macro}{\define@mathalphabet}
-% \begin{macro}{\define@mathgroup}
-% These macros are the interfaces in NFSS1 which shouldn't be used
-% any longer. We all define them to call the macro
-% |\scan@fontshape| which is an internal macro that loads the real
-% definitions and then to execute themselves again. Once this
-% auto-loading has happened they have the definition shown below and
-% thus execute their real code directly.
% \begin{macrocode}
-%<*autoload>
-\def\new@fontshape{\scan@fontshape\new@fontshape}
-\def\subst@fontshape{\scan@fontshape\subst@fontshape}
-\def\extra@def{\scan@fontshape\extra@def}
-\def\default@mextra{\scan@fontshape\default@mextra}
-\def\define@mathalphabet{\scan@fontshape\define@mathalphabet}
-\def\define@mathgroup{\scan@fontshape\define@mathgroup}
+%<*latexrelease>
+\IncludeInRelease{2015/01/01}{\new@fontshape}%
+ {NFSS version1 commands}%
+\let\new@fontshape\@undefined
+\let\warn@rel@i\@undefined
+\let\scan@fontshape\@undefined
+\let\scan@@fontshape\@undefined
+\let\subst@fontshape\@undefined
+\let\extra@def\@undefined
+\let\default@mextra\@undefined
+\let\preload@sizes\@undefined
+\let\err@rel@i\@undefined
+\let\newmathalphabet\@undefined
+\let\newmathalphabet@\@undefined
+\let\newmathalphabet@@@\@undefined
+\let\if@no@font@opt\@undefined
+\let\@no@font@optfalse\@undefined
+\let\define@mathalphabet\@undefined
+\let\define@mathgroup\@undefined
+\let\addtoversion\@undefined
+\EndIncludeInRelease
% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-%
-% \begin{macro}{\scan@fontshape}
-% Here is the kernel definition for |\scan@fontshape| which loads
-% the actual definitions from the file \texttt{nfsscmp.def}.
-% \begin{macrocode}
-\def\scan@fontshape{\input{nfsscmp.def}}
-% \end{macrocode}
-% \end{macro}
%
+% In older releases we provide the original definitions.
%
-% The following definitions are now placed into the auto-load file.
% \begin{macrocode}
-% \end{macrocode}
-%
-% Since we don't know when this file will be read in we need to
-% provide ourselves with standard |\catcode| settings. This is done
-% by placing all definitions in a group and calling
-% |\nfss@catcodes|. But this macro will also disable spaces which
-% isn't very appropriate for the following code because it contains
-% a lot of helper messages. Therefore we change this back.
-% \begin{macrocode}
-\begingroup
-\nfss@catcodes
-\catcode`\ =10\relax
-%</autoload>
-%<*compat>
+\IncludeInRelease{2014/05/01}{\new@fontshape}%
+ {NFSS version1 commands}%
% \end{macrocode}
%
% \begin{macro}{\new@fontshape}
@@ -163,7 +134,7 @@
\gdef\new@fontshape#1#2#3#4{%
\warn@rel@i\new@fontshape\DeclareFontShape
\expandafter\scan@fontshape\@gobble#4<\@nil><<%
- \DeclareFontShape U{#1}{#2}{#3}\reserved@f}
+ \DeclareFontShape U{#1}{#2}{#3}\reserved@f}%
\@onlypreamble\new@fontshape
% \end{macrocode}
% \end{macro}
@@ -178,7 +149,7 @@
*** Update by using release 2 command
\string#2.\MessageBreak
*** Recovery is probably possible}%
-}
+}%
\@onlypreamble\warn@rel@i
% \end{macrocode}
% \end{macro}
@@ -192,7 +163,7 @@
\let\reserved@f\@empty
\let\reserved@e\@empty % holds last info
\scan@@fontshape
-}
+}%
\@onlypreamble\scan@fontshape
% \end{macrocode}
% \end{macro}
@@ -240,7 +211,7 @@
\fi
\expandafter\scan@@fontshape
\fi
-}
+}%
\@onlypreamble\scan@@fontshape
% \end{macrocode}
% \end{macro}
@@ -253,7 +224,7 @@
% \begin{macrocode}
\gdef\subst@fontshape#1#2#3#4#5#6{%
\warn@rel@i\subst@fontshape\DeclareFontShape
- \DeclareFontShape{U}{#1}{#2}{#3}{<->sub*#4/#5/#6}{}}
+ \DeclareFontShape{U}{#1}{#2}{#3}{<->sub*#4/#5/#6}{}}%
\@onlypreamble\subst@fontshape
% \end{macrocode}
% \end{macro}
@@ -266,7 +237,7 @@
\gdef\extra@def#1#2#3{%
\warn@rel@i\extra@def\DeclareFontFamily
\DeclareFontFamily{U}{#1}{}%
-}
+}%
\@onlypreamble\extra@def
% \end{macrocode}
% \end{macro}
@@ -285,7 +256,7 @@
% the second argument of |\DeclareFontEncodingDefaults|.
% \begin{macrocode}
\DeclareFontEncodingDefaults\relax
-}
+}%
\@onlypreamble\default@mextra
% \end{macrocode}
% \end{macro}
@@ -298,7 +269,7 @@
\gdef\preload@sizes{%
\warn@rel@i\preload@sizes\DeclarePreloadSizes
\DeclarePreloadSizes U%
-}
+}%
\@onlypreamble\preload@sizes
% \end{macrocode}
% \end{macro}
@@ -319,7 +290,7 @@
% Let's die.
% \begin{macrocode}
\batchmode\input.\relax
-}
+}%
\@onlypreamble\err@rel@i
% \end{macrocode}
% \end{macro}
@@ -344,10 +315,10 @@
\warn@rel@i\newmathalphabet\DeclareMathAlphabet
\fi
\@ifstar\newmathalphabet@@@
- \newmathalphabet@@}
-\gdef\newmathalphabet@@#1{\DeclareMathAlphabet#1{U}{}{}{}}
+ \newmathalphabet@@}%
+\gdef\newmathalphabet@@#1{\DeclareMathAlphabet#1{U}{}{}{}}%
\gdef\newmathalphabet@@@#1#2#3#4{%
- \DeclareMathAlphabet{#1}{U}{#2}{#3}{#4}}
+ \DeclareMathAlphabet{#1}{U}{#2}{#3}{#4}}%
\@onlypreamble\newmathalphabet
\@onlypreamble\newmathalphabet@@
\@onlypreamble\newmathalphabet@@@
@@ -360,7 +331,7 @@
% \begin{macro}{\@no@font@optfalse}
% \begin{macrocode}
\global\let\if@no@font@opt\iftrue
-\gdef\@no@font@optfalse{\let\if@no@font@opt\iffalse}
+\gdef\@no@font@optfalse{\let\if@no@font@opt\iffalse}%
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -370,7 +341,7 @@
% \begin{macrocode}
\gdef\define@mathalphabet{%
\err@rel@i\define@mathalphabet\DeclareMathAlphabet
-}
+}%
\@onlypreamble\define@mathalphabet
% \end{macrocode}
% \end{macro}
@@ -383,31 +354,25 @@
% \begin{macrocode}
\gdef\define@mathgroup{%
\err@rel@i\define@mathgroup\DeclareSymbolFont
-}
+}%
\@onlypreamble\define@mathgroup
-%</compat>
% \end{macrocode}
% \end{macro}
%
-%
% \begin{macro}{\addtoversion}
% |\addtoversion| is the old form.
% \begin{macrocode}
\def\addtoversion#1#2{%
\warn@rel@i\addtoversion\SetMathAlphabet
- \SetMathAlphabet#2{#1}{U}}
+ \SetMathAlphabet#2{#1}{U}}%
\@onlypreamble\addtoversion
% \end{macrocode}
% \end{macro}
%
-%
-%
-% That finishes the definitions for the old interfaces --- but first
-% we better finish the group.
+% Finishing off this huge |\IncludeInRelease| argument:
% \begin{macrocode}
-%<*autoload>
-\endgroup
-%</autoload>
+\EndIncludeInRelease
+%</latexrelease>
% \end{macrocode}
%
% \Finale