texlive[57730] Master/texmf-dist: platex (13feb21)

commits+karl at tug.org commits+karl at tug.org
Sat Feb 13 23:17:20 CET 2021


Revision: 57730
          http://tug.org/svn/texlive?view=revision&revision=57730
Author:   karl
Date:     2021-02-13 23:17:20 +0100 (Sat, 13 Feb 2021)
Log Message:
-----------
platex (13feb21)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/platex/base/LICENSE
    trunk/Master/texmf-dist/doc/platex/base/README.md
    trunk/Master/texmf-dist/doc/platex/base/platexrelease.pdf
    trunk/Master/texmf-dist/doc/platex/base/pldoc.pdf
    trunk/Master/texmf-dist/source/platex/base/platexrelease.dtx
    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
    trunk/Master/texmf-dist/tex/platex/base/pldefs.ltx
    trunk/Master/texmf-dist/tex/platex/base/ptrace.sty

Modified: trunk/Master/texmf-dist/doc/platex/base/LICENSE
===================================================================
--- trunk/Master/texmf-dist/doc/platex/base/LICENSE	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/doc/platex/base/LICENSE	2021-02-13 22:17:20 UTC (rev 57730)
@@ -1,5 +1,5 @@
 Copyright (c) 2010 ASCII MEDIA WORKS
-Copyright (c) 2016-2020 Japanese TeX Development Community
+Copyright (c) 2016-2021 Japanese TeX Development Community
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without

Modified: trunk/Master/texmf-dist/doc/platex/base/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/platex/base/README.md	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/doc/platex/base/README.md	2021-02-13 22:17:20 UTC (rev 57730)
@@ -64,6 +64,6 @@
 
 ## Release Date
 
-2020-10-07
+2021-02-13
 
 Japanese TeX Development Community

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

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

Modified: trunk/Master/texmf-dist/source/platex/base/platexrelease.dtx
===================================================================
--- trunk/Master/texmf-dist/source/platex/base/platexrelease.dtx	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/source/platex/base/platexrelease.dtx	2021-02-13 22:17:20 UTC (rev 57730)
@@ -1,7 +1,7 @@
 % \iffalse meta-comment
 %% File: platexrelease.dtx
 %
-%  Copyright (c) 2016-2020 Japanese TeX Development Community
+%  Copyright (c) 2016-2021 Japanese TeX Development Community
 %
 %  This file is part of the pLaTeX2e system (community edition).
 %  -------------------------------------------------------------
@@ -28,10 +28,12 @@
 %      (sync with latexrelease.dtx 2017/12/17 v1.0i)}
 % \changes{v1.0l}{2018/04/06}{Drop an extra period in warning message
 %      (sync with latexrelease.dtx 2018/02/18 v1.0j)}
-% \changes{v1.0m}{2018/05/22}{reset \cs{\requestedLaTeXdate} for
+% \changes{v1.0m}{2018/05/22}{reset \cs{requestedpLaTeXdate} for
 %      current and latest options
 %      (sync with latexrelease.dtx 2018/05/08 v1.0k)}
 % \changes{v1.0n}{2020/03/28}{$B at h$K(Blatexrelease$B$,FI$_9~$^$l$F$$$?$i7Y9p(B}
+% \changes{v1.0o}{2021/02/13}{\cs{sourcepLaTeXdate} added
+%      (sync with latexrelease.dtx 2021/01/23 v1.0l)}
 % \fi
 %
 % \iffalse
@@ -41,7 +43,7 @@
 \ProvidesFile{platexrelease.dtx}
 %</driver>
 %<platexrelease>\ProvidesPackage{platexrelease}
-          [2020/03/28 v1.0n latexrelease support for pLaTeX Kernel
+          [2021/02/13 v1.0o latexrelease support for pLaTeX Kernel
               (including releases up to \platexreleaseversion)]
 %<*driver>
 \documentclass{jltxdoc}
@@ -200,7 +202,7 @@
 % \section{$B%3!<%I(B}
 %
 % \Lpack{platexrelease}$B%Q%C%1!<%8$,FI$_9~$^$l$^$7$?$N$G!"(B
-% $B8zN(2=$N$?$a(B|\begin{document|$B$G$N3NG'%3!<%I$rL58z2=$7$^$9!#(B
+% $B8zN(2=$N$?$a(B|\begin{document}|$B$G$N3NG'%3!<%I$rL58z2=$7$^$9!#(B
 % $B!J(B\file{plvers.dtx}$B$N(B2020/03/28 v1.1u$B0J9_!K!#(B
 %    \begin{macrocode}
 %<*platexrelease>
@@ -233,9 +235,19 @@
 \fi
 %    \end{macrocode}
 %
+% \begin{macro}{\sourcepLaTeXdate}
+% $B85!9$N%U%)!<%^%C%H$NF|IU$rJ]B8$7$^$9!#(B
+% \changes{v1.0o}{2021/02/13}{\cs{sourcepLaTeXdate} added
+%      (sync with latexrelease.dtx 2021/01/23 v1.0l)}
+%    \begin{macrocode}
+\edef\sourcepLaTeXdate{%
+  \expandafter\@parse at version\pfmtversion//00\@nil}
+%    \end{macrocode}
+% \end{macro}
+%
 % \Lpack{platexrelease}$B%Q%C%1!<%8$N%*%W%7%g%s$rDj5A$7$^$9!#%3!<%I$O(B
 % \Lpack{latexrelease}$B$N$b$N$r(Bp\LaTeXe{}$BMQ$K=q$-49$($?$b$N$G$9!#(B
-% \changes{v1.0m}{2018/05/22}{reset \cs{\requestedLaTeXdate} for
+% \changes{v1.0m}{2018/05/22}{reset \cs{requestedpLaTeXdate} for
 %      current and latest options
 %      (sync with latexrelease.dtx 2018/05/08 v1.0k)}
 %    \begin{macrocode}
@@ -339,6 +351,7 @@
       some critical bugs. We advise you to\MessageBreak
       select another format date}
 \plIncludeInRelease{2017/10/28}{\PackageWarning}{pLaTeX Info}%
+  % * <2020-10-01>+2 (prepare for LaTeX2e <2021-05-01>)
   % * <2020-10-01>+1
   % * <2020-10-01>
   % * <2020-04-12>

Modified: trunk/Master/texmf-dist/source/platex/base/plfonts.dtx
===================================================================
--- trunk/Master/texmf-dist/source/platex/base/plfonts.dtx	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/source/platex/base/plfonts.dtx	2021-02-13 22:17:20 UTC (rev 57730)
@@ -3,7 +3,7 @@
 %
 %  Copyright 1994-2006 ASCII Corporation.
 %  Copyright (c) 2010 ASCII MEDIA WORKS
-%  Copyright (c) 2016-2020 Japanese TeX Development Community
+%  Copyright (c) 2016-2021 Japanese TeX Development Community
 %
 %  This file is part of the pLaTeX2e system (community edition).
 %  -------------------------------------------------------------
@@ -167,6 +167,14 @@
 % \changes{v1.7h}{2020/09/28}{New hook management interface
 %    (sync with ltfssini.dtx 2020/08/21 v3.2b)}
 % \changes{v1.7i}{2020/10/07}{$B%U%C%/%7%9%F%`$NM-L5H=Dj$r2~NI(B}
+% \changes{v1.7j}{2020/12/29}{Drop ``m'' for latex2e issue 453
+%    (sync with ltfssbas.dtx 2020/12/10 v3.2h)}
+% \changes{v1.7k}{2021/01/10}{Distangle series and shape update (latex2e/444)
+%    (sync with ltfssaxes.dtx 2020/12/22 v1.0h)}
+% \changes{v1.7k}{2021/01/10}{Execute delayed series and shape updates (latex2e/444)
+%    (sync with ltfsstrc.dtx 2020/12/22 v3.0n)}
+% \changes{v1.7k}{2021/01/10}{Adjust start values for series and shape (latex2e/444)
+%    (sync with ltfssini.dtx 2020/12/06 v3.2f)}
 % \fi
 %
 % \iffalse
@@ -173,7 +181,7 @@
 %<*driver>
 \NeedsTeXFormat{pLaTeX2e}
 % \fi
-\ProvidesFile{plfonts.dtx}[2020/10/07 v1.7i pLaTeX New Font Selection Scheme]
+\ProvidesFile{plfonts.dtx}[2021/01/10 v1.7k pLaTeX New Font Selection Scheme]
 % \iffalse
 \documentclass{jltxdoc}
 \GetFileInfo{plfonts.dtx}
@@ -306,7 +314,7 @@
 %<*trace>
 \NeedsTeXFormat{pLaTeX2e}
 \ProvidesPackage{ptrace}
-     [2020/03/26 v1.7e Standard pLaTeX package (font tracing)]
+     [2021/01/10 v1.7k Standard pLaTeX package (font tracing)]
 \RequirePackageWithOptions{tracefnt}
 %</trace>
 %    \end{macrocode}
@@ -1779,7 +1787,7 @@
 %
 % \subsubsection{$B%U%)%s%H$NA*Br(B}
 % \begin{macro}{\selectfont}
-% |\selectfont|$B$N%*%j%8%J%k$+$i$NJQ99ItJ,$O!"<!$N#3E@$G$9!#(B
+% |\selectfont|$B$N%*%j%8%J%k$+$i$NJQ99ItJ,$O!"<!$N(B3$BE@$G$9!#(B
 % \begin{itemize}
 % \item $BOBJ8=qBN$rJQ99$9$kItJ,(B
 % \item $B=>B0=qBN$KJQ99$9$kItJ,(B
@@ -1790,12 +1798,13 @@
 % \changes{v1.2}{1995/11/22}{$B%(%i!<%U%)%s%H$KBP1~$7$?(B}
 % \changes{v1.3n}{2004/08/10}{$BOBJ8%(%s%3!<%G%#%s%0$N at Z$jBX$($rM-8z2=(B}
 % \changes{v1.7e}{2020/03/26}{$B=D2#%(%s%3!<%G%#%s%0$N%;%C%H2=3NG'(B}
-% |\selectfont|$B%3%^%s%I$O!"$^$:!"OBJ8%U%)%s%H$r at Z$jBX$($^$9!#(B
 %    \begin{macrocode}
 %</plcore>
 %<platexrelease|trace>\plIncludeInRelease{2020/04/12}{\selectfont}
 %<platexrelease|trace>                   {Check \KanjiEncodingPair}%
 %<*plcore|platexrelease|trace>
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
+%%
 \DeclareRobustCommand\selectfont{%
   \let\tmp at error@fontshape\error at fontshape
   \let\error at fontshape\error at kfontshape
@@ -1830,7 +1839,114 @@
   \expandafter\def\expandafter\k at encoding\tmp at item
   \kenc at update
   \let\error at fontshape\tmp at error@fontshape
+  \if at knjcmd \@knjcmdfalse
+    \expandafter\ifx
+    \csname rel@\k at encoding/\k at family/\k at series/\k at shape\endcsname\relax
+      \expandafter\ifx
+         \csname rel@\k at encoding/\k at family/\k at series/all\endcsname\relax
+      \else
+         \csname rel@\k at encoding/\k at family/\k at series/all\endcsname
+      \fi
+    \else
+       \csname rel@\k at encoding/\k at family/\k at series/\k at shape\endcsname
+    \fi
+  \fi
+  \let\font\afont
+  \xdef\font at name{\csname\curr at fontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+%<trace>  \ifnum \tracingfonts>\tw@
+%<trace>    \@font at info{Roman:Switching to \font at name}\fi
+  \enc at update
+  \ifx\f at linespread\baselinestretch \else
+    \set at fontsize\baselinestretch\f at size\f at baselineskip
+  \fi
+  \size at update}
+%%
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+%%
+\DeclareRobustCommand\selectfont{%
 %    \end{macrocode}
+% $B:G=i$K!"CY$i$;$F$$$?%7%j!<%:!&%7%'%$%W$NCM99?7$r9T$$$^$9!#(B
+% \changes{v1.7k}{2021/01/10}{Execute delayed series and shape updates (latex2e/444)
+%    (sync with ltfsstrc.dtx 2020/12/22 v3.0n)}
+%    \begin{macrocode}
+  % !! sync with ltfsstrc.dtx 2020/12/22 v3.0n BEGIN
+  \ifx\delayed at k@adjustment\@empty
+  \else
+    \let\k at shape@saved\k at shape
+    \let\k at series@saved\k at series
+    \delayed at k@adjustment
+    \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
+      \maybe at load@fontshape\endgroup
+    \ifcsname \k at encoding/\k at family/\k at series/\k at shape \endcsname
+    \else
+      \let\k at shape\k at shape@saved
+      \let\k at series\k at series@saved
+      \let\delayed at merge@kanji at shape\merge at kanji@shape
+      \let\delayed at merge@kanji at series\merge at kanji@series
+      \delayed at k@adjustment
+      \let\delayed at merge@kanji at shape\merge at kanji@shape at without@substitution
+      \let\delayed at merge@kanji at series\merge at kanji@series at without@substitution
+    \fi
+    \let\delayed at k@adjustment\@empty
+  \fi
+  \ifx\delayed at f@adjustment\@empty
+  \else
+    \let\f at shape@saved\f at shape
+    \let\f at series@saved\f at series
+    \delayed at f@adjustment
+    \maybe at load@fontshape
+    \ifcsname \f at encoding/\f at family/\f at series/\f at shape \endcsname
+    \else
+      \let\f at shape\f at shape@saved
+      \let\f at series\f at series@saved
+      \let\delayed at merge@font at shape\merge at font@shape
+      \let\delayed at merge@font at series\merge at font@series
+      \delayed at f@adjustment
+      \let\delayed at merge@font at shape\merge at font@shape at without@substitution
+      \let\delayed at merge@font at series\merge at font@series at without@substitution
+    \fi
+    \let\delayed at f@adjustment\@empty
+  \fi
+  % !! sync with ltfsstrc.dtx 2020/12/22 v3.0n END
+%    \end{macrocode}
+% p\LaTeXe{}$B$N(B|\selectfont|$B%3%^%s%I$O!"$^$:!"OBJ8%U%)%s%H$r at Z$jBX$($^$9!#(B
+%    \begin{macrocode}
+  \let\tmp at error@fontshape\error at fontshape
+  \let\error at fontshape\error at kfontshape
+  \edef\tmp at item{{\k at encoding}}%
+  \expandafter\expandafter\expandafter
+  \inlist@\expandafter\tmp at item\expandafter{\kyenc at list}%
+  \ifin@
+    \let\cy at encoding\k at encoding
+    \ensure at KanjiEncodingPair{t}%
+    \edef\ct at encoding{\csname t at enc@\k at encoding\endcsname}%
+  \else
+    \expandafter\expandafter\expandafter
+    \inlist@\expandafter\tmp at item\expandafter{\ktenc at list}%
+    \ifin@
+      \let\ct at encoding\k at encoding
+      \ensure at KanjiEncodingPair{y}%
+      \edef\cy at encoding{\csname y at enc@\k at encoding\endcsname}%
+    \else
+      \@latex at error{KANJI Encoding scheme `\k at encoding' unknown}\@eha
+    \fi
+  \fi
+  \let\font\tfont
+  \let\k at encoding\ct at encoding
+  \xdef\font at name{\csname\curr at kfontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \let\font\jfont
+  \let\k at encoding\cy at encoding
+  \xdef\font at name{\csname\curr at kfontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \expandafter\def\expandafter\k at encoding\tmp at item
+  \kenc at update
+  \let\error at fontshape\tmp at error@fontshape
+%    \end{macrocode}
 % $B<!$K!"(B|\if at knjcmd|$B$,??$N>l9g!"(B
 % $B2$J8=qBN$r8=:_$NOBJ8=qBN$K4XO"IU$1$5$l$?%U%)%s%H$KJQ$($^$9!#(B
 % $B$3$N%U%i%0$O(B|\userelfont|$B%3%^%s%I$K$h$C$F(B\emph{$B??(B}$B$H$J$j$^$9!#(B
@@ -1855,8 +1971,7 @@
   \xdef\font at name{\csname\curr at fontshape/\f at size\endcsname}%
   \pickup at font
   \font at name
-%<trace>  \ifnum \tracingfonts>\tw@
-%<trace>    \@font at info{Roman:Switching to \font at name}\fi
+  \UseHook{selectfont}% since LaTeX2e 2021-05-01
   \enc at update
 %    \end{macrocode}
 % $B:G8e$K!"%5%$%:$,JQ99$5$l$F$$$l$P!"%Y!<%9%i%$%s$ND4 at 0$J$I$r9T$J$$$^$9!#(B
@@ -1863,7 +1978,6 @@
 % $B1Q8lHG$N(B|\selectfont|$B$G$O:G=i$K9T$J$C$F$$$^$9$,!"(B
 % p\LaTeXe{}$B$G$O%Y!<%9%i%$%s%7%U%H$ND4 at 0$r$9$k$?$a$K!"(B
 % $B=qBN$r3NDj$7$J$1$l$P$J$i$J$$$?$a!"0lHV:G8e$K9T$J$$$^$9(B
-%
 % \changes{v1.1b}{1995/04/26}{$B%Y!<%9%i%$%s$ND4 at 0$r%5%$%:JQ99;~$K(B
 %       $B9T$J$&$h$&$K$7$?(B}
 %    \begin{macrocode}
@@ -1871,6 +1985,8 @@
     \set at fontsize\baselinestretch\f at size\f at baselineskip
   \fi
   \size at update}
+%%
+\fi          % --- for >= 2021-05-01 END
 %</plcore|platexrelease|trace>
 %<platexrelease|trace>\plEndIncludeInRelease
 %<platexrelease|trace>\plIncludeInRelease{0000/00/00}{\selectfont}
@@ -2510,6 +2626,21 @@
 %    \end{macrocode}
 % \end{macro}
 %
+% \begin{macro}{\delayed at k@adjustment}
+% \LaTeXe~2021-05-01$B$GDI2C$5$l$?(B|\delayed at f@adjustment|$B$NOBJ8HG$G$9!#(B
+% \changes{v1.7k}{2021/01/10}{Distangle series and shape update (latex2e/444)
+%    (sync with ltfssaxes.dtx 2020/12/22 v1.0h)}
+%    \begin{macrocode}
+%<*plcore|platexrelease>
+\ifx\delayed at f@adjustment\@undefined   % old
+  \let\delayed at k@adjustment\@undefined
+\else                                  % 2021-05-01
+  \let\delayed at k@adjustment\@empty
+\fi
+%</plcore|platexrelease>
+%    \end{macrocode}
+% \end{macro}
+%
 % \begin{macro}{\romanseries}
 % \begin{macro}{\kanjiseries}
 % \begin{macro}{\fontseries}
@@ -2519,6 +2650,10 @@
 % 2019$BG/$^$G$OL5>r7o$K;XDj$5$l$?$H$*$j$N%7%j!<%:$rA*Br$7$F$$$^$7$?$,!"(B
 % \LaTeXe~2020-02-02$B0J9_$G$O!"(B|\DeclareFontSeriesChangeRule|$B$K$h$C$F(B
 % $B at k8@$5$l$?!V%7%j!<%:99?75,B'!W$K4p$E$-%7%j!<%:$rA*Br$7$^$9!#(B
+%
+% \LaTeXe~2021-05-01$B0J9_$G$O!"%7%j!<%:$N99?7$r(B|\selectfont|$B$^$GCY$i$;$^$9!#(B
+% \changes{v1.7k}{2021/01/10}{Distangle series and shape update (latex2e/444)
+%    (sync with ltfssaxes.dtx 2020/12/22 v1.0h)}
 %    \begin{macrocode}
 %<*plcore|platexrelease>
 \ifx\fontseriesforce\@undefined  % old
@@ -2526,9 +2661,19 @@
 \DeclareRobustCommand\kanjiseries[1]{\edef\k at series{#1}}
 \DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \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}}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanseries[1]{\@forced at seriesfalse
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\delayed at merge@font at series{#1}}}
+\DeclareRobustCommand\kanjiseries[1]{\@forced at seriesfalse
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\delayed at merge@kanji at series{#1}}}
+\DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
+\fi          % --- for >= 2021-05-01 END
 \fi
 %    \end{macrocode}
 % \end{macro}
@@ -2548,9 +2693,19 @@
 \let\romanseriesforce\@undefined
 \let\kanjiseriesforce\@undefined
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \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}}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanseriesforce[1]{\@forced at seriestrue
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+      {\delayed at f@adjustment\edef\f at series{#1}}}
+\DeclareRobustCommand\kanjiseriesforce[1]{\@forced at seriestrue
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+      {\delayed at k@adjustment\edef\k at series{#1}}}
+\DeclareRobustCommand\fontseriesforce[1]{\kanjiseriesforce{#1}\romanseriesforce{#1}}
+\fi          % --- for >= 2021-05-01 END
 \fi
 %    \end{macrocode}
 % \end{macro}
@@ -2584,8 +2739,13 @@
 %    \begin{macrocode}
     \set at target@series at kanji{#2}%
   \else
+%^^A [TODO] BEGIN
+%^^A   LaTeX2e 2021-05-01 $B$G$O(B |\maybe at load@fontshape| $B$O:o=|$5$l$k!#(B
+%^^A     $BM}M3!'=hM}$,(B |\selectfont| $B$^$GCY$l$k$N$GITMW$H$N$3$H!#(B
+%^^A   $B$7$+$7!"$J$<$+(B ltfssaxes.dtx $B$G(B rollback $B$NBP=h$,L5$$$h$&$J!)(B
     \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
       \maybe at load@fontshape\endgroup
+%^^A [TODO] END
     \edef\reserved at a{\k at encoding /\k at family /#1/\k at shape}%
      \ifcsname \reserved at a \endcsname
 %    \end{macrocode}
@@ -2614,6 +2774,40 @@
     \series at maybe@drop at one@m\k at series\k at series
 }
 \fi
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\merge at kanji@series at without@substitution}
+% \begin{macro}{\merge at kanji@series at without@substitution@}
+% \begin{macro}{\delayed at merge@kanji at series}
+% \cs{merge at font@series at without@substitution}$B$NOBJ8HG$G$9!#(B
+% \changes{v1.7k}{2021/01/10}{Distangle series and shape update (latex2e/444)
+%    (sync with ltfssaxes.dtx 2020/12/22 v1.0h)}
+%    \begin{macrocode}
+\ifx\merge at font@series at without@substitution\@undefined % old
+\let\merge at kanji@series at without@substitution\@undefined
+\let\merge at kanji@series at without@substitution@\@undefined
+\let\delayed at merge@kanji at series\@undefined
+\else                                                  % 2021-05-01
+\def\merge at kanji@series at without@substitution#1{%
+  \expandafter\expandafter\expandafter
+  \merge at kanji@series at without@substitution@
+    \csname series@\k at series @#1\endcsname
+    {#1}%
+    \@nil
+}
+\def\merge at kanji@series at without@substitution@#1#2#3\@nil{%
+  \def\reserved at a{#3}%
+  \ifx\reserved at a\@empty
+    \set at target@series at kanji{#2}%
+  \else
+    \set at target@series at kanji{#1}%
+  \fi
+}
+\let\delayed at merge@kanji at series\merge at kanji@series at without@substitution
+\fi
 %</plcore|platexrelease>
 %    \end{macrocode}
 % \end{macro}
@@ -2667,6 +2861,10 @@
 % 2019$BG/$^$G$OL5>r7o$K;XDj$5$l$?$H$*$j$N%7%'%$%W$rA*Br$7$F$$$^$7$?$,!"(B
 % \LaTeXe~2020-02-02$B0J9_$G$O!"(B|\DeclareFontShapeChangeRule|$B$K$h$C$F(B
 % $B at k8@$5$l$?!V%7%'%$%W99?75,B'!W$K4p$E$-%7%'%$%W$rA*Br$7$^$9!#(B
+%
+% \LaTeXe~2021-05-01$B0J9_$G$O!"%7%'%$%W$N99?7$r(B|\selectfont|$B$^$GCY$i$;$^$9!#(B
+% \changes{v1.7k}{2021/01/10}{Distangle series and shape update (latex2e/444)
+%    (sync with ltfssaxes.dtx 2020/12/22 v1.0h)}
 %    \begin{macrocode}
 %<platexrelease>\plIncludeInRelease{2020/04/12}{\fontshape}
 %<platexrelease>                   {No \k at shape update if unavailable}%
@@ -2679,6 +2877,7 @@
   \edef\f at shape{#1}%
 }
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \DeclareRobustCommand\romanshape[1]{\merge at font@shape{#1}}
 \DeclareRobustCommand\kanjishape[1]{\merge at kanji@shape{#1}}
 \DeclareRobustCommand\fontshape[1]{%
@@ -2685,6 +2884,18 @@
   \@shape at roman@kanjitrue
   \kanjishape{#1}\romanshape{#1}%
   \@shape at roman@kanjifalse}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanshape[1]{%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\delayed at merge@font at shape{#1}}}
+\DeclareRobustCommand\kanjishape[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\delayed at merge@kanji at shape{#1}}}
+\DeclareRobustCommand\fontshape[1]{%
+  \@shape at roman@kanjitrue
+  \kanjishape{#1}\romanshape{#1}%
+  \@shape at roman@kanjifalse}
+\fi          % --- for >= 2021-05-01 END
 \fi
 %</plcore|platexrelease>
 %<platexrelease>\plEndIncludeInRelease
@@ -2719,6 +2930,7 @@
 \let\romanshapeforce\@undefined
 \let\kanjishapeforce\@undefined
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \DeclareRobustCommand\romanshapeforce[1]{\edef\f at shape{#1}}
 \DeclareRobustCommand\kanjishapeforce[1]{\edef\k at shape{#1}}
 \DeclareRobustCommand\fontshapeforce[1]{%
@@ -2725,6 +2937,20 @@
   \set at safe@kanji at shape{#1}{}%
   \edef\f at shape{#1}%
 }
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanshapeforce[1]{%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\edef\f at shape{#1}}}
+\DeclareRobustCommand\kanjishapeforce[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\edef\k at shape{#1}}}
+\DeclareRobustCommand\fontshapeforce[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\set at safe@kanji at shape{#1}{}}%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\edef\f at shape{#1}}%
+}
+\fi          % --- for >= 2021-05-01 END
 \fi
 %</plcore|platexrelease>
 %<platexrelease>\plEndIncludeInRelease
@@ -2776,8 +3002,13 @@
     \edef\k at shape{#2}%
    \fi
   \else
+%^^A [TODO] BEGIN
+%^^A   LaTeX2e 2021-05-01 $B$G$O(B |\maybe at load@fontshape| $B$O:o=|$5$l$k!#(B
+%^^A     $BM}M3!'=hM}$,(B |\selectfont| $B$^$GCY$l$k$N$GITMW$H$N$3$H!#(B
+%^^A   $B$7$+$7!"$J$<$+(B ltfssaxes.dtx $B$G(B rollback $B$NBP=h$,L5$$$h$&$J!)(B
     \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
       \maybe at load@fontshape\endgroup
+%^^A [TODO] END
     \edef\reserved at a{\k at encoding /\k at family /\k at series/#1}%
      \ifcsname \reserved at a\endcsname
 %    \end{macrocode}
@@ -2851,6 +3082,42 @@
 % \end{macro}
 % \end{macro}
 %
+% \begin{macro}{\merge at kanji@shape at without@substitution}
+% \begin{macro}{\merge at kanji@shape at without@substitution@}
+% \begin{macro}{\delayed at merge@kanji at shape}
+% \cs{merge at font@shape at without@substitution}$B$NOBJ8HG$G$9!#(B
+% \changes{v1.7k}{2021/01/10}{Distangle series and shape update (latex2e/444)
+%    (sync with ltfssaxes.dtx 2020/12/22 v1.0h)}
+%    \begin{macrocode}
+%<*plcore|platexrelease>
+\ifx\merge at font@shape at without@substitution\@undefined  % old
+\let\merge at kanji@shape at without@substitution\@undefined
+\let\merge at kanji@shape at without@substitution@\@undefined
+\let\delayed at merge@kanji at shape\@undefined
+\else                                                  % 2021-05-01
+\def\merge at kanji@shape at without@substitution#1{%
+  \expandafter\expandafter\expandafter
+  \merge at kanji@shape at without@substitution@
+    \csname shape@\k at shape @#1\endcsname
+    {#1}%
+    \@nil
+}
+\def\merge at kanji@shape at without@substitution@#1#2#3\@nil{%
+  \def\reserved at a{#3}%
+  \ifx\reserved at a\@empty
+    \edef\k at shape{#2}%
+  \else
+    \edef\k at shape{#1}%
+  \fi
+}
+\let\delayed at merge@kanji at shape\merge at kanji@shape at without@substitution
+\fi
+%</plcore|platexrelease>
+%    \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
 % \begin{macro}{\set at safe@kanji at shape}
 % \begin{macro}{\@kanji at shape@nochange at info}
 % $BOBJ8%7%'!<%W$,MxMQ2DG=$+$I$&$+M=$a%A%'%C%/$7$F$+$i at _Dj$7$^$9!#(B
@@ -2896,10 +3163,13 @@
 %    (sync with ltfssbas.dtx 2019/08/27 v3.2d)}
 % \changes{v1.6v}{2020/02/01}{Don't call \cs{fontseries} or \cs{fontshape}
 %    (sync with ltfssbas.dtx 2019/12/17 v3.2e)}
+% \changes{v1.7j}{2020/12/29}{Drop ``m'' for latex2e issue 453
+%    (sync with ltfssbas.dtx 2020/12/10 v3.2h)}
 %    \begin{macrocode}
 %<platexrelease>\plIncludeInRelease{2020/02/02}{\usefont}
 %<platexrelease>                   {Don't call \fontseries or \fontshape}%
 %<*plcore|platexrelease>
+\ifx\set at target@series\@undefined
 \DeclareRobustCommand\usekanji[4]{\kanjiencoding{#1}%
     \edef\k at family{#2}%
     \edef\k at series{#3}%
@@ -2910,6 +3180,18 @@
     \edef\f at series{#3}%
     \edef\f at shape{#4}\selectfont
     \ignorespaces}
+\else
+\DeclareRobustCommand\usekanji[4]{\kanjiencoding{#1}%
+    \edef\k at family{#2}%
+    \set at target@series at kanji{#3}%
+    \edef\k at shape{#4}\selectfont
+    \ignorespaces}
+\DeclareRobustCommand\useroman[4]{\romanencoding{#1}%
+    \edef\f at family{#2}%
+    \set at target@series{#3}%
+    \edef\f at shape{#4}\selectfont
+    \ignorespaces}
+\fi
 \DeclareRobustCommand\usefont[4]{%
   \edef\tmp at item{{#1}}%
   \expandafter\expandafter\expandafter
@@ -4424,7 +4706,7 @@
 %    \begin{macrocode}
 %<*pldefs>
 \ProvidesFile{pldefs.ltx}
-      [2020/02/01 v1.6v pLaTeX Kernel (Default settings)]
+      [2021/01/10 v1.7k pLaTeX Kernel (Default settings)]
 %</pldefs>
 %    \end{macrocode}
 %
@@ -4431,10 +4713,11 @@
 % \subsection{$B%F%-%9%H%U%)%s%H(B}
 % $B%F%-%9%H%U%)%s%H$N$?$a$NB0 at -$d%(%i!<=qBN$J$I$N at k8@$G$9!#(B
 % p\LaTeX{}$B$N%G%U%)%k%H$N2#AH%(%s%3!<%I$O(BJY1$B!"=DAH%(%s%3!<%I$O(BJT1$B$H$7$^$9!#(B
-%
 % \changes{v1.6s}{2019/08/13}{Explicitly set some defaults
 %    after \cs{DeclareErrorKanjiFont} change
 %    (sync with ltfssini.dtx 2019/07/09 v3.1c)}
+% \changes{v1.7k}{2021/01/10}{Adjust start values for series and shape (latex2e/444)
+%    (sync with ltfssini.dtx 2020/12/06 v3.2f)}
 % \noindent
 % $B=D2#%(%s%3!<%I6&DL!'(B
 %    \begin{macrocode}
@@ -4442,8 +4725,8 @@
 \DeclareKanjiEncodingDefaults{}{}
 \DeclareErrorKanjiFont{JY1}{mc}{m}{n}{10}
 \kanjifamily{mc}
-\kanjiseries{m}
-\kanjishape{n}
+\def\k at series{m}    % \kanjiseries{m}
+\def\k at shape{n}     % \kanjishape{n}
 \fontsize{10}{10}
 %    \end{macrocode}
 % $B2#AH%(%s%3!<%I!'(B

Modified: trunk/Master/texmf-dist/source/platex/base/plvers.dtx
===================================================================
--- trunk/Master/texmf-dist/source/platex/base/plvers.dtx	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/source/platex/base/plvers.dtx	2021-02-13 22:17:20 UTC (rev 57730)
@@ -197,7 +197,7 @@
    {2020-10-01}
 %</plcore|platexrelease>
 %<*plcore>
-\def\ppatch at level{1}
+\def\ppatch at level{2}
 %</plcore>
 %    \end{macrocode}
 % \end{macro}

Modified: trunk/Master/texmf-dist/tex/platex/base/platexrelease.sty
===================================================================
--- trunk/Master/texmf-dist/tex/platex/base/platexrelease.sty	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/tex/platex/base/platexrelease.sty	2021-02-13 22:17:20 UTC (rev 57730)
@@ -71,7 +71,7 @@
 %% File: platexrelease.dtx
 \NeedsTeXFormat{pLaTeX2e}
 \ProvidesPackage{platexrelease}
-          [2020/03/28 v1.0n latexrelease support for pLaTeX Kernel
+          [2021/02/13 v1.0o latexrelease support for pLaTeX Kernel
               (including releases up to \platexreleaseversion)]
 \ifx\p at warn@latexrelease\@undefined\else
 \let\p at warn@latexrelease\relax
@@ -88,6 +88,8 @@
     Version of `latexrelease' is newer than\MessageBreak
     what `platexrelease' knows}
 \fi
+\edef\sourcepLaTeXdate{%
+  \expandafter\@parse at version\pfmtversion//00\@nil}
 \DeclareOption*{%
   \def\@plIncludeInRelease#1[#2]{\@plIncludeInRele at se{#1}}%
   \let\requestedplpatchdate\CurrentOption}
@@ -144,6 +146,7 @@
       some critical bugs. We advise you to\MessageBreak
       select another format date}
 \plIncludeInRelease{2017/10/28}{\PackageWarning}{pLaTeX Info}%
+  % * <2020-10-01>+2 (prepare for LaTeX2e <2021-05-01>)
   % * <2020-10-01>+1
   % * <2020-10-01>
   % * <2020-04-12>
@@ -709,6 +712,8 @@
 \plEndIncludeInRelease
 \plIncludeInRelease{2020/04/12}{\selectfont}
                    {Check \KanjiEncodingPair}%
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
+%%
 \DeclareRobustCommand\selectfont{%
   \let\tmp at error@fontshape\error at fontshape
   \let\error at fontshape\error at kfontshape
@@ -764,6 +769,106 @@
     \set at fontsize\baselinestretch\f at size\f at baselineskip
   \fi
   \size at update}
+%%
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+%%
+\DeclareRobustCommand\selectfont{%
+  % !! sync with ltfsstrc.dtx 2020/12/22 v3.0n BEGIN
+  \ifx\delayed at k@adjustment\@empty
+  \else
+    \let\k at shape@saved\k at shape
+    \let\k at series@saved\k at series
+    \delayed at k@adjustment
+    \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
+      \maybe at load@fontshape\endgroup
+    \ifcsname \k at encoding/\k at family/\k at series/\k at shape \endcsname
+    \else
+      \let\k at shape\k at shape@saved
+      \let\k at series\k at series@saved
+      \let\delayed at merge@kanji at shape\merge at kanji@shape
+      \let\delayed at merge@kanji at series\merge at kanji@series
+      \delayed at k@adjustment
+      \let\delayed at merge@kanji at shape\merge at kanji@shape at without@substitution
+      \let\delayed at merge@kanji at series\merge at kanji@series at without@substitution
+    \fi
+    \let\delayed at k@adjustment\@empty
+  \fi
+  \ifx\delayed at f@adjustment\@empty
+  \else
+    \let\f at shape@saved\f at shape
+    \let\f at series@saved\f at series
+    \delayed at f@adjustment
+    \maybe at load@fontshape
+    \ifcsname \f at encoding/\f at family/\f at series/\f at shape \endcsname
+    \else
+      \let\f at shape\f at shape@saved
+      \let\f at series\f at series@saved
+      \let\delayed at merge@font at shape\merge at font@shape
+      \let\delayed at merge@font at series\merge at font@series
+      \delayed at f@adjustment
+      \let\delayed at merge@font at shape\merge at font@shape at without@substitution
+      \let\delayed at merge@font at series\merge at font@series at without@substitution
+    \fi
+    \let\delayed at f@adjustment\@empty
+  \fi
+  % !! sync with ltfsstrc.dtx 2020/12/22 v3.0n END
+  \let\tmp at error@fontshape\error at fontshape
+  \let\error at fontshape\error at kfontshape
+  \edef\tmp at item{{\k at encoding}}%
+  \expandafter\expandafter\expandafter
+  \inlist@\expandafter\tmp at item\expandafter{\kyenc at list}%
+  \ifin@
+    \let\cy at encoding\k at encoding
+    \ensure at KanjiEncodingPair{t}%
+    \edef\ct at encoding{\csname t at enc@\k at encoding\endcsname}%
+  \else
+    \expandafter\expandafter\expandafter
+    \inlist@\expandafter\tmp at item\expandafter{\ktenc at list}%
+    \ifin@
+      \let\ct at encoding\k at encoding
+      \ensure at KanjiEncodingPair{y}%
+      \edef\cy at encoding{\csname y at enc@\k at encoding\endcsname}%
+    \else
+      \@latex at error{KANJI Encoding scheme `\k at encoding' unknown}\@eha
+    \fi
+  \fi
+  \let\font\tfont
+  \let\k at encoding\ct at encoding
+  \xdef\font at name{\csname\curr at kfontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \let\font\jfont
+  \let\k at encoding\cy at encoding
+  \xdef\font at name{\csname\curr at kfontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \expandafter\def\expandafter\k at encoding\tmp at item
+  \kenc at update
+  \let\error at fontshape\tmp at error@fontshape
+  \if at knjcmd \@knjcmdfalse
+    \expandafter\ifx
+    \csname rel@\k at encoding/\k at family/\k at series/\k at shape\endcsname\relax
+      \expandafter\ifx
+         \csname rel@\k at encoding/\k at family/\k at series/all\endcsname\relax
+      \else
+         \csname rel@\k at encoding/\k at family/\k at series/all\endcsname
+      \fi
+    \else
+       \csname rel@\k at encoding/\k at family/\k at series/\k at shape\endcsname
+    \fi
+  \fi
+  \let\font\afont
+  \xdef\font at name{\csname\curr at fontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \UseHook{selectfont}% since LaTeX2e 2021-05-01
+  \enc at update
+  \ifx\f at linespread\baselinestretch \else
+    \set at fontsize\baselinestretch\f at size\f at baselineskip
+  \fi
+  \size at update}
+%%
+\fi          % --- for >= 2021-05-01 END
 \plEndIncludeInRelease
 \plIncludeInRelease{0000/00/00}{\selectfont}
                    {ASCII Corporation original}%
@@ -970,22 +1075,47 @@
 \else
   \pltx at temp@catcode at ix  % reveal if-tokens
 \fi
+\ifx\delayed at f@adjustment\@undefined   % old
+  \let\delayed at k@adjustment\@undefined
+\else                                  % 2021-05-01
+  \let\delayed at k@adjustment\@empty
+\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
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \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}}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanseries[1]{\@forced at seriesfalse
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\delayed at merge@font at series{#1}}}
+\DeclareRobustCommand\kanjiseries[1]{\@forced at seriesfalse
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\delayed at merge@kanji at series{#1}}}
+\DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
+\fi          % --- for >= 2021-05-01 END
 \fi
 \ifx\fontseriesforce\@undefined  % old
 \let\romanseriesforce\@undefined
 \let\kanjiseriesforce\@undefined
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \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}}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanseriesforce[1]{\@forced at seriestrue
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+      {\delayed at f@adjustment\edef\f at series{#1}}}
+\DeclareRobustCommand\kanjiseriesforce[1]{\@forced at seriestrue
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+      {\delayed at k@adjustment\edef\k at series{#1}}}
+\DeclareRobustCommand\fontseriesforce[1]{\kanjiseriesforce{#1}\romanseriesforce{#1}}
+\fi          % --- for >= 2021-05-01 END
 \fi
 \ifx\fontseriesforce\@undefined  % old
 \let\merge at kanji@series\@undefined
@@ -1025,6 +1155,28 @@
     \series at maybe@drop at one@m\k at series\k at series
 }
 \fi
+\ifx\merge at font@series at without@substitution\@undefined % old
+\let\merge at kanji@series at without@substitution\@undefined
+\let\merge at kanji@series at without@substitution@\@undefined
+\let\delayed at merge@kanji at series\@undefined
+\else                                                  % 2021-05-01
+\def\merge at kanji@series at without@substitution#1{%
+  \expandafter\expandafter\expandafter
+  \merge at kanji@series at without@substitution@
+    \csname series@\k at series @#1\endcsname
+    {#1}%
+    \@nil
+}
+\def\merge at kanji@series at without@substitution@#1#2#3\@nil{%
+  \def\reserved at a{#3}%
+  \ifx\reserved at a\@empty
+    \set at target@series at kanji{#2}%
+  \else
+    \set at target@series at kanji{#1}%
+  \fi
+}
+\let\delayed at merge@kanji at series\merge at kanji@series at without@substitution
+\fi
 \newif\if at shape@roman at kanji
 \plIncludeInRelease{2020/04/12}{\fontshape}
                    {No \k at shape update if unavailable}%
@@ -1036,6 +1188,7 @@
   \edef\f at shape{#1}%
 }
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \DeclareRobustCommand\romanshape[1]{\merge at font@shape{#1}}
 \DeclareRobustCommand\kanjishape[1]{\merge at kanji@shape{#1}}
 \DeclareRobustCommand\fontshape[1]{%
@@ -1042,6 +1195,18 @@
   \@shape at roman@kanjitrue
   \kanjishape{#1}\romanshape{#1}%
   \@shape at roman@kanjifalse}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanshape[1]{%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\delayed at merge@font at shape{#1}}}
+\DeclareRobustCommand\kanjishape[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\delayed at merge@kanji at shape{#1}}}
+\DeclareRobustCommand\fontshape[1]{%
+  \@shape at roman@kanjitrue
+  \kanjishape{#1}\romanshape{#1}%
+  \@shape at roman@kanjifalse}
+\fi          % --- for >= 2021-05-01 END
 \fi
 \plEndIncludeInRelease
 \plIncludeInRelease{0000/00/00}{\fontshape}
@@ -1062,6 +1227,7 @@
 \let\romanshapeforce\@undefined
 \let\kanjishapeforce\@undefined
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \DeclareRobustCommand\romanshapeforce[1]{\edef\f at shape{#1}}
 \DeclareRobustCommand\kanjishapeforce[1]{\edef\k at shape{#1}}
 \DeclareRobustCommand\fontshapeforce[1]{%
@@ -1068,6 +1234,20 @@
   \set at safe@kanji at shape{#1}{}%
   \edef\f at shape{#1}%
 }
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanshapeforce[1]{%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\edef\f at shape{#1}}}
+\DeclareRobustCommand\kanjishapeforce[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\edef\k at shape{#1}}}
+\DeclareRobustCommand\fontshapeforce[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\set at safe@kanji at shape{#1}{}}%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\edef\f at shape{#1}}%
+}
+\fi          % --- for >= 2021-05-01 END
 \fi
 \plEndIncludeInRelease
 \plIncludeInRelease{0000/00/00}{\fontshapeforce}
@@ -1162,6 +1342,28 @@
 }
 \fi
 \plEndIncludeInRelease
+\ifx\merge at font@shape at without@substitution\@undefined  % old
+\let\merge at kanji@shape at without@substitution\@undefined
+\let\merge at kanji@shape at without@substitution@\@undefined
+\let\delayed at merge@kanji at shape\@undefined
+\else                                                  % 2021-05-01
+\def\merge at kanji@shape at without@substitution#1{%
+  \expandafter\expandafter\expandafter
+  \merge at kanji@shape at without@substitution@
+    \csname shape@\k at shape @#1\endcsname
+    {#1}%
+    \@nil
+}
+\def\merge at kanji@shape at without@substitution@#1#2#3\@nil{%
+  \def\reserved at a{#3}%
+  \ifx\reserved at a\@empty
+    \edef\k at shape{#2}%
+  \else
+    \edef\k at shape{#1}%
+  \fi
+}
+\let\delayed at merge@kanji at shape\merge at kanji@shape at without@substitution
+\fi
 \plIncludeInRelease{2020/04/12}{\set at safe@kanji at shape}
                    {No \k at shape update if unavailable}%
 \def\set at safe@kanji at shape#1#2{%
@@ -1185,6 +1387,7 @@
 \plEndIncludeInRelease
 \plIncludeInRelease{2020/02/02}{\usefont}
                    {Don't call \fontseries or \fontshape}%
+\ifx\set at target@series\@undefined
 \DeclareRobustCommand\usekanji[4]{\kanjiencoding{#1}%
     \edef\k at family{#2}%
     \edef\k at series{#3}%
@@ -1195,6 +1398,18 @@
     \edef\f at series{#3}%
     \edef\f at shape{#4}\selectfont
     \ignorespaces}
+\else
+\DeclareRobustCommand\usekanji[4]{\kanjiencoding{#1}%
+    \edef\k at family{#2}%
+    \set at target@series at kanji{#3}%
+    \edef\k at shape{#4}\selectfont
+    \ignorespaces}
+\DeclareRobustCommand\useroman[4]{\romanencoding{#1}%
+    \edef\f at family{#2}%
+    \set at target@series{#3}%
+    \edef\f at shape{#4}\selectfont
+    \ignorespaces}
+\fi
 \DeclareRobustCommand\usefont[4]{%
   \edef\tmp at item{{#1}}%
   \expandafter\expandafter\expandafter

Modified: trunk/Master/texmf-dist/tex/platex/base/plcore.ltx
===================================================================
--- trunk/Master/texmf-dist/tex/platex/base/plcore.ltx	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/tex/platex/base/plcore.ltx	2021-02-13 22:17:20 UTC (rev 57730)
@@ -35,7 +35,7 @@
 \def\pfmtname{pLaTeX2e}
 \def\pfmtversion
    {2020-10-01}
-\def\ppatch at level{1}
+\def\ppatch at level{2}
 \edef\platexBANNER{\noexpand\platexNILa
                    \the\everyjob % LaTeX banner and delayed codes
                    \noexpand\platexNILb}
@@ -581,6 +581,8 @@
 }
 \newif\if at knjcmd
 \DeclareRobustCommand\userelfont{\@knjcmdtrue}
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
+%%
 \DeclareRobustCommand\selectfont{%
   \let\tmp at error@fontshape\error at fontshape
   \let\error at fontshape\error at kfontshape
@@ -636,6 +638,106 @@
     \set at fontsize\baselinestretch\f at size\f at baselineskip
   \fi
   \size at update}
+%%
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+%%
+\DeclareRobustCommand\selectfont{%
+  % !! sync with ltfsstrc.dtx 2020/12/22 v3.0n BEGIN
+  \ifx\delayed at k@adjustment\@empty
+  \else
+    \let\k at shape@saved\k at shape
+    \let\k at series@saved\k at series
+    \delayed at k@adjustment
+    \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
+      \maybe at load@fontshape\endgroup
+    \ifcsname \k at encoding/\k at family/\k at series/\k at shape \endcsname
+    \else
+      \let\k at shape\k at shape@saved
+      \let\k at series\k at series@saved
+      \let\delayed at merge@kanji at shape\merge at kanji@shape
+      \let\delayed at merge@kanji at series\merge at kanji@series
+      \delayed at k@adjustment
+      \let\delayed at merge@kanji at shape\merge at kanji@shape at without@substitution
+      \let\delayed at merge@kanji at series\merge at kanji@series at without@substitution
+    \fi
+    \let\delayed at k@adjustment\@empty
+  \fi
+  \ifx\delayed at f@adjustment\@empty
+  \else
+    \let\f at shape@saved\f at shape
+    \let\f at series@saved\f at series
+    \delayed at f@adjustment
+    \maybe at load@fontshape
+    \ifcsname \f at encoding/\f at family/\f at series/\f at shape \endcsname
+    \else
+      \let\f at shape\f at shape@saved
+      \let\f at series\f at series@saved
+      \let\delayed at merge@font at shape\merge at font@shape
+      \let\delayed at merge@font at series\merge at font@series
+      \delayed at f@adjustment
+      \let\delayed at merge@font at shape\merge at font@shape at without@substitution
+      \let\delayed at merge@font at series\merge at font@series at without@substitution
+    \fi
+    \let\delayed at f@adjustment\@empty
+  \fi
+  % !! sync with ltfsstrc.dtx 2020/12/22 v3.0n END
+  \let\tmp at error@fontshape\error at fontshape
+  \let\error at fontshape\error at kfontshape
+  \edef\tmp at item{{\k at encoding}}%
+  \expandafter\expandafter\expandafter
+  \inlist@\expandafter\tmp at item\expandafter{\kyenc at list}%
+  \ifin@
+    \let\cy at encoding\k at encoding
+    \ensure at KanjiEncodingPair{t}%
+    \edef\ct at encoding{\csname t at enc@\k at encoding\endcsname}%
+  \else
+    \expandafter\expandafter\expandafter
+    \inlist@\expandafter\tmp at item\expandafter{\ktenc at list}%
+    \ifin@
+      \let\ct at encoding\k at encoding
+      \ensure at KanjiEncodingPair{y}%
+      \edef\cy at encoding{\csname y at enc@\k at encoding\endcsname}%
+    \else
+      \@latex at error{KANJI Encoding scheme `\k at encoding' unknown}\@eha
+    \fi
+  \fi
+  \let\font\tfont
+  \let\k at encoding\ct at encoding
+  \xdef\font at name{\csname\curr at kfontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \let\font\jfont
+  \let\k at encoding\cy at encoding
+  \xdef\font at name{\csname\curr at kfontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \expandafter\def\expandafter\k at encoding\tmp at item
+  \kenc at update
+  \let\error at fontshape\tmp at error@fontshape
+  \if at knjcmd \@knjcmdfalse
+    \expandafter\ifx
+    \csname rel@\k at encoding/\k at family/\k at series/\k at shape\endcsname\relax
+      \expandafter\ifx
+         \csname rel@\k at encoding/\k at family/\k at series/all\endcsname\relax
+      \else
+         \csname rel@\k at encoding/\k at family/\k at series/all\endcsname
+      \fi
+    \else
+       \csname rel@\k at encoding/\k at family/\k at series/\k at shape\endcsname
+    \fi
+  \fi
+  \let\font\afont
+  \xdef\font at name{\csname\curr at fontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \UseHook{selectfont}% since LaTeX2e 2021-05-01
+  \enc at update
+  \ifx\f at linespread\baselinestretch \else
+    \set at fontsize\baselinestretch\f at size\f at baselineskip
+  \fi
+  \size at update}
+%%
+\fi          % --- for >= 2021-05-01 END
 \def\set at fontsize#1#2#3{%
     \@defaultunits\@tempdimb#2pt\relax\@nnil
     \edef\f at size{\strip at pt\@tempdimb}%
@@ -835,22 +937,47 @@
 \else
   \pltx at temp@catcode at ix  % reveal if-tokens
 \fi
+\ifx\delayed at f@adjustment\@undefined   % old
+  \let\delayed at k@adjustment\@undefined
+\else                                  % 2021-05-01
+  \let\delayed at k@adjustment\@empty
+\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
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \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}}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanseries[1]{\@forced at seriesfalse
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\delayed at merge@font at series{#1}}}
+\DeclareRobustCommand\kanjiseries[1]{\@forced at seriesfalse
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\delayed at merge@kanji at series{#1}}}
+\DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
+\fi          % --- for >= 2021-05-01 END
 \fi
 \ifx\fontseriesforce\@undefined  % old
 \let\romanseriesforce\@undefined
 \let\kanjiseriesforce\@undefined
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \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}}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanseriesforce[1]{\@forced at seriestrue
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+      {\delayed at f@adjustment\edef\f at series{#1}}}
+\DeclareRobustCommand\kanjiseriesforce[1]{\@forced at seriestrue
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+      {\delayed at k@adjustment\edef\k at series{#1}}}
+\DeclareRobustCommand\fontseriesforce[1]{\kanjiseriesforce{#1}\romanseriesforce{#1}}
+\fi          % --- for >= 2021-05-01 END
 \fi
 \ifx\fontseriesforce\@undefined  % old
 \let\merge at kanji@series\@undefined
@@ -890,6 +1017,28 @@
     \series at maybe@drop at one@m\k at series\k at series
 }
 \fi
+\ifx\merge at font@series at without@substitution\@undefined % old
+\let\merge at kanji@series at without@substitution\@undefined
+\let\merge at kanji@series at without@substitution@\@undefined
+\let\delayed at merge@kanji at series\@undefined
+\else                                                  % 2021-05-01
+\def\merge at kanji@series at without@substitution#1{%
+  \expandafter\expandafter\expandafter
+  \merge at kanji@series at without@substitution@
+    \csname series@\k at series @#1\endcsname
+    {#1}%
+    \@nil
+}
+\def\merge at kanji@series at without@substitution@#1#2#3\@nil{%
+  \def\reserved at a{#3}%
+  \ifx\reserved at a\@empty
+    \set at target@series at kanji{#2}%
+  \else
+    \set at target@series at kanji{#1}%
+  \fi
+}
+\let\delayed at merge@kanji at series\merge at kanji@series at without@substitution
+\fi
 \newif\if at shape@roman at kanji
 \ifx\fontshapeforce\@undefined   % old
 \DeclareRobustCommand\romanshape[1]{\edef\f at shape{#1}}
@@ -899,6 +1048,7 @@
   \edef\f at shape{#1}%
 }
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \DeclareRobustCommand\romanshape[1]{\merge at font@shape{#1}}
 \DeclareRobustCommand\kanjishape[1]{\merge at kanji@shape{#1}}
 \DeclareRobustCommand\fontshape[1]{%
@@ -905,11 +1055,24 @@
   \@shape at roman@kanjitrue
   \kanjishape{#1}\romanshape{#1}%
   \@shape at roman@kanjifalse}
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanshape[1]{%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\delayed at merge@font at shape{#1}}}
+\DeclareRobustCommand\kanjishape[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\delayed at merge@kanji at shape{#1}}}
+\DeclareRobustCommand\fontshape[1]{%
+  \@shape at roman@kanjitrue
+  \kanjishape{#1}\romanshape{#1}%
+  \@shape at roman@kanjifalse}
+\fi          % --- for >= 2021-05-01 END
 \fi
 \ifx\fontshapeforce\@undefined   % old
 \let\romanshapeforce\@undefined
 \let\kanjishapeforce\@undefined
 \else                            % 2020-02-02
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
 \DeclareRobustCommand\romanshapeforce[1]{\edef\f at shape{#1}}
 \DeclareRobustCommand\kanjishapeforce[1]{\edef\k at shape{#1}}
 \DeclareRobustCommand\fontshapeforce[1]{%
@@ -916,6 +1079,20 @@
   \set at safe@kanji at shape{#1}{}%
   \edef\f at shape{#1}%
 }
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+\DeclareRobustCommand\romanshapeforce[1]{%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\edef\f at shape{#1}}}
+\DeclareRobustCommand\kanjishapeforce[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\edef\k at shape{#1}}}
+\DeclareRobustCommand\fontshapeforce[1]{%
+    \expandafter\def\expandafter\delayed at k@adjustment\expandafter
+        {\delayed at k@adjustment\set at safe@kanji at shape{#1}{}}%
+    \expandafter\def\expandafter\delayed at f@adjustment\expandafter
+        {\delayed at f@adjustment\edef\f at shape{#1}}%
+}
+\fi          % --- for >= 2021-05-01 END
 \fi
 \ifx\fontseriesforce\@undefined  % old
 \let\merge at kanji@shape\@undefined
@@ -959,6 +1136,28 @@
   \fi
 }
 \fi
+\ifx\merge at font@shape at without@substitution\@undefined  % old
+\let\merge at kanji@shape at without@substitution\@undefined
+\let\merge at kanji@shape at without@substitution@\@undefined
+\let\delayed at merge@kanji at shape\@undefined
+\else                                                  % 2021-05-01
+\def\merge at kanji@shape at without@substitution#1{%
+  \expandafter\expandafter\expandafter
+  \merge at kanji@shape at without@substitution@
+    \csname shape@\k at shape @#1\endcsname
+    {#1}%
+    \@nil
+}
+\def\merge at kanji@shape at without@substitution@#1#2#3\@nil{%
+  \def\reserved at a{#3}%
+  \ifx\reserved at a\@empty
+    \edef\k at shape{#2}%
+  \else
+    \edef\k at shape{#1}%
+  \fi
+}
+\let\delayed at merge@kanji at shape\merge at kanji@shape at without@substitution
+\fi
 \def\set at safe@kanji at shape#1#2{%
   \edef\reserved at b{\k at encoding /\k at family /\k at series/#1}%
    \ifcsname \reserved at b\endcsname
@@ -972,6 +1171,7 @@
     \@font at info{Kanji font shape `#1' undefined\MessageBreak
                 No change}%
 }
+\ifx\set at target@series\@undefined
 \DeclareRobustCommand\usekanji[4]{\kanjiencoding{#1}%
     \edef\k at family{#2}%
     \edef\k at series{#3}%
@@ -982,6 +1182,18 @@
     \edef\f at series{#3}%
     \edef\f at shape{#4}\selectfont
     \ignorespaces}
+\else
+\DeclareRobustCommand\usekanji[4]{\kanjiencoding{#1}%
+    \edef\k at family{#2}%
+    \set at target@series at kanji{#3}%
+    \edef\k at shape{#4}\selectfont
+    \ignorespaces}
+\DeclareRobustCommand\useroman[4]{\romanencoding{#1}%
+    \edef\f at family{#2}%
+    \set at target@series{#3}%
+    \edef\f at shape{#4}\selectfont
+    \ignorespaces}
+\fi
 \DeclareRobustCommand\usefont[4]{%
   \edef\tmp at item{{#1}}%
   \expandafter\expandafter\expandafter

Modified: trunk/Master/texmf-dist/tex/platex/base/pldefs.ltx
===================================================================
--- trunk/Master/texmf-dist/tex/platex/base/pldefs.ltx	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/tex/platex/base/pldefs.ltx	2021-02-13 22:17:20 UTC (rev 57730)
@@ -14,12 +14,12 @@
 %% 
 %% File: plfonts.dtx
 \ProvidesFile{pldefs.ltx}
-      [2020/02/01 v1.6v pLaTeX Kernel (Default settings)]
+      [2021/01/10 v1.7k pLaTeX Kernel (Default settings)]
 \DeclareKanjiEncodingDefaults{}{}
 \DeclareErrorKanjiFont{JY1}{mc}{m}{n}{10}
 \kanjifamily{mc}
-\kanjiseries{m}
-\kanjishape{n}
+\def\k at series{m}    % \kanjiseries{m}
+\def\k at shape{n}     % \kanjishape{n}
 \fontsize{10}{10}
 \DeclareYokoKanjiEncoding{JY1}{}{}
 \DeclareKanjiSubstitution{JY1}{mc}{m}{n}

Modified: trunk/Master/texmf-dist/tex/platex/base/ptrace.sty
===================================================================
--- trunk/Master/texmf-dist/tex/platex/base/ptrace.sty	2021-02-13 22:16:52 UTC (rev 57729)
+++ trunk/Master/texmf-dist/tex/platex/base/ptrace.sty	2021-02-13 22:17:20 UTC (rev 57730)
@@ -15,10 +15,12 @@
 %% File: plfonts.dtx
 \NeedsTeXFormat{pLaTeX2e}
 \ProvidesPackage{ptrace}
-     [2020/03/26 v1.7e Standard pLaTeX package (font tracing)]
+     [2021/01/10 v1.7k Standard pLaTeX package (font tracing)]
 \RequirePackageWithOptions{tracefnt}
 \plIncludeInRelease{2020/04/12}{\selectfont}
                    {Check \KanjiEncodingPair}%
+\ifx\delayed at f@adjustment\@undefined % --- for <= 2020-10-01 BEGIN
+%%
 \DeclareRobustCommand\selectfont{%
   \let\tmp at error@fontshape\error at fontshape
   \let\error at fontshape\error at kfontshape
@@ -76,6 +78,106 @@
     \set at fontsize\baselinestretch\f at size\f at baselineskip
   \fi
   \size at update}
+%%
+\else        % --- for <= 2020-10-01 END & for >= 2021-05-01 BEGIN
+%%
+\DeclareRobustCommand\selectfont{%
+  % !! sync with ltfsstrc.dtx 2020/12/22 v3.0n BEGIN
+  \ifx\delayed at k@adjustment\@empty
+  \else
+    \let\k at shape@saved\k at shape
+    \let\k at series@saved\k at series
+    \delayed at k@adjustment
+    \begingroup\let\f at encoding\k at encoding\let\f at family\k at family
+      \maybe at load@fontshape\endgroup
+    \ifcsname \k at encoding/\k at family/\k at series/\k at shape \endcsname
+    \else
+      \let\k at shape\k at shape@saved
+      \let\k at series\k at series@saved
+      \let\delayed at merge@kanji at shape\merge at kanji@shape
+      \let\delayed at merge@kanji at series\merge at kanji@series
+      \delayed at k@adjustment
+      \let\delayed at merge@kanji at shape\merge at kanji@shape at without@substitution
+      \let\delayed at merge@kanji at series\merge at kanji@series at without@substitution
+    \fi
+    \let\delayed at k@adjustment\@empty
+  \fi
+  \ifx\delayed at f@adjustment\@empty
+  \else
+    \let\f at shape@saved\f at shape
+    \let\f at series@saved\f at series
+    \delayed at f@adjustment
+    \maybe at load@fontshape
+    \ifcsname \f at encoding/\f at family/\f at series/\f at shape \endcsname
+    \else
+      \let\f at shape\f at shape@saved
+      \let\f at series\f at series@saved
+      \let\delayed at merge@font at shape\merge at font@shape
+      \let\delayed at merge@font at series\merge at font@series
+      \delayed at f@adjustment
+      \let\delayed at merge@font at shape\merge at font@shape at without@substitution
+      \let\delayed at merge@font at series\merge at font@series at without@substitution
+    \fi
+    \let\delayed at f@adjustment\@empty
+  \fi
+  % !! sync with ltfsstrc.dtx 2020/12/22 v3.0n END
+  \let\tmp at error@fontshape\error at fontshape
+  \let\error at fontshape\error at kfontshape
+  \edef\tmp at item{{\k at encoding}}%
+  \expandafter\expandafter\expandafter
+  \inlist@\expandafter\tmp at item\expandafter{\kyenc at list}%
+  \ifin@
+    \let\cy at encoding\k at encoding
+    \ensure at KanjiEncodingPair{t}%
+    \edef\ct at encoding{\csname t at enc@\k at encoding\endcsname}%
+  \else
+    \expandafter\expandafter\expandafter
+    \inlist@\expandafter\tmp at item\expandafter{\ktenc at list}%
+    \ifin@
+      \let\ct at encoding\k at encoding
+      \ensure at KanjiEncodingPair{y}%
+      \edef\cy at encoding{\csname y at enc@\k at encoding\endcsname}%
+    \else
+      \@latex at error{KANJI Encoding scheme `\k at encoding' unknown}\@eha
+    \fi
+  \fi
+  \let\font\tfont
+  \let\k at encoding\ct at encoding
+  \xdef\font at name{\csname\curr at kfontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \let\font\jfont
+  \let\k at encoding\cy at encoding
+  \xdef\font at name{\csname\curr at kfontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \expandafter\def\expandafter\k at encoding\tmp at item
+  \kenc at update
+  \let\error at fontshape\tmp at error@fontshape
+  \if at knjcmd \@knjcmdfalse
+    \expandafter\ifx
+    \csname rel@\k at encoding/\k at family/\k at series/\k at shape\endcsname\relax
+      \expandafter\ifx
+         \csname rel@\k at encoding/\k at family/\k at series/all\endcsname\relax
+      \else
+         \csname rel@\k at encoding/\k at family/\k at series/all\endcsname
+      \fi
+    \else
+       \csname rel@\k at encoding/\k at family/\k at series/\k at shape\endcsname
+    \fi
+  \fi
+  \let\font\afont
+  \xdef\font at name{\csname\curr at fontshape/\f at size\endcsname}%
+  \pickup at font
+  \font at name
+  \UseHook{selectfont}% since LaTeX2e 2021-05-01
+  \enc at update
+  \ifx\f at linespread\baselinestretch \else
+    \set at fontsize\baselinestretch\f at size\f at baselineskip
+  \fi
+  \size at update}
+%%
+\fi          % --- for >= 2021-05-01 END
 \plEndIncludeInRelease
 \plIncludeInRelease{0000/00/00}{\selectfont}
                    {ASCII Corporation original}%



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