% % pxstfloats.sty % written by Hironobu Yamashita (@aminophen) % % This package is actually part of the pxsttools bundle, but % for now distributed as part of the plautopatch bundle. % https://github.com/aminophen/plautopatch % % This package is expected to be compatible with % * stfloats.sty in sttools % (2012/05/29 v1.1 -- 2017/03/27 v3.3) % * plcore.ltx in platex % (2001/09/26 v1.2a -- 2021/03/25 v1.3i) % Many thanks to lltjp-stfloats.sty in LuaTeX-ja project. % \NeedsTeXFormat{pLaTeX2e} \ProvidesPackage{pxstfloats} [2021/05/24 v0.2a stfloats package for pLaTeX] \RequirePackage{stfloats} \ifx\pltx@adjust@wd@outputbox\@undefined % pLaTeX2e <2020-10-01>+2 or older \ifx\pdfprimitive\@undefined % just in case ... \def\pltx@adjust@wd@outputbox{% \ifydir\else\vbox{\hskip\z@}\fi} \else % same as plcore.dtx 2021/03/25 v1.3i \def\pltx@adjust@wd@outputbox{% \ifydir\else\vbox{\pdfprimitive\everypar{}\hskip\z@}\fi} \fi \fi %% mostly based on \fn@makecol in stfloats.sty, and %% the additions for supporting pLaTeX are based on %% pLaTeX2e 2021-06-01 community ed. %% the code is essentially compatible with %% fnpos.sty (yafoot) 1999/07/14 v1.0 %% |\makeFNmid| + |\makeFNbelow| status. \gdef\pxstfl@fnbelowfl@makecol{% \setbox\@outputbox \box\@cclv \let\@elt\relax \xdef\@freelist{\@freelist\@midlist}% \global \let \@midlist \@empty \@combinefloats \ifvoid\footins \else \setbox\@outputbox \vbox {% \boxmaxdepth \@maxdepth \unvbox \@outputbox \vskip \skip\footins \color@begingroup \normalcolor \footnoterule \unvbox \footins \color@endgroup }% \fi \ifvbox\@kludgeins \@makespecialcolbox \else \setbox\@outputbox \vbox to\@colht {% \@texttop \dimen@ \dp\@outputbox \unvbox \@outputbox \pltx@adjust@wd@outputbox %% for pLaTeX \vskip -\dimen@ \@textbottom }% \fi \global \maxdepth \@maxdepth } %% mostly based on \@makecol in latex.ltx, and %% the additions for supporting pLaTeX are based on %% pLaTeX2e 2021-06-01 community ed. %% the code is essentially compatible with %% fnpos.sty (yafoot) 1999/07/14 v1.0 %% |\makeFNmid| + |\makeFNabove| status. \gdef\pxstfl@fnabovefl@makecol {% \ifvoid\footins \setbox\@outputbox \box\@cclv \else \setbox\@outputbox \vbox {% \boxmaxdepth \@maxdepth \unvbox \@cclv \vskip \skip\footins \color@begingroup \normalcolor \footnoterule \unvbox \footins \color@endgroup }% \fi \let\@elt\relax \xdef\@freelist{\@freelist\@midlist}% \global \let \@midlist \@empty \@combinefloats \ifvbox\@kludgeins \@makespecialcolbox \else \setbox\@outputbox \vbox to\@colht {% \@texttop \dimen@ \dp\@outputbox \unvbox \@outputbox \pltx@adjust@wd@outputbox %% for pLaTeX \vskip -\dimen@ \@textbottom }% \fi \global \maxdepth \@maxdepth } %% the definition \fnunderfloat is unnecessary, as stfloats.sty %% has already defined it. others should be re-declared here \def\fnbelowfloat{\global\let\@makecol\pxstfl@fnbelowfl@makecol} \def\fnabovefloat{\global\let\@makecol\pxstfl@fnabovefl@makecol} %% all done \endinput