summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/plautopatch/pxstfloats.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-09-05 22:25:35 +0000
committerKarl Berry <karl@freefriends.org>2019-09-05 22:25:35 +0000
commit1047c66359c02d8f8852e0dbdd69f5cf1cd1a76b (patch)
treec8c7a0a3b3a4f6c22fe3a43155cee7b7cdfc29d5 /Master/texmf-dist/tex/latex/plautopatch/pxstfloats.sty
parent60c2355e3e1171022ea67426855e5c475fc441eb (diff)
plautopatch (5sep19)
git-svn-id: svn://tug.org/texlive/trunk@52034 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/plautopatch/pxstfloats.sty')
-rw-r--r--Master/texmf-dist/tex/latex/plautopatch/pxstfloats.sty106
1 files changed, 106 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/plautopatch/pxstfloats.sty b/Master/texmf-dist/tex/latex/plautopatch/pxstfloats.sty
new file mode 100644
index 00000000000..fe199749312
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/plautopatch/pxstfloats.sty
@@ -0,0 +1,106 @@
+%
+% 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 `pxstfloats.sty' is based on:
+% * stfloats.sty in sttools (2016/06/28 v3.2)
+% Many thanks to lltjp-stfloats.sty in LuaTeX-ja project.
+%
+
+\NeedsTeXFormat{pLaTeX2e}
+\ProvidesPackage{pxstfloats}
+ [2017/02/19 v0.2 stfloats package for pLaTeX]
+\RequirePackage{stfloats}
+
+%% mostly based on \fn@makecol in stfloats.sty, and
+%% the additions for supporting pLaTeX are based on
+%% pLaTeX2e 2017/04/08 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
+ \iftdir\vbox{\hskip\z@}\fi %% 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 2017/04/08 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
+ \iftdir\vbox{\hskip\z@}\fi %% 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