diff options
Diffstat (limited to 'Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx | 65 |
1 files changed, 54 insertions, 11 deletions
diff --git a/Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx b/Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx index 951c6de2e5a..291cd1368f2 100644 --- a/Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx +++ b/Master/texmf-dist/source/latex-dev/base/ltfssdcl.dtx @@ -36,7 +36,7 @@ % % \ProvidesFile{ltfssdcl.dtx} - [2020/01/20 v3.0t LaTeX Kernel (NFSS Declarative Interface)] + [2020/03/19 v3.0v LaTeX Kernel (NFSS Declarative Interface)] % \iffalse \documentclass{ltxdoc} \begin{document} @@ -465,7 +465,7 @@ % \changes{v3.0q}{2015/03/18}{Introduce \cs{e@mathgroup@top}} % \begin{macrocode} %</2ekernel> -%<latexrelease>\IncludeInRelease{2015/01/01} +%<latexrelease>\IncludeInRelease{2020/10/01} %<latexrelease> {\document@select@group}{\document@select@group}% %<*2ekernel|latexrelease> \def\document@select@group#1#2#3#4{% @@ -491,13 +491,54 @@ \@eha \fi \else \expandafter\non@alpherr\fi - #1{#4}% +% \end{macrocode} +% If the legacy interface is used, e.g., \verb=$\sf -1$= the math +% alphabet \verb=#1= does not take an argument so we better do not +% surround \verb=#4= with braces, because then we get +% \verb={\relax}= into the formula and introduce an extra Ord +% atom. The two different cases can be distinguished by looking at +% the current value of \cs{math@bgroup}. +% \changes{v3.0u}{2020/03/19}{fix for (gnats/3357)} +% \begin{macrocode} + \expandafter#1\ifx\math@bgroup\bgroup{#4}\else#4\fi }% } %</2ekernel|latexrelease> %<latexrelease>\EndIncludeInRelease +%<latexrelease>\IncludeInRelease{2015/01/01} +%<latexrelease> {\document@select@group}{\document@select@group}% +%<latexrelease> +%<latexrelease>\def\document@select@group#1#2#3#4{% +%<latexrelease> \ifx\math@bgroup\bgroup\else\relax\expandafter\@firstofone\fi +%<latexrelease> {% +%<latexrelease> \ifmmode +%<latexrelease> \ifnum\csname c@mv@\math@version\endcsname<\e@mathgroup@top +%<latexrelease> \begingroup +%<latexrelease> \escapechar\m@ne +%<latexrelease> \getanddefine@fonts{\csname c@mv@\math@version\endcsname}#3% +%<latexrelease> \globaldefs\@ne \math@fonts +%<latexrelease> \endgroup +%<latexrelease> \expandafter\extract@alph@from@version +%<latexrelease> \csname mv@\math@version\expandafter\endcsname +%<latexrelease> \expandafter{\number\csname +%<latexrelease> c@mv@\math@version\endcsname}% +%<latexrelease> #1% +%<latexrelease> \global\advance\csname c@mv@\math@version\endcsname\@ne +%<latexrelease> \else +%<latexrelease> \let#1\relax +%<latexrelease> \@latex@error{Too many math alphabets used +%<latexrelease> in version \math@version}% +%<latexrelease> \@eha +%<latexrelease> \fi +%<latexrelease> \else \expandafter\non@alpherr\fi +%<latexrelease> #1{#4}% +%<latexrelease> }% +%<latexrelease>} +%<latexrelease>\EndIncludeInRelease +%<latexrelease> %<latexrelease>\IncludeInRelease{0000/00/00} %<latexrelease> {\document@select@group}{\document@select@group}% +%<latexrelease> %<latexrelease>\def\document@select@group#1#2#3#4{% %<latexrelease> \ifx\math@bgroup\bgroup\else\relax\expandafter\@firstofone\fi %<latexrelease> {% @@ -582,17 +623,19 @@ % \begin{macrocode} \let\select@group\document@select@group % \end{macrocode} -% Install the default font attributes they are currently pointing -% to error font shape. +% Install the default font attributes as they are currently pointing +% to error font face. We can speed up the process by just using +% \cs{edef}, thereby avoiding all kind of extra processing. % Don't use |\reset@font| since that would trigger |\selectfont|. +% \changes{v3.0v}{2020/04/13}{Small update for speed.} % \begin{macrocode} - \fontencoding{\encodingdefault}% - \fontfamily{\familydefault}% - \fontseries{\seriesdefault}% - \fontshape{\shapedefault}% + \fontencoding\encodingdefault + \edef\f@family{\familydefault}% + \edef\f@series{\seriesdefault}% + \edef\f@shape{\shapedefault}% % \end{macrocode} -% kill all macros not longer needed. -% we need to add many more!!!!!! +% Drop stuff not longer needed. +% We need to add many more!!!!!! % \begin{macrocode} \everyjob{}% } |