diff options
author | Karl Berry <karl@freefriends.org> | 2020-02-28 22:28:01 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-02-28 22:28:01 +0000 |
commit | f230bae8f263f753df0d1f04a2d57a5ef1fd9b80 (patch) | |
tree | 285099d053c757d7152f7636b04e5d38f99d0324 /Master/texmf-dist/source/latex | |
parent | bcf879c00c0a01a1db9e7dac4f801b74be104c34 (diff) |
latex (28feb20)
git-svn-id: svn://tug.org/texlive/trunk@53958 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r-- | Master/texmf-dist/source/latex/base/ltdefns.dtx | 6 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/base/ltfssaxes.dtx | 56 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/base/ltfssbas.dtx | 36 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/base/ltvers.dtx | 2 |
4 files changed, 83 insertions, 17 deletions
diff --git a/Master/texmf-dist/source/latex/base/ltdefns.dtx b/Master/texmf-dist/source/latex/base/ltdefns.dtx index ae472966d57..303b9e5604b 100644 --- a/Master/texmf-dist/source/latex/base/ltdefns.dtx +++ b/Master/texmf-dist/source/latex/base/ltdefns.dtx @@ -32,7 +32,7 @@ %<*driver> % \fi \ProvidesFile{ltdefns.dtx} - [2019/08/27 v1.5f LaTeX Kernel (definition commands)] + [2020/02/27 v1.5g LaTeX Kernel (definition commands)] % \iffalse \documentclass{ltxdoc} \GetFileInfo{ltdefns.dtx} @@ -888,17 +888,21 @@ % % \begin{macro}{\@gobble} % \begin{macro}{\@gobbletwo} +% \begin{macro}{\@gobblethree} +% \changes{v1.5g}{2020/02/27}{Macro added} % \begin{macro}{\@gobblefour} % \changes{v1.2n}{1995/05/26}{(CAR) Added \cs{long}s} % The |\@gobble| macro is used to get rid of its argument. % \begin{macrocode} \long\def \@gobble #1{} \long\def \@gobbletwo #1#2{} +\long\def \@gobblethree #1#2#3{} \long\def \@gobblefour #1#2#3#4{} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} +% \end{macro} % % \begin{macro}{\@firstofone} % \begin{macro}{\@firstoftwo} diff --git a/Master/texmf-dist/source/latex/base/ltfssaxes.dtx b/Master/texmf-dist/source/latex/base/ltfssaxes.dtx index 1a8dbd9cfba..02a49a3122d 100644 --- a/Master/texmf-dist/source/latex/base/ltfssaxes.dtx +++ b/Master/texmf-dist/source/latex/base/ltfssaxes.dtx @@ -35,7 +35,7 @@ % % \ProvidesFile{ltfssaxes.dtx} - [2020/02/18 v1.0c LaTeX Kernel (NFSS Axes handing)] + [2020/02/27 v1.0d LaTeX Kernel (NFSS Axes handing)] % \iffalse \documentclass{ltxdoc} \begin{document} @@ -827,7 +827,6 @@ % % % \begin{macro}{\set@target@series} -% \begin{macro}{\series@drop@one@m} % % Finally the code for normalizing the \cs{f@series} value. % @@ -845,21 +844,63 @@ \def\set@target@series#1{% % \end{macrocode} % We need to \cs{edef} the argument first in case it starts with a -% conditional. +% conditional. Then we check (and perhaps drop) an ``m'' from the +% value andassign the result to \cs{f@series}. +% \changes{v1.0d}{2020/02/27}{Drop ``m'' only in a specific set of values (gh/293)} % \begin{macrocode} \edef\f@series{#1}% - \edef\f@series{\expandafter\series@drop@one@m\f@series mm\series@drop@one@m}% + \expandafter\series@maybe@drop@one@m\expandafter{\f@series}\f@series +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\series@maybe@drop@one@m} +% If the series value is in NFSS notation then it should not +% contain any ``m'' unless it is just an ``m'' by it own. So we +% need to drop surplus ``m''s. But we better don't do this for full +% names, such as ``\texttt{semibold}'' as used by +% \texttt{autoinst}, for example. So we test against the possible +% explicit values that should drop an ``m''. +% After that we assign the result to \verb=#2= for further use. +% \changes{v1.0d}{2020/02/27}{Drop ``m'' in certain values from a +% fixed list (gh/293)} +% \begin{macrocode} +\def\series@maybe@drop@one@m#1#2{% +% \end{macrocode} +% The code below is an inline version of the \cs{in@} macro without +% the group, so that it works in \cs{accent}. +% \begin{macrocode} + \def\in@@##1,#1,{}% + \series@check@toks\expandafter{\in@@ + ,ulm,elm,lm,slm,mm,sbm,bm,ebm,ubm,muc,mec,mc,msc,msx,mx,mex,mux,{}{},#1,}% + \edef\in@@{\the\series@check@toks}% + \ifx\in@@\@empty + \def#2{#1}% + \else + \edef#2{\expandafter\series@drop@one@m #1m\series@drop@one@m}% + \fi } % \end{macrocode} +% As a precaution we use a private toks register not \cs{toks@} as +% that is no longer hidden inside the group. +% \begin{macrocode} +\newtoks\series@check@toks +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\series@drop@one@m} % Drop up to two \texttt{m}s but keep one if that makes the series -% value empty. +% value empty. Actually, with the current implementation we know +% that there is at least one in the series value istelf and we +% added one after it, so all we have to do is now returning +% \verb=#1#2= and dropping the rest. % \begin{macrocode} \def\series@drop@one@m#1m#2m#3\series@drop@one@m{% - \ifx\relax#1#2\relax m\else#1#2\fi +% \ifx\relax#1#2\relax m\else#1#2\fi + #1#2% } % \end{macrocode} % \end{macro} -% \end{macro} @@ -1215,6 +1256,7 @@ %<latexrelease>\let\@font@shape@subst@warning\@undefined %<latexrelease>\let\maybe@load@fontshape\@undefined %<latexrelease>\let\set@target@series\@undefined +%<latexrelease>\let\series@maybe@drop@one@m\@undefined %<latexrelease>\let\series@drop@one@m\@undefined %<latexrelease>\let\DeclareFontShapeChangeRule\@undefined %<latexrelease>\let\merge@font@shape\@undefined diff --git a/Master/texmf-dist/source/latex/base/ltfssbas.dtx b/Master/texmf-dist/source/latex/base/ltfssbas.dtx index fedfcb68ec8..f51d742d466 100644 --- a/Master/texmf-dist/source/latex/base/ltfssbas.dtx +++ b/Master/texmf-dist/source/latex/base/ltfssbas.dtx @@ -35,7 +35,7 @@ % % \ProvidesFile{ltfssbas.dtx} - [2020/02/24 v3.2f LaTeX Kernel (NFSS Basic Macros)] + [2020/02/27 v3.2g LaTeX Kernel (NFSS Basic Macros)] % \iffalse \documentclass{ltxdoc} \begin{document} @@ -266,18 +266,38 @@ \expandafter\ifx\csname #1+#2\endcsname\relax \@latex@error{Font family `#1+#2' unknown}\@eha \else - \expandafter - \xdef\csname#1/#2/% % \end{macrocode} % If the series value is incorrectly specified with an extra ``m'', % e.g., ``mc'' instead of just ``c'', drop the surplus ``m'' but -% keep the ``m'' if it is by its own. -% \changes{v3.2f}{2020/12/24}{Drop surplus ``m'' in series when +% keep the ``m'' if it is by its own. In that case also issue a +% warning that the declaration needs correction. +% \changes{v3.2f}{2020/02/24}{Drop surplus ``m'' in series when % defining fontshape (gh/289)} +% \changes{v3.2g}{2020/02/27}{Only ``m'' if the series value is a member +% of a fixed list and issue warning if doing it (gh/293)} +% +% For this we compare the given value \verb=#3= with one where we +% may have dropped an ``m''. If nothing has changes, +% fine. Otherwise there was a wrong value which is now corrected in +% \cs{reservedb} so we use that and also issue a warning. +% \begin{macrocode} + \edef\reserved@a{#3}% + \expandafter\series@maybe@drop@one@m\expandafter{#3}\reserved@b + \ifx\reserved@a\reserved@b\else + \@latex@warning{Font shape declaration has incorrect series + value `#3'.\MessageBreak It should not contain an `m'! + Please correct it.\MessageBreak Found}% + \fi + \expandafter + \xdef\csname#1/#2/\reserved@b/#4\endcsname + {\expandafter\noexpand\csname #5\endcsname}% +% +% \end{macrocode} +% Most of the time \verb=#6= is empty so using \cs{let} to +% \cs{@empty} saves on space compared to using \cs{def}. That's +% really one of the old space saving techniques and probably not +% necessary these days. % \begin{macrocode} - \expandafter\series@drop@one@m #3mm\series@drop@one@m/% - #4\endcsname{\expandafter\noexpand - \csname #5\endcsname}% \def\reserved@a{#6}% \global \expandafter\let\csname#5\expandafter\endcsname diff --git a/Master/texmf-dist/source/latex/base/ltvers.dtx b/Master/texmf-dist/source/latex/base/ltvers.dtx index b38dee39c89..f13a6ae6851 100644 --- a/Master/texmf-dist/source/latex/base/ltvers.dtx +++ b/Master/texmf-dist/source/latex/base/ltvers.dtx @@ -115,7 +115,7 @@ {2020-02-02} %</2ekernel|latexrelease> %<*2ekernel> -\def\patch@level{4} +\def\patch@level{5} % \end{macrocode} % % \begin{macro}{\development@branch@name} |