summaryrefslogtreecommitdiff
path: root/language/japanese/platex/plfonts.dtx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-02-03 03:02:01 +0000
committerNorbert Preining <norbert@preining.info>2020-02-03 03:02:01 +0000
commit34897eebd22c3de968b64f09bb4a371d96cb0b89 (patch)
tree19a50e54fca63f1f6482d6cb4c2fdee676fd97b1 /language/japanese/platex/plfonts.dtx
parente05dc0bb38b16bfb9ba35591285e40af0adaadc4 (diff)
CTAN sync 202002030302
Diffstat (limited to 'language/japanese/platex/plfonts.dtx')
-rw-r--r--language/japanese/platex/plfonts.dtx677
1 files changed, 567 insertions, 110 deletions
diff --git a/language/japanese/platex/plfonts.dtx b/language/japanese/platex/plfonts.dtx
index bfe6e4913a..fead9278ea 100644
--- a/language/japanese/platex/plfonts.dtx
+++ b/language/japanese/platex/plfonts.dtx
@@ -3,7 +3,7 @@
%
% Copyright 1994-2006 ASCII Corporation.
% Copyright (c) 2010 ASCII MEDIA WORKS
-% Copyright (c) 2016-2019 Japanese TeX Development Community
+% Copyright (c) 2016-2020 Japanese TeX Development Community
%
% This file is part of the pLaTeX2e system (community edition).
% -------------------------------------------------------------
@@ -113,13 +113,27 @@
% (sync with ltfssbas.dtx 2019/08/27 v3.2d)}
% \changes{v1.6u}{2019/09/29}{Make \cs{userelfont} robust}
% \changes{v1.6u}{2019/09/29}{Make \cs{adjustbaseline} robust}
+% \changes{v1.6v}{2020/02/01}{New commands \cs{fontseriesforce} etc.
+% (sync with ltfssaxes.dtx 2019/12/16 v1.0a)}
+% \changes{v1.6v}{2020/02/01}{New commands \cs{fontshapeforce} etc.
+% (sync with ltfssaxes.dtx 2019/12/16 v1.0a)}
+% \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.6v}{2020/02/01}{\LaTeX{}$B$,(Bmweights$B%Q%C%1!<%8$r4p$K$7$?(B
+% $B%7%j!<%:$N%+%9%?%`@_Dj$rF3F~$7$?$N$G!"$3$l$r%5%]!<%H(B
+% (sync with ltfssini.dtx 2019/12/17 v3.1e)}
+% \changes{v1.6v}{2020/02/01}{Support \cs{emph} sequences
+% (sync with ltfssini.dtx 2019/12/17 v3.1e)}
+% \changes{v1.6v}{2020/02/01}{$BDj5A$r(Bpldefs$B$+$i(Bplcore$B$X0\F0(B}
+% \changes{v1.6v}{2020/02/01}{Set \cs{kanjishapedefault} explicitly to ``n''
+% (sync with fontdef.dtx 2019/12/17 v3.0e)}
% \fi
%
% \iffalse
%<*driver>
\NeedsTeXFormat{pLaTeX2e}
% \fi
-\ProvidesFile{plfonts.dtx}[2019/09/29 v1.6u pLaTeX New Font Selection Scheme]
+\ProvidesFile{plfonts.dtx}[2020/02/01 v1.6v pLaTeX New Font Selection Scheme]
% \iffalse
\documentclass{jltxdoc}
\GetFileInfo{plfonts.dtx}
@@ -1799,10 +1813,10 @@
% $BEPO?$5$l$F$$$l$P!"$3$N0z?t$OOBJ8%U%!%_%j$G$O$"$j$^$;$s$N$G!"(B
% |\@notkfam|$B%U%i%0$r??$K$7$F!"2$J8%U%!%_%j$N%k!<%A%s$K0\$j$^$9!#(B
%
-% $B$3$N$H$-!"(B|\efam@list|$B$rD4$Y$k$N$G$O$J$$$3$H$KCm0U$r$7$F$/$@$5$$!#(B
-% |\efam@list|$B$rD4$Y!"$3$l$K$J$$%U%!%_%j$rOBJ8%U%!%_%j$G$"$k$H$9$k$H!"(B
+% $B$3$N$H$-!"(B|\ffam@list|$B$rD4$Y$k$N$G$O$J$$$3$H$KCm0U$r$7$F$/$@$5$$!#(B
+% |\ffam@list|$B$rD4$Y!"$3$l$K$J$$%U%!%_%j$rOBJ8%U%!%_%j$G$"$k$H$9$k$H!"(B
% $B$?$H$($P!"2$J8%J!<%k%U%!%_%j$,Dj5A$5$l$F$$$k$1$l$I$b!"OBJ8%J!<%k%U%!%_%j(B
-% $B$,L$Dj5A$N>l9g!"(B|\fontfamily{nar}|$B$H$$$&;XDj$O!"(B|nar|$B$,(B|\efam@list|$B$K$@$1!"(B
+% $B$,L$Dj5A$N>l9g!"(B|\fontfamily{nar}|$B$H$$$&;XDj$O!"(B|nar|$B$,(B|\ffam@list|$B$K$@$1!"(B
% $BEPO?$5$l$F$$$k$?$a!"OBJ8=qBN$r%J!<%k$K$9$k$3$H$,$G$-$^$;$s!#(B
%
% $B5U$K!"(B|\kfam@list|$B$KEPO?$5$l$F$$$J$$$+$i$H$$$C$F!"(B|\k@family|$B$K(B|nar|$B$r@_Dj(B
@@ -1889,6 +1903,7 @@
\if@notkfam\if@notffam
\edef\k@family{#1}\edef\f@family{#1}%
\fi\fi}
+%</plcore>
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1900,10 +1915,86 @@
% \begin{macro}{\fontseries}
% $B=qBN$N%7%j!<%:$r;XDj$9$k%3%^%s%I$G$9!#(B
% |\fontseries|$B%3%^%s%I$OOB2$J8$NN>J}$K1F6A$7$^$9!#(B
+% \LaTeXe~2020-02-02$B$G$O(B|\merge@font@series|$B$r;H$$$^$9!#(B
% \begin{macrocode}
+%<*plcore|platexrelease>
+\ifx\fontseriesforce\@undefined % old
\DeclareRobustCommand\romanseries[1]{\edef\f@series{#1}}
\DeclareRobustCommand\kanjiseries[1]{\edef\k@series{#1}}
\DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
+\else % 2020-02-02
+\DeclareRobustCommand\romanseries[1]{\merge@font@series{#1}}
+\DeclareRobustCommand\kanjiseries[1]{\merge@kanji@series{#1}}
+\DeclareRobustCommand\fontseries[1]{\kanjiseries{#1}\romanseries{#1}}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\romanseriesforce}
+% \begin{macro}{\kanjiseriesforce}
+% \begin{macro}{\fontseriesforce}
+% $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)}
+% \begin{macrocode}
+\ifx\fontseriesforce\@undefined % old
+\let\romanseriesforce\@undefined
+\let\kanjiseriesforce\@undefined
+\else % 2020-02-02
+\DeclareRobustCommand\romanseriesforce[1]{\edef\f@series{#1}}
+\DeclareRobustCommand\kanjiseriesforce[1]{\edef\k@series{#1}}
+\DeclareRobustCommand\fontseriesforce[1]{\kanjiseriesforce{#1}\romanseriesforce{#1}}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\merge@kanji@series}
+% \begin{macro}{\merge@kanji@series@}
+% \begin{macro}{\set@target@series@kanji}
+% \cs{merge@font@series}$B$NOBJ8HG$G$9!#(B
+% \begin{macrocode}
+\ifx\fontseriesforce\@undefined % old
+\let\merge@kanji@series\@undefined
+\let\merge@kanji@series@\@undefined
+\let\set@target@series@kanji\@undefined
+\else % 2020-02-02
+\def\merge@kanji@series#1{%
+ \expandafter\expandafter\expandafter
+ \merge@kanji@series@
+ \csname series@\k@series @#1\endcsname
+ {#1}%
+ \@nil
+}
+\def\merge@kanji@series@#1#2#3\@nil{%
+ \def\@reserveda{#3}%
+ \ifx\@reserveda\@empty
+ \set@target@series@kanji{#2}%
+ \else
+ \begingroup\let\f@encoding\k@encoding\let\f@family\k@family
+ \maybe@load@fontshape\endgroup
+ \edef\@reserveda{\k@encoding /\k@family /#1/\k@shape}%
+ \ifcsname \@reserveda \endcsname
+ \set@target@series@kanji{#1}%
+ \else
+ \ifcsname \k@encoding /\k@family /#2/\k@shape \endcsname
+ \set@target@series@kanji{#2}%
+ {\let\curr@fontshape\curr@kfontshape\@font@shape@subst@warning}%
+ \else
+ \set@target@series@kanji{#3}%
+ {\let\curr@fontshape\curr@kfontshape\@font@shape@subst@warning}%
+ \fi
+ \fi
+ \fi
+}
+\def\set@target@series@kanji#1{%
+ \edef\k@series{#1}%
+ \edef\k@series{\expandafter\series@drop@one@m\k@series mm\series@drop@one@m}%
+}
+\fi
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1915,15 +2006,83 @@
% \begin{macro}{\fontshape}
% $B=qBN$N%7%'%$%W$r;XDj$9$k%3%^%s%I$G$9!#(B
% |\fontshape|$B%3%^%s%I$OOB2$J8$NN>J}$K1F6A$7$^$9!#(B
+% \LaTeXe~2020-02-02$B$G$O(B|\merge@font@shape|$B$r;H$$$^$9!#(B
% \begin{macrocode}
+\ifx\fontshapeforce\@undefined % old
\DeclareRobustCommand\romanshape[1]{\edef\f@shape{#1}}
\DeclareRobustCommand\kanjishape[1]{\edef\k@shape{#1}}
\DeclareRobustCommand\fontshape[1]{\kanjishape{#1}\romanshape{#1}}
+\else % 2020-02-02
+\DeclareRobustCommand\romanshape[1]{\merge@font@shape{#1}}
+\DeclareRobustCommand\kanjishape[1]{\merge@kanji@shape{#1}}
+\DeclareRobustCommand\fontshape[1]{\kanjishape{#1}\romanshape{#1}}
+\fi
% \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\romanshapeforce}
+% \begin{macro}{\kanjishapeforce}
+% \begin{macro}{\fontshapeforce}
+% $BL5>r7o$K%7%'%$%W$rJQ99$7$^$9!#(B
+% \changes{v1.6v}{2020/02/01}{New commands \cs{fontshapeforce} etc.
+% (sync with ltfssaxes.dtx 2019/12/16 v1.0a)}
+% \begin{macrocode}
+\ifx\fontshapeforce\@undefined % old
+\let\romanshapeforce\@undefined
+\let\kanjishapeforce\@undefined
+\else % 2020-02-02
+\DeclareRobustCommand\romanshapeforce[1]{\edef\f@shape{#1}}
+\DeclareRobustCommand\kanjishapeforce[1]{\edef\k@shape{#1}}
+\DeclareRobustCommand\fontshapeforce[1]{\kanjishapeforce{#1}\romanshapeforce{#1}}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\merge@kanji@shape}
+% \begin{macro}{\merge@kanji@shape@}
+% \cs{merge@font@shape}$B$NOBJ8HG$G$9!#(B
+% \begin{macrocode}
+\ifx\fontseriesforce\@undefined % old
+\let\merge@kanji@shape\@undefined
+\let\merge@kanji@shape@\@undefined
+\else % 2020-02-02
+\def\merge@kanji@shape#1{%
+ \expandafter\expandafter\expandafter
+ \merge@kanji@shape@
+ \csname shape@\k@shape @#1\endcsname
+ {#1}%
+ \@nil
+}
+\def\merge@kanji@shape@#1#2#3\@nil{%
+ \def\@reserveda{#3}%
+ \ifx\@reserveda\@empty
+ \edef\k@shape{#2}%
+ \else
+ \maybe@load@fontshape
+ \edef\@reserveda{\k@encoding /\k@family /\k@series/#1}%
+ \ifcsname \@reserveda\endcsname
+ \edef\k@shape{#1}%
+ \else
+ \ifcsname \k@encoding /\k@family /\k@series/#2\endcsname
+ \edef\k@shape{#2}%
+ {\let\curr@fontshape\curr@kfontshape\@font@shape@subst@warning}%
+ \else
+ \edef\k@shape{#3}%
+ {\let\curr@fontshape\curr@kfontshape\@font@shape@subst@warning}%
+ \fi
+ \fi
+ \fi
+}
+\fi
+%</plcore|platexrelease>
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
%
% \begin{macro}{\usekanji}
% \begin{macro}{\useroman}
@@ -1935,17 +2094,22 @@
% $BOBJ8$^$?$O2$J8%U%)%s%H$r@Z$jBX$($^$9!#(B
% \changes{v1.6t}{2019/09/16}{Make \cs{usefont} etc. robust
% (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)}
% \begin{macrocode}
-%</plcore>
-%<platexrelease>\plIncludeInRelease{2019/10/01}{\usefont}
-%<platexrelease> {Make robust}%
+%<platexrelease>\plIncludeInRelease{2020/02/02}{\usefont}
+%<platexrelease> {Don't call \fontseries or \fontshape}%
%<*plcore|platexrelease>
-\DeclareRobustCommand\usekanji[4]{%
- \kanjiencoding{#1}\kanjifamily{#2}\kanjiseries{#3}\kanjishape{#4}%
- \selectfont\ignorespaces}
-\DeclareRobustCommand\useroman[4]{%
- \romanencoding{#1}\romanfamily{#2}\romanseries{#3}\romanshape{#4}%
- \selectfont\ignorespaces}
+\DeclareRobustCommand\usekanji[4]{\kanjiencoding{#1}%
+ \edef\k@family{#2}%
+ \edef\k@series{#3}%
+ \edef\k@shape{#4}\selectfont
+ \ignorespaces}
+\DeclareRobustCommand\useroman[4]{\romanencoding{#1}%
+ \edef\f@family{#2}%
+ \edef\f@series{#3}%
+ \edef\f@shape{#4}\selectfont
+ \ignorespaces}
\DeclareRobustCommand\usefont[4]{%
\edef\tmp@item{{#1}}%
\expandafter\expandafter\expandafter
@@ -1955,6 +2119,22 @@
\fi}
%</plcore|platexrelease>
%<platexrelease>\plEndIncludeInRelease
+%<platexrelease>\plIncludeInRelease{2019/10/01}{\usefont}
+%<platexrelease> {Make robust}%
+%<platexrelease>\DeclareRobustCommand\usekanji[4]{%
+%<platexrelease> \kanjiencoding{#1}\kanjifamily{#2}\kanjiseries{#3}\kanjishape{#4}%
+%<platexrelease> \selectfont\ignorespaces}
+%<platexrelease>\DeclareRobustCommand\useroman[4]{%
+%<platexrelease> \romanencoding{#1}\romanfamily{#2}\romanseries{#3}\romanshape{#4}%
+%<platexrelease> \selectfont\ignorespaces}
+%<platexrelease>\DeclareRobustCommand\usefont[4]{%
+%<platexrelease> \edef\tmp@item{{#1}}%
+%<platexrelease> \expandafter\expandafter\expandafter
+%<platexrelease> \inlist@\expandafter\tmp@item\expandafter{\kenc@list}%
+%<platexrelease> \ifin@ \usekanji{#1}{#2}{#3}{#4}%
+%<platexrelease> \else\useroman{#1}{#2}{#3}{#4}%
+%<platexrelease> \fi}
+%<platexrelease>\plEndIncludeInRelease
%<platexrelease>\plIncludeInRelease{0000/00/00}{\usefont}
%<platexrelease> {ASCII Corporation original}%
%<platexrelease>\def\usekanji#1#2#3#4{%
@@ -1974,7 +2154,6 @@
%<platexrelease>\expandafter \let \csname useroman \endcsname \@undefined
%<platexrelease>\expandafter \let \csname usefont \endcsname \@undefined
%<platexrelease>\plEndIncludeInRelease
-%<*plcore>
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1987,18 +2166,250 @@
% $B$?$@$79bB.2=$N$?$a!"(B|\usekanji|$B$H(B|\useroman|$B$rE83+$7!"(B
% |\selectfont|$B$r0lEY$7$+8F$S=P$5$J$$$h$&$K$7$F$$$^$9!#(B
% \begin{macrocode}
+%<platexrelease>\plIncludeInRelease{2020/02/02}{\normalfont}
+%<platexrelease> {Don't call \fontseries or \fontshape}%
+%<*plcore|platexrelease>
\DeclareRobustCommand\normalfont{%
\kanjiencoding{\kanjiencodingdefault}%
- \kanjifamily{\kanjifamilydefault}%
- \kanjiseries{\kanjiseriesdefault}%
- \kanjishape{\kanjishapedefault}%
+ \edef\k@family{\kanjifamilydefault}%
+ \edef\k@series{\kanjiseriesdefault}%
+ \edef\k@shape{\kanjishapedefault}%
\romanencoding{\encodingdefault}%
- \romanfamily{\familydefault}%
- \romanseries{\seriesdefault}%
- \romanshape{\shapedefault}%
+ \edef\f@family{\familydefault}%
+ \edef\f@series{\seriesdefault}%
+ \edef\f@shape{\shapedefault}%
\selectfont\ignorespaces}
\adjustbaseline
\let\reset@font\normalfont
+%</plcore|platexrelease>
+%<platexrelease>\plEndIncludeInRelease
+%<platexrelease>\plIncludeInRelease{0000/00/00}{\normalfont}
+%<platexrelease> {ASCII Corporation original}%
+%<platexrelease>\DeclareRobustCommand\normalfont{%
+%<platexrelease> \kanjiencoding{\kanjiencodingdefault}%
+%<platexrelease> \kanjifamily{\kanjifamilydefault}%
+%<platexrelease> \kanjiseries{\kanjiseriesdefault}%
+%<platexrelease> \kanjishape{\kanjishapedefault}%
+%<platexrelease> \romanencoding{\encodingdefault}%
+%<platexrelease> \romanfamily{\familydefault}%
+%<platexrelease> \romanseries{\seriesdefault}%
+%<platexrelease> \romanshape{\shapedefault}%
+%<platexrelease> \selectfont\ignorespaces}
+%<platexrelease>\adjustbaseline
+%<platexrelease>\let\reset@font\normalfont
+%<platexrelease>\plEndIncludeInRelease
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \begin{macro}{\bfseries@mc}
+% \begin{macro}{\bfseries@gt}
+% \begin{macro}{\mdseries@mc}
+% \begin{macro}{\mdseries@gt}
+% \LaTeXe~2020-02-02$B$G$O(Bmweights$B%Q%C%1!<%8$r4p$K$7$?(B
+% $B2$J8%U%)%s%H$N%7%j!<%:$N%+%9%?%`@_Dj$,F3F~$5$l$F$$$^$9$N$G!"(B
+% p\LaTeXe{}$B$NOBJ8%U%)%s%H$G$b$3$l$r%5%]!<%H$7$^$9!#(B
+% \changes{v1.6v}{2020/02/01}{\LaTeX{}$B$,(Bmweights$B%Q%C%1!<%8$r4p$K$7$?(B
+% $B%7%j!<%:$N%+%9%?%`@_Dj$rF3F~$7$?$N$G!"$3$l$r%5%]!<%H(B
+% (sync with ltfssini.dtx 2019/12/17 v3.1e)}
+% \begin{macrocode}
+%<*plcore|platexrelease>
+\ifx\bfseries@rm\@undefined % old
+\let\bfseries@mc\@undefined
+\let\bfseries@gt\@undefined
+\let\mdseries@mc\@undefined
+\let\mdseries@gt\@undefined
+\else % 2020-02-02
+\edef\bfseries@mc{\bfdefault}% b
+\edef\bfseries@gt{\bfdefault}% b
+\edef\mdseries@mc{\mddefault}% m
+\edef\mdseries@gt{\mddefault}% m
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\expand@font@defaults}
+% $B%U%!%_%j$N%G%U%)%k%H$r40A4E83+$7$^$9!#(B
+% $B$^$:!"%*%j%8%J%k$N(B\LaTeX{}$B$NDj5A$r:\$;$F$*$-$^$9!#(B
+% \begin{macrocode}
+%\def\expand@font@defaults{%
+% \edef\rmdef@ult{\rmdefault}%
+% \edef\sfdef@ult{\sfdefault}%
+% \edef\ttdef@ult{\ttdefault}%
+% \edef\bfdef@ult{\bfdefault}%
+% \edef\mddef@ult{\mddefault}%
+% \edef\famdef@ult{\familydefault}%
+%}
+% \end{macrocode}
+% p\LaTeX{}$B$G$O!"0J2<$N%3!<%I$rKvHx$KDI2C$7$^$9!#(B
+% \begin{macrocode}
+\ifx\expand@font@defaults\@undefined\else % 2020-02-02
+\g@addto@macro\expand@font@defaults{%
+ \edef\mcdef@ult{\mcdefault}%
+ \edef\gtdef@ult{\gtdefault}%
+ \edef\kanjidef@ult{\kanjifamilydefault}%
+}
+\fi
+% \end{macrocode}
+%
+% \end{macro}
+%
+% \begin{macro}{\bfseries}
+% \begin{macro}{\mdseries}
+% $B%+%9%?%`@_Dj$r%A%'%C%/$7$^$9!#(B
+% \begin{macrocode}
+\ifx\bfseries@rm\@undefined\else % 2020-02-02
+\DeclareRobustCommand\bfseries{%
+ \not@math@alphabet\bfseries\mathbf
+ \expand@font@defaults
+ \romanseries{% changed \fontseries -> \romanseries
+ \ifx\f@family\rmdef@ult \bfseries@rm
+ \else\ifx\f@family\sfdef@ult \bfseries@sf
+ \else\ifx\f@family\ttdef@ult \bfseries@tt
+ \else \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@family\mcdef@ult \bfseries@mc
+ \else\ifx\k@family\gtdef@ult \bfseries@gt
+ \else \bfdefault
+ \fi\fi
+ }%
+% \end{macrocode}
+% $B$3$3$^$G!#(B
+% \begin{macrocode}
+ \selectfont
+}
+\DeclareRobustCommand\mdseries{%
+ \not@math@alphabet\mdseries\relax
+ \expand@font@defaults
+ \romanseries{% changed \fontseries -> \romanseries
+ \ifx\f@family\rmdef@ult \mdseries@rm
+ \else\ifx\f@family\sfdef@ult \mdseries@sf
+ \else\ifx\f@family\ttdef@ult \mdseries@tt
+ \else \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@family\mcdef@ult \mdseries@mc
+ \else\ifx\k@family\gtdef@ult \mdseries@gt
+ \else \mddefault
+ \fi\fi
+ }%
+% \end{macrocode}
+% $B$3$3$^$G!#(B
+% \begin{macrocode}
+ \selectfont
+}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\prepare@family@series@update@kanji}
+% \begin{macro}{\@meta@family@list@kanji}
+% \begin{macro}{\update@series@target@value@kanji}
+% |\prepare@family@series@update|$B$NOBJ8HG$G$9!#(B
+% \begin{macrocode}
+\ifx\prepare@family@series@update\@undefined % old
+\let\prepare@family@series@update@kanji\@undefined
+\let\@meta@family@list@kanji\@undefined
+\else % 2020-02-02
+\def\prepare@family@series@update#1#2{%
+ \expand@font@defaults
+ \let\target@series@value\@empty
+ \def\target@meta@family@value{#1}%
+ \let\@elt\update@series@target@value
+ \@meta@family@list
+ \let\@elt\relax
+ \romanfamily#2% % changed \fontfamily -> \romanfamily
+ \ifx\target@series@value\@empty
+ \else
+ \maybe@load@fontshape
+ \let\f@series\target@series@value
+ \fi
+}
+\def\prepare@family@series@update@kanji#1#2{%
+ \expand@font@defaults
+ \let\target@series@value\@empty
+ \def\target@meta@family@value{#1}%
+ \let\@elt\update@series@target@value@kanji
+ \@meta@family@list@kanji
+ \let\@elt\relax
+ \kanjifamily#2%
+ \ifx\target@series@value\@empty
+ \else
+ \begingroup\let\f@encoding\k@encoding\let\f@family\k@family
+ \maybe@load@fontshape\endgroup
+ \let\k@series\target@series@value
+ \fi
+}
+\def\@meta@family@list@kanji{\@elt{mc}\@elt{gt}}
+\def\update@series@target@value@kanji#1{%
+ \def\@reserveda{#1}%
+ \ifx\target@meta@family@value\@reserveda % rm -> rm do nothing
+ \else
+ \expandafter\ifx\csname#1def@ult\endcsname\k@family
+ \let\@elt\@gobble
+ \expandafter\let\expandafter\@reservedb
+ \csname mdseries@\target@meta@family@value\endcsname
+ \expandafter\let\expandafter\@reservedc
+ \csname bfseries@\target@meta@family@value\endcsname
+ \expandafter\ifx\csname mdseries@#1\endcsname\k@series
+ \let\target@series@value\@reservedb
+ \else\expandafter\ifx\csname bfseries@#1\endcsname\k@series
+ \let\target@series@value\@reservedc
+ \else\ifx\k@series\mddef@ult \let\target@series@value\@reservedb
+ \else\ifx\k@series\bfdef@ult \let\target@series@value\@reservedc
+ \fi\fi\fi\fi
+ \fi
+ \fi
+}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\init@series@setup}
+% |\begin{document}|$B$G<B9T$5$l$k=i4|2=$G$9!#(B
+% $B$^$:!"%*%j%8%J%k$N(B\LaTeX{}$B$NDj5A$r:\$;$F$*$-$^$9!#(B
+% \begin{macrocode}
+%\def\init@series@setup{%
+% \ifx\bfseries@rm@kernel\bfseries@rm
+% \expandafter\in@\expandafter{\rmdefault}{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt}%
+% \ifin@ \else \def\bfseries@rm{b}\fi\fi
+% \ifx\bfseries@sf@kernel\bfseries@sf
+% \expandafter\in@\expandafter{\sfdefault}{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt}%
+% \ifin@ \else \def\bfseries@sf{b}\fi\fi
+% \ifx\bfseries@tt@kernel\bfseries@tt
+% \expandafter\in@\expandafter{\ttdefault}{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt}%
+% \ifin@ \else \def\bfseries@tt{b}\fi\fi
+% \expand@font@defaults
+% \ifx\famdef@ult\rmdef@ult \rmfamily
+% \else\ifx\famdef@ult\sfdef@ult \sffamily
+% \else\ifx\famdef@ult\ttdef@ult \ttfamily
+% \fi\fi\fi
+%}%
+% \end{macrocode}
+% $B$3$3$+$i$,(Bp\LaTeX{}$B$K$h$kDI2C%3!<%I$G$9!#(B
+% \begin{macrocode}
+\ifx\init@series@setup\@undefined\else % 2020-02-02
+\g@addto@macro\init@series@setup{%
+ \ifx\kanjidef@ult\mcdef@ult \mcfamily
+ \else\ifx\kanjidef@ult\gtdef@ult \gtfamily
+ \fi\fi
+}%
+\fi
% \end{macrocode}
% \end{macro}
%
@@ -2009,16 +2420,109 @@
% $B$3$l$i$O!"(B|\rmfamily|$B$J$I$KBP1~$7$^$9!#(B
% |\mathmc|$B$H(B|\mathgt|$B$O?t<0Fb$GMQ$$$k$H$-$N%3%^%s%IL>$G$9!#(B
% \begin{macrocode}
+\ifx\prepare@family@series@update@kanji\@undefined % 2020-02-02
\DeclareRobustCommand\mcfamily
{\not@math@alphabet\mcfamily\mathmc
\kanjifamily\mcdefault\selectfont}
\DeclareRobustCommand\gtfamily
{\not@math@alphabet\gtfamily\mathgt
\kanjifamily\gtdefault\selectfont}
+\else
+\DeclareRobustCommand\mcfamily
+ {\not@math@alphabet\mcfamily\mathmc
+ \prepare@family@series@update@kanji{mc}\mcdefault\selectfont}
+\DeclareRobustCommand\gtfamily
+ {\not@math@alphabet\gtfamily\mathgt
+ \prepare@family@series@update@kanji{gt}\gtdefault\selectfont}
+\fi
+%</plcore|platexrelease>
% \end{macrocode}
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\textmc}
+% \begin{macro}{\textgt}
+% \changes{v1.3b}{1997/01/28}{\cs{textmc}, \cs{textgt}$B$NF0:n=$@5(B}
+% \changes{v1.6v}{2020/02/01}{$BDj5A$r(Bpldefs$B$+$i(Bplcore$B$X0\F0(B}
+% $B%F%-%9%H%U%!%_%j$r@Z$jBX$($k$?$a$N%3%^%s%I$G$9!#(B
+% \file{ltfntcmd.dtx}$B$GDj5A$5$l$F$$$k(B|\textrm|$B$J$I$KBP1~$7$^$9!#(B
+% \begin{macrocode}
+%<*plcore>
+\DeclareTextFontCommand{\textmc}{\mcfamily}
+\DeclareTextFontCommand{\textgt}{\gtfamily}
+%</plcore>
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\em}
+% \begin{macro}{\emph}
+% \begin{macro}{\eminnershape}
+% \changes{v1.3d}{1997/06/25}{\cs{em},\cs{emph}$B$GOBJ8$r6/D4=qBN$K(B}
+% $B=>Mh$O(B|\em|, |\emph|$B$GOBJ8%U%)%s%H$N@Z$jBX$($O9T$C$F$$$^$;$s$G$7$?$,!"(B
+% $BOBJ8%U%)%s%H$b(B|\gtfamily|$B$K@Z$jBX$($k$h$&$K$7$^$7$?!#(B
+%
+% [p\LaTeXe~2016/04/17]
+% \LaTeX\ \texttt{<2015/01/01>}$B$GDI2C$5$l$?(B|\eminnershape|$B$b<h$jF~$l!"(B
+% $B6/D4%3%^%s%I$rF~$l;R$K$9$k>l9g$N=qBN$r<+M3$K:FDj5A$G$-$k$h$&$K$J$j$^$7$?!#(B
+% \changes{v1.6}{2016/02/01}{\LaTeX\ \texttt{!<2015/01/01!>}$B$G$N(B\cs{em}$B$N(B
+% $BDj5AJQ99$KBP1~!#(B\cs{eminnershape}$B$rDI2C!#(B}
+%
+% [p\LaTeXe~2020-02-02]
+% \LaTeX\ \texttt{<2020-02-02>}$B$GDI2C$5$l$?(B|\DeclareEmphSequence|$B$r(B
+% $B%5%]!<%H$7$^$7$?!#(B
+% \changes{v1.6v}{2020/02/01}{Support \cs{emph} sequences
+% (sync with ltfssini.dtx 2019/12/17 v3.1e)}
+% \changes{v1.6v}{2020/02/01}{$BDj5A$r(Bpldefs$B$+$i(Bplcore$B$X0\F0(B}
+% \begin{macrocode}
+%<platexrelease>\plIncludeInRelease{2020/02/02}{\DeclareEmphSequence}
+%<platexrelease> {Nested emph}%
+%<*plcore|platexrelease>
+\ifx\DeclareEmphSequence\@undefined % old
+\DeclareRobustCommand\em
+ {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
+ \eminnershape \else \gtfamily \itshape \fi}%
+\else
+\DeclareRobustCommand\em{% % 2020-02-02
+ \@nomath\em
+ \ifx\emfontdeclare@clist\@empty
+ \ifdim \fontdimen\@ne\font >\z@
+ \eminnershape \else \gtfamily \itshape \fi
+ \else
+ \edef\em@currfont{\csname\curr@fontshape/\f@size\endcsname}%
+ \expandafter\do@emfont@update\emfontdeclare@clist\do@emfont@update
+ \fi
+}
+\fi
+\def\eminnershape{\mcfamily \upshape}%
+%</plcore|platexrelease>
+%<platexrelease>\plEndIncludeInRelease
+%<platexrelease>\plIncludeInRelease{2016/04/17}{\DeclareEmphSequence}
+%<platexrelease> {Support \eminnershape}%
+%<platexrelease>\DeclareRobustCommand\em
+%<platexrelease> {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
+%<platexrelease> \eminnershape \else \gtfamily \itshape \fi}%
+%<platexrelease>\def\eminnershape{\mcfamily \upshape}%
+%<platexrelease>\plEndIncludeInRelease
+%<platexrelease>\plIncludeInRelease{2015/01/01}{\DeclareEmphSequence}
+%<platexrelease> {Non-supported \eminnershape}%
+%<platexrelease>\DeclareRobustCommand\em
+%<platexrelease> {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
+%<platexrelease> \mcfamily \upshape \else \gtfamily \itshape \fi}
+%<platexrelease>\def\eminnershape{\upshape}% defined by LaTeX, but not used by pLaTeX
+%<platexrelease>\plEndIncludeInRelease
+%<platexrelease>\plIncludeInRelease{0000/00/00}{\DeclareEmphSequence}
+%<platexrelease> {ASCII Corporation original}%
+%<platexrelease>\DeclareRobustCommand\em
+%<platexrelease> {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
+%<platexrelease> \mcfamily \upshape \else \gtfamily \itshape \fi}
+%<platexrelease>\let\eminnershape\@undefined
+%<platexrelease>\plEndIncludeInRelease
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
%
% \begin{macro}{\romanprocess@table}
% \begin{macro}{\kanjiprocess@table}
@@ -2027,6 +2531,7 @@
% \changes{v1.3g}{1999/04/05}{plpatch.ltx$B$NFbMF$rH?1G!#(B
% $B$"$j$,$H$&!";3K\$5$s!#(B}
% \begin{macrocode}
+%<*plcore>
\let\romanprocess@table\process@table
\def\kanjiprocess@table{%
\kanjiencoding{\kanjiencodingdefault}%
@@ -2040,6 +2545,7 @@
}
\@onlypreamble\romanprocess@table
\@onlypreamble\kanjiprocess@table
+%</plcore>
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -2060,7 +2566,6 @@
% $BJd@5$KDI?o$9$k$h$&$K$7$F$$$^$9!#(B
% \changes{v1.6g}{2017/03/07}{$B%Y!<%9%i%$%sJd@5NL$r=$@5(B}
% \begin{macrocode}
-%</plcore>
%<platexrelease>\plIncludeInRelease{2017/04/08}{\textunderscore}
%<platexrelease> {Baseline shift for \textunderscore}%
%<*plcore|platexrelease>
@@ -2610,6 +3115,39 @@
% \end{macro}
%
%
+% \begin{macro}{\<}
+% $B:G8e$K!"(B|\inhibitglue|$B$N4JN,7A$rDj5A$7$^$9!#(B
+% $B$3$N%3%^%s%I$O!"OBJ8%U%)%s%H$N%a%H%j%C%/>pJs$+$i!"<+F0E*$KA^F~$5$l$k(B
+% $B%0%k!<$NA^F~$r6X;_$7$^$9!#(B
+%
+% 2014$BG/$N(Bp\TeX{}$B$N(B|\inhibitglue|$B$N%P%0=$@5$KH<$$!"(B
+% |\inhibitglue|$B$,?bD>%b!<%I$G$O8z$+$J$/$J$j$^$7$?!#(B
+% \LaTeX{}$B$G$O?bD>%b!<%I$H?eJ?%b!<%I$N6hJL$,1#$5$l$F$$$^$9$N$G!"(B
+% p\LaTeX{}$B$NDI2CL?Na$G$"$k(B|\<|$B$OCJMnF,$G$b8z$/$h$&$K=$@5$7$^$9!#(B
+%
+% |\DeclareRobustCommand|$B$r;H$&$H(B|\protect|$B$N1F6A$GA0J}$NJ8;z$KBP$9$k(B
+% |\inhibitglue|$B$,8z$+$J$/$J$k$N$G!"(Be-\TeX{}$B$N(B|\protected|$B$,I,MW$G$9!#(B
+% \changes{v1.6i}{2017/09/24}{\cs{<}$B$,CJMnF,$G$b8z$/$h$&$K$7$?(B}
+% \changes{v1.6v}{2020/02/01}{$BDj5A$r(Bpldefs$B$+$i(Bplcore$B$X0\F0(B}
+% \begin{macrocode}
+%<platexrelease>\plIncludeInRelease{2017/10/28}{\<}
+%<platexrelease> {\inhibitglue in vertical mode}%
+%<*plcore|platexrelease>
+\ifx\protected\@undefined
+\def\<{\inhibitglue}
+\else
+\protected\def\<{\ifvmode\leavevmode\fi\inhibitglue}
+\fi
+%</plcore|platexrelease>
+%<platexrelease>\plEndIncludeInRelease
+%<platexrelease>\plIncludeInRelease{0000/00/00}{\<}
+%<platexrelease> {ASCII Corporation original}%
+%<platexrelease>\def\<{\inhibitglue}
+%<platexrelease>\plEndIncludeInRelease
+% \end{macrocode}
+% \end{macro}
+%
+%
% \subsection{$B%G%U%)%k%H@_Dj%U%!%$%k$NFI$_9~$_(B}
% $B%G%U%)%k%H@_Dj%U%!%$%k(B\file{pldefs.ltx}$B$O!"$b$H$b$H(B\file{plcore.ltx}$B$NESCf$G(B
% $BFI$_9~$s$G$$$^$7$?$,!"(B2018$BG/0J9_$N?7$7$$%3%_%e%K%F%#HG(B\pLaTeX{}$B$G$O(B
@@ -2619,8 +3157,6 @@
% \file{plcore.ltx}$B$+$i(B\file{platex.ltx}$B$X0\F0(B}
%
%
-%
-%
% \section{$B%G%U%)%k%H@_Dj%U%!%$%k(B}\label{plfonts:pldefs}
% $B$3$3$G$O!"%U%)!<%^%C%H%U%!%$%k$KFI$_9~$^$l$k%G%U%)%k%HCM$r@_Dj$7$F$$$^$9!#(B
% $B$3$N@a$G$NFbMF$O(B\file{pldefs.ltx}$B$K=PNO$5$l$^$9!#(B
@@ -2634,7 +3170,7 @@
% \begin{macrocode}
%<*pldefs>
\ProvidesFile{pldefs.ltx}
- [2019/09/16 v1.6t pLaTeX Kernel (Default settings)]
+ [2020/02/01 v1.6v pLaTeX Kernel (Default settings)]
%</pldefs>
% \end{macrocode}
%
@@ -2673,13 +3209,18 @@
\KanjiEncodingPair{JY1}{JT1}
% \end{macrocode}
% $B%U%)%s%HB0@-$N%G%U%)%k%HCM!'(B
+% \LaTeXe~2019-10-01$B$^$G$O(B|\shapedefault|$B$O(B|\updefault|$B$G$7$?$,!"(B
+% \LaTeXe~2020-02-02$B$G(B|\updefault|$B$,(B``n''$B$+$i(B``up''$B$X$H=$@5$5$l$?$3$H$K(B
+% $BH<$$!"(B|\shapedefault|$B$OL@<(E*$K(B``n''$B$K@_Dj$5$l$^$7$?!#(B
+% \changes{v1.6v}{2020/02/01}{Set \cs{kanjishapedefault} explicitly to ``n''
+% (sync with fontdef.dtx 2019/12/17 v3.0e)}
% \begin{macrocode}
\newcommand\mcdefault{mc}
\newcommand\gtdefault{gt}
\newcommand\kanjiencodingdefault{JY1}
\newcommand\kanjifamilydefault{\mcdefault}
\newcommand\kanjiseriesdefault{\mddefault}
-\newcommand\kanjishapedefault{\updefault}
+\newcommand\kanjishapedefault{n}% formerly \updefault
% \end{macrocode}
% $BOBJ8%(%s%3!<%I$N;XDj!'(B
% \begin{macrocode}
@@ -2700,57 +3241,6 @@
\fontencoding{JY1}\selectfont
% \end{macrocode}
%
-% \begin{macro}{\textmc}
-% \begin{macro}{\textgt}
-% \changes{v1.3b}{1997/01/28}{\cs{textmc}, \cs{textgt}$B$NF0:n=$@5(B}
-% $B%F%-%9%H%U%!%_%j$r@Z$jBX$($k$?$a$N%3%^%s%I$G$9!#(B
-% \file{ltfntcmd.dtx}$B$GDj5A$5$l$F$$$k(B|\textrm|$B$J$I$KBP1~$7$^$9!#(B
-% \begin{macrocode}
-\DeclareTextFontCommand{\textmc}{\mcfamily}
-\DeclareTextFontCommand{\textgt}{\gtfamily}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macro}{\em}
-% \begin{macro}{\emph}
-% \begin{macro}{\eminnershape}
-% \changes{v1.3d}{1997/06/25}{\cs{em},\cs{emph}$B$GOBJ8$r6/D4=qBN$K(B}
-% \changes{v1.6}{2016/02/01}{\LaTeX\ \texttt{!<2015/01/01!>}$B$G$N(B\cs{em}$B$N(B
-% $BDj5AJQ99$KBP1~!#(B\cs{eminnershape}$B$rDI2C!#(B}
-% $B=>Mh$O(B|\em|, |\emph|$B$GOBJ8%U%)%s%H$N@Z$jBX$($O9T$C$F$$$^$;$s$G$7$?$,!"(B
-% $BOBJ8%U%)%s%H$b(B|\gtfamily|$B$K@Z$jBX$($k$h$&$K$7$^$7$?!#(B
-% \LaTeX\ \texttt{<2015/01/01>}$B$GDI2C$5$l$?(B|\eminnershape|$B$b<h$jF~$l!"(B
-% $B6/D4%3%^%s%I$rF~$l;R$K$9$k>l9g$N=qBN$r<+M3$K:FDj5A$G$-$k$h$&$K$J$j$^$7$?!#(B
-% \begin{macrocode}
-%</pldefs>
-%<platexrelease>\plIncludeInRelease{2016/04/17}{\eminnershape}{\eminnershape}%
-%<*pldefs|platexrelease>
-\DeclareRobustCommand\em
- {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
- \eminnershape \else \gtfamily \itshape \fi}%
-\def\eminnershape{\mcfamily \upshape}%
-%</pldefs|platexrelease>
-%<platexrelease>\plEndIncludeInRelease
-%<platexrelease>\plIncludeInRelease{2015/01/01}{\eminnershape}{\eminnershape}%
-%<platexrelease>\DeclareRobustCommand\em
-%<platexrelease> {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
-%<platexrelease> \mcfamily \upshape \else \gtfamily \itshape \fi}
-%<platexrelease>\def\eminnershape{\upshape}% defined by LaTeX, but not used by pLaTeX
-%<platexrelease>\plEndIncludeInRelease
-%<platexrelease>\plIncludeInRelease{0000/00/00}{\eminnershape}{\eminnershape}%
-%<platexrelease>\DeclareRobustCommand\em
-%<platexrelease> {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
-%<platexrelease> \mcfamily \upshape \else \gtfamily \itshape \fi}
-%<platexrelease>\let\eminnershape\@undefined
-%<platexrelease>\plEndIncludeInRelease
-%<*pldefs>
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-%
-%
% \changes{v1.3b}{1997/01/30}{$B?t<0MQ%U%)%s%H$N@k8@$r%/%i%9%U%!%$%k$K0\F0$7$?(B}
%
%
@@ -2828,39 +3318,6 @@
\jcharwidowpenalty=500
% \end{macrocode}
%
-% \begin{macro}{\<}
-% $B:G8e$K!"(B|\inhibitglue|$B$N4JN,7A$rDj5A$7$^$9!#(B
-% $B$3$N%3%^%s%I$O!"OBJ8%U%)%s%H$N%a%H%j%C%/>pJs$+$i!"<+F0E*$KA^F~$5$l$k(B
-% $B%0%k!<$NA^F~$r6X;_$7$^$9!#(B
-%
-% 2014$BG/$N(Bp\TeX{}$B$N(B|\inhibitglue|$B$N%P%0=$@5$KH<$$!"(B
-% |\inhibitglue|$B$,?bD>%b!<%I$G$O8z$+$J$/$J$j$^$7$?!#(B
-% \LaTeX{}$B$G$O?bD>%b!<%I$H?eJ?%b!<%I$N6hJL$,1#$5$l$F$$$^$9$N$G!"(B
-% p\LaTeX{}$B$NDI2CL?Na$G$"$k(B|\<|$B$OCJMnF,$G$b8z$/$h$&$K=$@5$7$^$9!#(B
-%
-% |\DeclareRobustCommand|$B$r;H$&$H(B|\protect|$B$N1F6A$GA0J}$NJ8;z$KBP$9$k(B
-% |\inhibitglue|$B$,8z$+$J$/$J$k$N$G!"(Be-\TeX{}$B$N(B|\protected|$B$,I,MW$G$9!#(B
-% \changes{v1.6i}{2017/09/24}{\cs{<}$B$,CJMnF,$G$b8z$/$h$&$K$7$?(B}
-% \begin{macrocode}
-%</pldefs>
-%<platexrelease>\plIncludeInRelease{2017/10/28}{\<}
-%<platexrelease> {\inhibitglue in vertical mode}%
-%<*pldefs|platexrelease>
-\ifx\protected\@undefined
-\def\<{\inhibitglue}
-\else
-\protected\def\<{\ifvmode\leavevmode\fi\inhibitglue}
-\fi
-%</pldefs|platexrelease>
-%<platexrelease>\plEndIncludeInRelease
-%<platexrelease>\plIncludeInRelease{0000/00/00}{\<}
-%<platexrelease> {ASCII Corporation original}%
-%<platexrelease>\def\<{\inhibitglue}
-%<platexrelease>\plEndIncludeInRelease
-%<*pldefs>
-% \end{macrocode}
-% \end{macro}
-%
% $B$3$3$^$G$,!"(B\file{pldefs.ltx}$B$NFbMF$G$9!#(B
% \begin{macrocode}
%</pldefs>