texlive[53974] Master/texmf-dist: emergency update: platex 2020-02-29

commits+hironobu at tug.org commits+hironobu at tug.org
Sat Feb 29 09:57:21 CET 2020


Revision: 53974
          http://tug.org/svn/texlive?view=revision&revision=53974
Author:   hironobu
Date:     2020-02-29 09:57:21 +0100 (Sat, 29 Feb 2020)
Log Message:
-----------
emergency update: platex 2020-02-29 containing pLaTeX2e <2020-02-02>+3
Karl -- please refer to mail 'Refrain from major release of LaTeX2e around TL freeze'

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/platex/base/README.md
    trunk/Master/texmf-dist/doc/platex/base/pldoc.pdf
    trunk/Master/texmf-dist/source/platex/base/plfonts.dtx
    trunk/Master/texmf-dist/source/platex/base/plvers.dtx
    trunk/Master/texmf-dist/tex/platex/base/platexrelease.sty
    trunk/Master/texmf-dist/tex/platex/base/plcore.ltx

Modified: trunk/Master/texmf-dist/doc/platex/base/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/platex/base/README.md	2020-02-29 05:03:37 UTC (rev 53973)
+++ trunk/Master/texmf-dist/doc/platex/base/README.md	2020-02-29 08:57:21 UTC (rev 53974)
@@ -64,6 +64,6 @@
 
 ## Release Date
 
-2020-02-09
+2020-02-29
 
 Japanese TeX Development Community

Modified: trunk/Master/texmf-dist/doc/platex/base/pldoc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/platex/base/plfonts.dtx
===================================================================
--- trunk/Master/texmf-dist/source/platex/base/plfonts.dtx	2020-02-29 05:03:37 UTC (rev 53973)
+++ trunk/Master/texmf-dist/source/platex/base/plfonts.dtx	2020-02-29 08:57:21 UTC (rev 53974)
@@ -130,6 +130,21 @@
 % \changes{v1.6w}{2020/02/03}{$B4,$-La$7$N%P%0=$@5(B}
 % \changes{v1.6x}{2020/02/05}{$B0l;~%3%^%s%I$NL>A0$rE}0l(B
 %    (sync with ltfssaxes.dtx 2020/02/05 v1.0b and ltfssini.dtx 2020/02/05 v3.1g)}
+% \changes{v1.6y}{2020/02/24}{Switch \cs{if at forced@series} added
+%    (sync with ltfssaxes.dtx 2020/02/18 v1.0c)}
+% \changes{v1.6y}{2020/02/24}{Make the \cs{ifx} selection outside of
+%    \cs{fontseries} argument so that it is not done several times
+%    (sync with ltfssini.dtx 2020/02/18 v3.1i)}
+% \changes{v1.6y}{2020/02/24}{No series auto-update when forced
+%    (sync with ltfssini.dtx 2020/02/18 v3.1i)}
+% \changes{v1.6y}{2020/02/24}{Recognize current family if it is not a
+%    ``meta'' family and auto-update series using \cs{bfdefault}
+%    (sync with ltfssini.dtx 2020/02/18 v3.1i)}
+% \changes{v1.6z}{2020/02/28}{\cs{series at maybe@drop at one@m}$B$NB8:_3NG'(B}
+% \changes{v1.6z}{2020/02/28}{Drop ``m'' only in a specific set of values
+%    (sync with ltfssaxes.dtx 2020/02/27 v1.0d)}
+% \changes{v1.6z}{2020/02/28}{Drop surplus ``m'' from \cs{target at series@value}
+%    (sync with ltfssini.dtx 2020/02/25 v3.1j)}
 % \fi
 %
 % \iffalse
@@ -136,7 +151,7 @@
 %<*driver>
 \NeedsTeXFormat{pLaTeX2e}
 % \fi
-\ProvidesFile{plfonts.dtx}[2020/02/03 v1.6w pLaTeX New Font Selection Scheme]
+\ProvidesFile{plfonts.dtx}[2020/02/28 v1.6z pLaTeX New Font Selection Scheme]
 % \iffalse
 \documentclass{jltxdoc}
 \GetFileInfo{plfonts.dtx}
@@ -1913,6 +1928,31 @@
 % \end{macro}
 %
 %
+% \begin{macro}{\series at maybe@drop at one@m}
+% $BK\2H(B\LaTeXe~2020-02-02 patch level~5$B$GDI2C$5$l$?L?Na$G$9!#(B
+% \NFSS{}$B$,BgI}$K=$@5!&3HD%$5$l$?(B\LaTeXe~2020-02-02$B$N$&$A!"(B
+% patch level~2$B$K$O(B |latex3/latex2e#277| $B$N%P%0$,$"$j!"(B
+% ^^A    $B"*BP:v$H$7$F(B \if at forced@series $B$,DI2C$5$l$?(B
+% patch level~4$B$K$O(B |latex3/latex2e#293| $B$N%P%0$,$"$C$?$?$a!"(B
+% ^^A    $B"*BP:v$H$7$F(B \series at maybe@drop at one@m $B$,DI2C$5$l$?(B
+% $B0BDj$7$?(B\LaTeXe{}$B$N$_$r%5%]!<%H$7$^$9!#(B
+% \changes{v1.6z}{2020/02/28}{\cs{series at maybe@drop at one@m}$B$NB8:_3NG'(B}
+%    \begin{macrocode}
+%<*plcore|platexrelease>
+\ifx\fontseriesforce\@undefined      % old
+\else                                % 2020-02-02
+  \ifx\series at maybe@drop at one@m\@undefined % patch level 0--4
+    \@latex at error
+      {Please update LaTeX2e!^^J\space\space
+       At least LaTeX2e 2020-02-02 patch level 5 is required}
+      {LaTeX2e 2020-02-02 patch level 2 and 4 has a bug.}
+%<plcore>    \@@end
+  \fi
+\fi
+%</plcore|platexrelease>
+%    \end{macrocode}
+% \end{macro}
+%
 % \begin{macro}{\romanseries}
 % \begin{macro}{\kanjiseries}
 % \begin{macro}{\fontseries}
@@ -1929,8 +1969,8 @@
 \DeclareRobustCommand\kanjiseries[1]{\edef\k at series{#1}}
 \DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
 \else                            % 2020-02-02
-\DeclareRobustCommand\romanseries[1]{\merge at font@series{#1}}
-\DeclareRobustCommand\kanjiseries[1]{\merge at kanji@series{#1}}
+\DeclareRobustCommand\romanseries[1]{\@forced at seriesfalse\merge at font@series{#1}}
+\DeclareRobustCommand\kanjiseries[1]{\@forced at seriesfalse\merge at kanji@series{#1}}
 \DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
 \fi
 %    \end{macrocode}
@@ -1944,13 +1984,15 @@
 % $BL5>r7o$K%7%j!<%:$rJQ99$7$^$9!#(B
 % \changes{v1.6v}{2020/02/01}{New commands \cs{fontseriesforce} etc.
 %    (sync with ltfssaxes.dtx 2019/12/16 v1.0a)}
+% \changes{v1.6y}{2020/02/24}{Switch \cs{if at forced@series} added
+%    (sync with ltfssaxes.dtx 2020/02/18 v1.0c)}
 %    \begin{macrocode}
 \ifx\fontseriesforce\@undefined  % old
 \let\romanseriesforce\@undefined
 \let\kanjiseriesforce\@undefined
 \else                            % 2020-02-02
-\DeclareRobustCommand\romanseriesforce[1]{\edef\f at series{#1}}
-\DeclareRobustCommand\kanjiseriesforce[1]{\edef\k at series{#1}}
+\DeclareRobustCommand\romanseriesforce[1]{\@forced at seriestrue\edef\f at series{#1}}
+\DeclareRobustCommand\kanjiseriesforce[1]{\@forced at seriestrue\edef\k at series{#1}}
 \DeclareRobustCommand\fontseriesforce[1]{\kanjiseriesforce{#1}\romanseriesforce{#1}}
 \fi
 %    \end{macrocode}
@@ -1962,6 +2004,8 @@
 % \begin{macro}{\merge at kanji@series@}
 % \begin{macro}{\set at target@series at kanji}
 % \cs{merge at font@series}$B$NOBJ8HG$G$9!#(B
+% \changes{v1.6z}{2020/02/28}{Drop ``m'' only in a specific set of values
+%    (sync with ltfssaxes.dtx 2020/02/27 v1.0d)}
 %    \begin{macrocode}
 \ifx\fontseriesforce\@undefined  % old
 \let\merge at kanji@series\@undefined
@@ -1998,7 +2042,7 @@
 }
 \def\set at target@series at kanji#1{%
     \edef\k at series{#1}%
-    \edef\k at series{\expandafter\series at drop@one at m\k at series mm\series at drop@one at m}%
+    \expandafter\series at maybe@drop at one@m\expandafter{\k at series}\k at series
 }
 \fi
 %    \end{macrocode}
@@ -2276,27 +2320,28 @@
 % \begin{macro}{\bfseries}
 % \begin{macro}{\mdseries}
 % $B%U%!%_%j$4$H$N at _DjCM$r;2>H$7$^$9!#(B
+% \changes{v1.6y}{2020/02/24}{Make the \cs{ifx} selection outside of
+%    \cs{fontseries} argument so that it is not done several times
+%    (sync with ltfssini.dtx 2020/02/18 v3.1i)}
 %    \begin{macrocode}
 \ifx\bfseries at rm\@undefined\else  % 2020-02-02
 \DeclareRobustCommand\bfseries{%
   \not at math@alphabet\bfseries\mathbf
   \expand at font@defaults
-  \romanseries{% changed \fontseries -> \romanseries
-    \ifx\f at family\rmdef at ult      \bfseries at rm
-    \else\ifx\f at family\sfdef at ult \bfseries at sf
-    \else\ifx\f at family\ttdef at ult \bfseries at tt
-    \else                        \bfdefault
+  % changed \fontseries -> \romanseries
+    \ifx\f at family\rmdef at ult      \romanseries\bfseries at rm
+    \else\ifx\f at family\sfdef at ult \romanseries\bfseries at sf
+    \else\ifx\f at family\ttdef at ult \romanseries\bfseries at tt
+    \else                        \romanseries\bfdefault
     \fi\fi\fi
-  }%
 %    \end{macrocode}
 % $B$3$3$+$i$,(Bp\LaTeX{}$B$K$h$kDI2C%3!<%I$G$9!#(B
 %    \begin{macrocode}
-  \kanjiseries{%
-    \ifx\k at family\mcdef at ult      \bfseries at mc
-    \else\ifx\k at family\gtdef at ult \bfseries at gt
-    \else                        \bfdefault
+  % changed \fontseries -> \kanjiseries
+    \ifx\k at family\mcdef at ult      \kanjiseries\bfseries at mc
+    \else\ifx\k at family\gtdef at ult \kanjiseries\bfseries at gt
+    \else                        \kanjiseries\bfdefault
     \fi\fi
-  }%
 %    \end{macrocode}
 % $B$3$3$^$G!#(B
 %    \begin{macrocode}
@@ -2305,22 +2350,20 @@
 \DeclareRobustCommand\mdseries{%
   \not at math@alphabet\mdseries\relax
   \expand at font@defaults
-  \romanseries{% changed \fontseries -> \romanseries
-    \ifx\f at family\rmdef at ult      \mdseries at rm
-    \else\ifx\f at family\sfdef at ult \mdseries at sf
-    \else\ifx\f at family\ttdef at ult \mdseries at tt
-    \else                        \mddefault
+  % changed \fontseries -> \romanseries
+    \ifx\f at family\rmdef at ult      \romanseries\mdseries at rm
+    \else\ifx\f at family\sfdef at ult \romanseries\mdseries at sf
+    \else\ifx\f at family\ttdef at ult \romanseries\mdseries at tt
+    \else                        \romanseries\mddefault
     \fi\fi\fi
-  }%
 %    \end{macrocode}
 % $B$3$3$+$i$,(Bp\LaTeX{}$B$K$h$kDI2C%3!<%I$G$9!#(B
 %    \begin{macrocode}
-  \kanjiseries{%
-    \ifx\k at family\mcdef at ult      \mdseries at mc
-    \else\ifx\k at family\gtdef at ult \mdseries at gt
-    \else                        \mddefault
+  % changed \fontseries -> \kanjiseries
+    \ifx\k at family\mcdef at ult      \kanjiseries\mdseries at mc
+    \else\ifx\k at family\gtdef at ult \kanjiseries\mdseries at gt
+    \else                        \kanjiseries\mddefault
     \fi\fi
-  }%
 %    \end{macrocode}
 % $B$3$3$^$G!#(B
 %    \begin{macrocode}
@@ -2335,39 +2378,79 @@
 % \begin{macro}{\@meta at family@list at kanji}
 % \begin{macro}{\update at series@target at value@kanji}
 % |\prepare at family@series at update|$B$NOBJ8HG$G$9!#(B
+% \changes{v1.6y}{2020/02/24}{No series auto-update when forced
+%    (sync with ltfssini.dtx 2020/02/18 v3.1i)}
+% \changes{v1.6y}{2020/02/24}{Recognize current family if it is not a
+%    ``meta'' family and auto-update series using \cs{bfdefault}
+%    (sync with ltfssini.dtx 2020/02/18 v3.1i)}
+% \changes{v1.6z}{2020/02/28}{Drop surplus ``m'' from \cs{target at series@value}
+%    (sync with ltfssini.dtx 2020/02/25 v3.1j)}
 %    \begin{macrocode}
 \ifx\prepare at family@series at update\@undefined  % old
 \let\prepare at family@series at update@kanji\@undefined
 \let\@meta at family@list at kanji\@undefined
+\let\update at series@target at value@kanji\@undefined
 \else                                         % 2020-02-02
 \def\prepare at family@series at update#1#2{%
+ \if at forced@series
+%<+debug> \series at change@debug{No series preparation (forced \f at series)\on at line}%
+   \romanfamily#2%   % changed \fontfamily -> \romanfamily
+ \else
+%<+debug> \series at change@debug{Prepearing for switching to #1 (#2)\on at line}%
    \expand at font@defaults
    \let\target at series@value\@empty
    \def\target at meta@family at value{#1}%
+   \expandafter\edef\csname ??def at ult\endcsname{\f at family}%
    \let\@elt\update at series@target at value
       \@meta at family@list
+      \@elt{??}%
    \let\@elt\relax
    \romanfamily#2%   % changed \fontfamily -> \romanfamily
    \ifx\target at series@value\@empty
+%<+debug> \series at change@debug{Target series still empty ...}%
    \else
-     \maybe at load@fontshape
-     \let\f at series\target at series@value
+     \ifx \f at series\target at series@value
+%<+debug> \series at change@debug{Target series unchanged:
+%<+debug>                      \f at series \space = \target at series@value}%
+     \else
+       \maybe at load@fontshape
+%<+debug> \series at change@debug{Target series:
+%<+debug>                      \f at series \space -> \target at series@value}%
+       \let\f at series\target at series@value
+     \fi
    \fi
+ \fi
 }
 \def\prepare at family@series at update@kanji#1#2{%
+ \if at forced@series
+%<+debug> \series at change@debug{No series preparation (forced \k at series)\on at line}%
+   \kanjifamily#2%
+ \else
+%<+debug> \series at change@debug{Prepearing for switching to #1 (#2)\on at line}%
    \expand at font@defaults
    \let\target at series@value\@empty
    \def\target at meta@family at value{#1}%
+   \expandafter\edef\csname ??def at ult\endcsname{\k at family}%
    \let\@elt\update at series@target at value@kanji
       \@meta at family@list at kanji
+      \@elt{??}%
    \let\@elt\relax
    \kanjifamily#2%
    \ifx\target at series@value\@empty
+%<+debug> \series at change@debug{Target series still empty ...}%
    \else
-     \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
-       \maybe at load@fontshape\endgroup
-     \let\k at series\target at series@value
+     \ifx \k at series\target at series@value
+%<+debug> \series at change@debug{Target series unchanged:
+%<+debug>                      \k at series \space = \target at series@value}%
+     \else
+       \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
+         \maybe at load@fontshape\endgroup
+%<+debug> \series at change@debug{Target series:
+%<+debug>                      \k at series \space -> \target at series@value}%
+       \let\k at series\target at series@value
+     \fi
    \fi
+ \fi
 }
 \def\@meta at family@list at kanji{\@elt{mc}\@elt{gt}}
 \def\update at series@target at value@kanji#1{%
@@ -2374,18 +2457,26 @@
   \def\reserved at a{#1}%
   \ifx\target at meta@family at value\reserved at a   % rm -> rm do nothing
   \else
+%<+debug> \series at change@debug{Trying to match #1: \csname#1def at ult\endcsname
+%<+debug>                      \space = \k at family\space ?}%
     \expandafter\ifx\csname#1def at ult\endcsname\k at family
       \let\@elt\@gobble
-      \expandafter\let\expandafter\@reservedb
+      \expandafter\let\expandafter\reserved at b
                       \csname mdseries@\target at meta@family at value\endcsname
-      \expandafter\let\expandafter\@reservedc
+      \expandafter\let\expandafter\reserved at c
                       \csname bfseries@\target at meta@family at value\endcsname
+%<+debug>\series at change@debug{Targets for mdseries and bfseries:
+%<+debug>                     \reserved at b\space and \reserved at c}%
       \expandafter\ifx\csname mdseries@#1\endcsname\k at series
-                                      \let\target at series@value\@reservedb
+%<+debug>   \series at change@debug{mdseries@#1 matched -> \reserved at b}%
+                                      \let\target at series@value\reserved at b
       \else\expandafter\ifx\csname bfseries@#1\endcsname\k at series
-                                      \let\target at series@value\@reservedc
-      \else\ifx\k at series\mddef at ult    \let\target at series@value\@reservedb
-      \else\ifx\k at series\bfdef at ult    \let\target at series@value\@reservedc
+%<+debug>  \series at change@debug{bfseries@#1 matched -> \reserved at c}%
+                                      \let\target at series@value\reserved at c
+      \else\ifx\k at series\mddef at ult    \let\target at series@value\reserved at b
+%<+debug>  \series at change@debug{mddef at ult matched -> \reserved at b}%
+      \else\ifx\k at series\bfdef at ult    \let\target at series@value\reserved at c
+%<+debug>  \series at change@debug{bfdef at ult matched -> \reserved at c}%
       \fi\fi\fi\fi
     \fi
   \fi

Modified: trunk/Master/texmf-dist/source/platex/base/plvers.dtx
===================================================================
--- trunk/Master/texmf-dist/source/platex/base/plvers.dtx	2020-02-29 05:03:37 UTC (rev 53973)
+++ trunk/Master/texmf-dist/source/platex/base/plvers.dtx	2020-02-29 08:57:21 UTC (rev 53974)
@@ -195,7 +195,7 @@
    {2020-02-02}
 %</plcore|platexrelease>
 %<*plcore>
-\def\ppatch at level{2}
+\def\ppatch at level{3}
 %</plcore>
 %    \end{macrocode}
 % \end{macro}

Modified: trunk/Master/texmf-dist/tex/platex/base/platexrelease.sty
===================================================================
--- trunk/Master/texmf-dist/tex/platex/base/platexrelease.sty	2020-02-29 05:03:37 UTC (rev 53973)
+++ trunk/Master/texmf-dist/tex/platex/base/platexrelease.sty	2020-02-29 08:57:21 UTC (rev 53974)
@@ -487,13 +487,22 @@
   \fi}
 \expandafter \let \csname adjustbaseline \endcsname \@undefined
 \plEndIncludeInRelease
+\ifx\fontseriesforce\@undefined      % old
+\else                                % 2020-02-02
+  \ifx\series at maybe@drop at one@m\@undefined % patch level 0--4
+    \@latex at error
+      {Please update LaTeX2e!^^J\space\space
+       At least LaTeX2e 2020-02-02 patch level 5 is required}
+      {LaTeX2e 2020-02-02 patch level 2 and 4 has a bug.}
+  \fi
+\fi
 \ifx\fontseriesforce\@undefined  % old
 \DeclareRobustCommand\romanseries[1]{\edef\f at series{#1}}
 \DeclareRobustCommand\kanjiseries[1]{\edef\k at series{#1}}
 \DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
 \else                            % 2020-02-02
-\DeclareRobustCommand\romanseries[1]{\merge at font@series{#1}}
-\DeclareRobustCommand\kanjiseries[1]{\merge at kanji@series{#1}}
+\DeclareRobustCommand\romanseries[1]{\@forced at seriesfalse\merge at font@series{#1}}
+\DeclareRobustCommand\kanjiseries[1]{\@forced at seriesfalse\merge at kanji@series{#1}}
 \DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
 \fi
 \ifx\fontseriesforce\@undefined  % old
@@ -500,8 +509,8 @@
 \let\romanseriesforce\@undefined
 \let\kanjiseriesforce\@undefined
 \else                            % 2020-02-02
-\DeclareRobustCommand\romanseriesforce[1]{\edef\f at series{#1}}
-\DeclareRobustCommand\kanjiseriesforce[1]{\edef\k at series{#1}}
+\DeclareRobustCommand\romanseriesforce[1]{\@forced at seriestrue\edef\f at series{#1}}
+\DeclareRobustCommand\kanjiseriesforce[1]{\@forced at seriestrue\edef\k at series{#1}}
 \DeclareRobustCommand\fontseriesforce[1]{\kanjiseriesforce{#1}\romanseriesforce{#1}}
 \fi
 \ifx\fontseriesforce\@undefined  % old
@@ -539,7 +548,7 @@
 }
 \def\set at target@series at kanji#1{%
     \edef\k at series{#1}%
-    \edef\k at series{\expandafter\series at drop@one at m\k at series mm\series at drop@one at m}%
+    \expandafter\series at maybe@drop at one@m\expandafter{\k at series}\k at series
 }
 \fi
 \ifx\fontshapeforce\@undefined   % old
@@ -699,37 +708,33 @@
 \DeclareRobustCommand\bfseries{%
   \not at math@alphabet\bfseries\mathbf
   \expand at font@defaults
-  \romanseries{% changed \fontseries -> \romanseries
-    \ifx\f at family\rmdef at ult      \bfseries at rm
-    \else\ifx\f at family\sfdef at ult \bfseries at sf
-    \else\ifx\f at family\ttdef at ult \bfseries at tt
-    \else                        \bfdefault
+  % changed \fontseries -> \romanseries
+    \ifx\f at family\rmdef at ult      \romanseries\bfseries at rm
+    \else\ifx\f at family\sfdef at ult \romanseries\bfseries at sf
+    \else\ifx\f at family\ttdef at ult \romanseries\bfseries at tt
+    \else                        \romanseries\bfdefault
     \fi\fi\fi
-  }%
-  \kanjiseries{%
-    \ifx\k at family\mcdef at ult      \bfseries at mc
-    \else\ifx\k at family\gtdef at ult \bfseries at gt
-    \else                        \bfdefault
+  % changed \fontseries -> \kanjiseries
+    \ifx\k at family\mcdef at ult      \kanjiseries\bfseries at mc
+    \else\ifx\k at family\gtdef at ult \kanjiseries\bfseries at gt
+    \else                        \kanjiseries\bfdefault
     \fi\fi
-  }%
  \selectfont
 }
 \DeclareRobustCommand\mdseries{%
   \not at math@alphabet\mdseries\relax
   \expand at font@defaults
-  \romanseries{% changed \fontseries -> \romanseries
-    \ifx\f at family\rmdef at ult      \mdseries at rm
-    \else\ifx\f at family\sfdef at ult \mdseries at sf
-    \else\ifx\f at family\ttdef at ult \mdseries at tt
-    \else                        \mddefault
+  % changed \fontseries -> \romanseries
+    \ifx\f at family\rmdef at ult      \romanseries\mdseries at rm
+    \else\ifx\f at family\sfdef at ult \romanseries\mdseries at sf
+    \else\ifx\f at family\ttdef at ult \romanseries\mdseries at tt
+    \else                        \romanseries\mddefault
     \fi\fi\fi
-  }%
-  \kanjiseries{%
-    \ifx\k at family\mcdef at ult      \mdseries at mc
-    \else\ifx\k at family\gtdef at ult \mdseries at gt
-    \else                        \mddefault
+  % changed \fontseries -> \kanjiseries
+    \ifx\k at family\mcdef at ult      \kanjiseries\mdseries at mc
+    \else\ifx\k at family\gtdef at ult \kanjiseries\mdseries at gt
+    \else                        \kanjiseries\mddefault
     \fi\fi
-  }%
   \selectfont
 }
 \fi
@@ -736,35 +741,54 @@
 \ifx\prepare at family@series at update\@undefined  % old
 \let\prepare at family@series at update@kanji\@undefined
 \let\@meta at family@list at kanji\@undefined
+\let\update at series@target at value@kanji\@undefined
 \else                                         % 2020-02-02
 \def\prepare at family@series at update#1#2{%
+ \if at forced@series
+   \romanfamily#2%   % changed \fontfamily -> \romanfamily
+ \else
    \expand at font@defaults
    \let\target at series@value\@empty
    \def\target at meta@family at value{#1}%
+   \expandafter\edef\csname ??def at ult\endcsname{\f at family}%
    \let\@elt\update at series@target at value
       \@meta at family@list
+      \@elt{??}%
    \let\@elt\relax
    \romanfamily#2%   % changed \fontfamily -> \romanfamily
    \ifx\target at series@value\@empty
    \else
-     \maybe at load@fontshape
-     \let\f at series\target at series@value
+     \ifx \f at series\target at series@value
+     \else
+       \maybe at load@fontshape
+       \let\f at series\target at series@value
+     \fi
    \fi
+ \fi
 }
 \def\prepare at family@series at update@kanji#1#2{%
+ \if at forced@series
+   \kanjifamily#2%
+ \else
    \expand at font@defaults
    \let\target at series@value\@empty
    \def\target at meta@family at value{#1}%
+   \expandafter\edef\csname ??def at ult\endcsname{\k at family}%
    \let\@elt\update at series@target at value@kanji
       \@meta at family@list at kanji
+      \@elt{??}%
    \let\@elt\relax
    \kanjifamily#2%
    \ifx\target at series@value\@empty
    \else
-     \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
-       \maybe at load@fontshape\endgroup
-     \let\k at series\target at series@value
+     \ifx \k at series\target at series@value
+     \else
+       \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
+         \maybe at load@fontshape\endgroup
+       \let\k at series\target at series@value
+     \fi
    \fi
+ \fi
 }
 \def\@meta at family@list at kanji{\@elt{mc}\@elt{gt}}
 \def\update at series@target at value@kanji#1{%
@@ -773,16 +797,16 @@
   \else
     \expandafter\ifx\csname#1def at ult\endcsname\k at family
       \let\@elt\@gobble
-      \expandafter\let\expandafter\@reservedb
+      \expandafter\let\expandafter\reserved at b
                       \csname mdseries@\target at meta@family at value\endcsname
-      \expandafter\let\expandafter\@reservedc
+      \expandafter\let\expandafter\reserved at c
                       \csname bfseries@\target at meta@family at value\endcsname
       \expandafter\ifx\csname mdseries@#1\endcsname\k at series
-                                      \let\target at series@value\@reservedb
+                                      \let\target at series@value\reserved at b
       \else\expandafter\ifx\csname bfseries@#1\endcsname\k at series
-                                      \let\target at series@value\@reservedc
-      \else\ifx\k at series\mddef at ult    \let\target at series@value\@reservedb
-      \else\ifx\k at series\bfdef at ult    \let\target at series@value\@reservedc
+                                      \let\target at series@value\reserved at c
+      \else\ifx\k at series\mddef at ult    \let\target at series@value\reserved at b
+      \else\ifx\k at series\bfdef at ult    \let\target at series@value\reserved at c
       \fi\fi\fi\fi
     \fi
   \fi

Modified: trunk/Master/texmf-dist/tex/platex/base/plcore.ltx
===================================================================
--- trunk/Master/texmf-dist/tex/platex/base/plcore.ltx	2020-02-29 05:03:37 UTC (rev 53973)
+++ trunk/Master/texmf-dist/tex/platex/base/plcore.ltx	2020-02-29 08:57:21 UTC (rev 53974)
@@ -34,7 +34,7 @@
 \def\pfmtname{pLaTeX2e}
 \def\pfmtversion
    {2020-02-02}
-\def\ppatch at level{2}
+\def\ppatch at level{3}
 \edef\platexBANNER{\noexpand\platexNILa
                    \the\everyjob % LaTeX banner and delayed codes
                    \noexpand\platexNILb}
@@ -676,13 +676,23 @@
   \if at notkfam\if at notffam
       \edef\k at family{#1}\edef\f at family{#1}%
   \fi\fi}
+\ifx\fontseriesforce\@undefined      % old
+\else                                % 2020-02-02
+  \ifx\series at maybe@drop at one@m\@undefined % patch level 0--4
+    \@latex at error
+      {Please update LaTeX2e!^^J\space\space
+       At least LaTeX2e 2020-02-02 patch level 5 is required}
+      {LaTeX2e 2020-02-02 patch level 2 and 4 has a bug.}
+    \@@end
+  \fi
+\fi
 \ifx\fontseriesforce\@undefined  % old
 \DeclareRobustCommand\romanseries[1]{\edef\f at series{#1}}
 \DeclareRobustCommand\kanjiseries[1]{\edef\k at series{#1}}
 \DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
 \else                            % 2020-02-02
-\DeclareRobustCommand\romanseries[1]{\merge at font@series{#1}}
-\DeclareRobustCommand\kanjiseries[1]{\merge at kanji@series{#1}}
+\DeclareRobustCommand\romanseries[1]{\@forced at seriesfalse\merge at font@series{#1}}
+\DeclareRobustCommand\kanjiseries[1]{\@forced at seriesfalse\merge at kanji@series{#1}}
 \DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
 \fi
 \ifx\fontseriesforce\@undefined  % old
@@ -689,8 +699,8 @@
 \let\romanseriesforce\@undefined
 \let\kanjiseriesforce\@undefined
 \else                            % 2020-02-02
-\DeclareRobustCommand\romanseriesforce[1]{\edef\f at series{#1}}
-\DeclareRobustCommand\kanjiseriesforce[1]{\edef\k at series{#1}}
+\DeclareRobustCommand\romanseriesforce[1]{\@forced at seriestrue\edef\f at series{#1}}
+\DeclareRobustCommand\kanjiseriesforce[1]{\@forced at seriestrue\edef\k at series{#1}}
 \DeclareRobustCommand\fontseriesforce[1]{\kanjiseriesforce{#1}\romanseriesforce{#1}}
 \fi
 \ifx\fontseriesforce\@undefined  % old
@@ -728,7 +738,7 @@
 }
 \def\set at target@series at kanji#1{%
     \edef\k at series{#1}%
-    \edef\k at series{\expandafter\series at drop@one at m\k at series mm\series at drop@one at m}%
+    \expandafter\series at maybe@drop at one@m\expandafter{\k at series}\k at series
 }
 \fi
 \ifx\fontshapeforce\@undefined   % old
@@ -832,37 +842,33 @@
 \DeclareRobustCommand\bfseries{%
   \not at math@alphabet\bfseries\mathbf
   \expand at font@defaults
-  \romanseries{% changed \fontseries -> \romanseries
-    \ifx\f at family\rmdef at ult      \bfseries at rm
-    \else\ifx\f at family\sfdef at ult \bfseries at sf
-    \else\ifx\f at family\ttdef at ult \bfseries at tt
-    \else                        \bfdefault
+  % changed \fontseries -> \romanseries
+    \ifx\f at family\rmdef at ult      \romanseries\bfseries at rm
+    \else\ifx\f at family\sfdef at ult \romanseries\bfseries at sf
+    \else\ifx\f at family\ttdef at ult \romanseries\bfseries at tt
+    \else                        \romanseries\bfdefault
     \fi\fi\fi
-  }%
-  \kanjiseries{%
-    \ifx\k at family\mcdef at ult      \bfseries at mc
-    \else\ifx\k at family\gtdef at ult \bfseries at gt
-    \else                        \bfdefault
+  % changed \fontseries -> \kanjiseries
+    \ifx\k at family\mcdef at ult      \kanjiseries\bfseries at mc
+    \else\ifx\k at family\gtdef at ult \kanjiseries\bfseries at gt
+    \else                        \kanjiseries\bfdefault
     \fi\fi
-  }%
  \selectfont
 }
 \DeclareRobustCommand\mdseries{%
   \not at math@alphabet\mdseries\relax
   \expand at font@defaults
-  \romanseries{% changed \fontseries -> \romanseries
-    \ifx\f at family\rmdef at ult      \mdseries at rm
-    \else\ifx\f at family\sfdef at ult \mdseries at sf
-    \else\ifx\f at family\ttdef at ult \mdseries at tt
-    \else                        \mddefault
+  % changed \fontseries -> \romanseries
+    \ifx\f at family\rmdef at ult      \romanseries\mdseries at rm
+    \else\ifx\f at family\sfdef at ult \romanseries\mdseries at sf
+    \else\ifx\f at family\ttdef at ult \romanseries\mdseries at tt
+    \else                        \romanseries\mddefault
     \fi\fi\fi
-  }%
-  \kanjiseries{%
-    \ifx\k at family\mcdef at ult      \mdseries at mc
-    \else\ifx\k at family\gtdef at ult \mdseries at gt
-    \else                        \mddefault
+  % changed \fontseries -> \kanjiseries
+    \ifx\k at family\mcdef at ult      \kanjiseries\mdseries at mc
+    \else\ifx\k at family\gtdef at ult \kanjiseries\mdseries at gt
+    \else                        \kanjiseries\mddefault
     \fi\fi
-  }%
   \selectfont
 }
 \fi
@@ -869,35 +875,54 @@
 \ifx\prepare at family@series at update\@undefined  % old
 \let\prepare at family@series at update@kanji\@undefined
 \let\@meta at family@list at kanji\@undefined
+\let\update at series@target at value@kanji\@undefined
 \else                                         % 2020-02-02
 \def\prepare at family@series at update#1#2{%
+ \if at forced@series
+   \romanfamily#2%   % changed \fontfamily -> \romanfamily
+ \else
    \expand at font@defaults
    \let\target at series@value\@empty
    \def\target at meta@family at value{#1}%
+   \expandafter\edef\csname ??def at ult\endcsname{\f at family}%
    \let\@elt\update at series@target at value
       \@meta at family@list
+      \@elt{??}%
    \let\@elt\relax
    \romanfamily#2%   % changed \fontfamily -> \romanfamily
    \ifx\target at series@value\@empty
    \else
-     \maybe at load@fontshape
-     \let\f at series\target at series@value
+     \ifx \f at series\target at series@value
+     \else
+       \maybe at load@fontshape
+       \let\f at series\target at series@value
+     \fi
    \fi
+ \fi
 }
 \def\prepare at family@series at update@kanji#1#2{%
+ \if at forced@series
+   \kanjifamily#2%
+ \else
    \expand at font@defaults
    \let\target at series@value\@empty
    \def\target at meta@family at value{#1}%
+   \expandafter\edef\csname ??def at ult\endcsname{\k at family}%
    \let\@elt\update at series@target at value@kanji
       \@meta at family@list at kanji
+      \@elt{??}%
    \let\@elt\relax
    \kanjifamily#2%
    \ifx\target at series@value\@empty
    \else
-     \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
-       \maybe at load@fontshape\endgroup
-     \let\k at series\target at series@value
+     \ifx \k at series\target at series@value
+     \else
+       \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
+         \maybe at load@fontshape\endgroup
+       \let\k at series\target at series@value
+     \fi
    \fi
+ \fi
 }
 \def\@meta at family@list at kanji{\@elt{mc}\@elt{gt}}
 \def\update at series@target at value@kanji#1{%
@@ -906,16 +931,16 @@
   \else
     \expandafter\ifx\csname#1def at ult\endcsname\k at family
       \let\@elt\@gobble
-      \expandafter\let\expandafter\@reservedb
+      \expandafter\let\expandafter\reserved at b
                       \csname mdseries@\target at meta@family at value\endcsname
-      \expandafter\let\expandafter\@reservedc
+      \expandafter\let\expandafter\reserved at c
                       \csname bfseries@\target at meta@family at value\endcsname
       \expandafter\ifx\csname mdseries@#1\endcsname\k at series
-                                      \let\target at series@value\@reservedb
+                                      \let\target at series@value\reserved at b
       \else\expandafter\ifx\csname bfseries@#1\endcsname\k at series
-                                      \let\target at series@value\@reservedc
-      \else\ifx\k at series\mddef at ult    \let\target at series@value\@reservedb
-      \else\ifx\k at series\bfdef at ult    \let\target at series@value\@reservedc
+                                      \let\target at series@value\reserved at c
+      \else\ifx\k at series\mddef at ult    \let\target at series@value\reserved at b
+      \else\ifx\k at series\bfdef at ult    \let\target at series@value\reserved at c
       \fi\fi\fi\fi
     \fi
   \fi



More information about the tex-live-commits mailing list.