summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/plain/misc
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-09-14 00:54:47 +0000
committerKarl Berry <karl@freefriends.org>2009-09-14 00:54:47 +0000
commit5fd4c5ab02bceb9a6c3085484c208dd114c81091 (patch)
treeab4a7b56ac3fb69c86c60d2f97b7761868d4c485 /Master/texmf-dist/tex/plain/misc
parent6860636ba19674e7a3d1f10be92700ec5d08705f (diff)
placeins-plain update
git-svn-id: svn://tug.org/texlive/trunk@15279 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/plain/misc')
-rw-r--r--Master/texmf-dist/tex/plain/misc/placeins.tex135
1 files changed, 0 insertions, 135 deletions
diff --git a/Master/texmf-dist/tex/plain/misc/placeins.tex b/Master/texmf-dist/tex/plain/misc/placeins.tex
deleted file mode 100644
index 1f3a7211c47..00000000000
--- a/Master/texmf-dist/tex/plain/misc/placeins.tex
+++ /dev/null
@@ -1,135 +0,0 @@
-% P L A C E I N S . T E X ver 2.0 Mar 3, 1995
-%
-% By Donald Arseneau <asnd@reg.triumf.ca>
-%
-% Insertions that keep their place.
-%
-% This TeX file provides various mechanisms (for plain TeX and close
-% relatives) to let insertions (footnotes, topins, pageins, etc.) float
-% within their appropriate section, but to prevent them from intruding
-% into the following section, even when sections do not normally begin
-% a new page. (If your sections normally begin a new page, just use
-% \supereject to flush out insertions.)
-%
-% Different combinations of insertions can be controlled with different
-% commands:
-%
-% \par\penalty-20029
-% If there are any insertions that will not fit on the current page,
-% a \supereject is performed and the following text will continue at
-% the top of a page after all insertions. If all insertions do fit
-% on the current page, then the following text will continue
-% immediately on this page.
-% \par\penalty-20030
-% Like above, except that if there are any footnotes at all on the
-% current page, the section must begin on the next page. (This is so
-% no footnote text from section 1 will appear beneath the beginning
-% of section 2.)
-% \par\penalty-10029
-% If any insertions cannot fit on the current page, eject them, and
-% then allow the following section to begin immediately on the same
-% page as the last insert. If all insertions do fit on the current
-% page, then the following text will continue immediately on this
-% page.
-% \barrier{\eject}{\topins}
-% If there are any pageinserts or topinserts that do not fit on the
-% current page, eject them, and then allow the following section to
-% begin immediately on the same page as the last insert. Split
-% footnotes or other insertions are allowed to intrude into the next
-% section.
-% \barrier{\supereject}{\topins}
-% Like the \barrier command above, but if any inserts are ejected
-% the following section will begin at the top of a new page (like
-% \supereject).
-% \barrier{...}{\footins}
-% *** NOT ALLOWED *** You will get spurious space and footnote-rules
-% at the bottom of pages!
-% \barrier{...}{\margins}
-% If you define other insertion classes, such as marginal notes, you
-% can use \barrier for them too. But only if \skip\margins=0pt.
-% You must also add any new insertion classes to the definition of
-% \placerestoreoutput
-%
-% How to use: First, \input this file (of course!). Then, at the beginning
-% of a new section, or at any boundary that insertions should not cross, put
-% one of the commands listed above. Presumably, you will actually put these
-% commands at the start of your own \section or \startsection macro; that is
-% why they are non mnemonic!
-%
-% There is a slight chance that a footnote may be separated from its reference
-% in the text after \penalty-xxxxx when there are no split insertions. (LaTeX
-% has the same possibility at every float!)
-
-\chardef\noplaceoutput\catcode`\@
-\catcode`\@=11
-
-\edef\zero@skip{\the\z@skip}
-
-\def\barrier#1#2{\par\begingroup
- \ifdim\skip#2>\z@{\newlinechar10\errhelp{\barrier#2may produce some spurious
- extra material on the page, ^^J but I will try anyway.}\errmessage{Bad use
- of \string\barrier}}%
- \fi
- \skip@\lastskip \edef\next{\the\skip@}\ifx\next\zero@skip\else\vskip-\skip@\fi
- \penalty\z@ % update page parameters
- \fam-\insertpenalties
- \insert#2{\floatingpenalty\@ne}%
- \ifx\next\zero@skip\else\vskip\skip@\fi
- \advance\fam\insertpenalties % 0: no held; 1: held over
- \expandafter\endgroup
- \ifnum\fam=\@ne % then do eject
-% \message{There are held-over \string#2 inserts; performing \string#1. }%
- \ifdim\pagetotal<\topskip \leftline{}\kern-\topskip\fi % avoid empty list
- {\dimen@\pagetotal \advance\dimen@\pagedepth
- \ifdim\dimen@<\pagegoal\vfill\fi}%
- #1\@barrier{#1}{#2}\else
-% \message{There are no held-over \string#2 inserts. \space}%
-\fi
-}
-
-\def\placeinsoutput{%
-\ifnum\outputpenalty=-20030\relax % eject if any footnotes
- \ifvoid\footins\else
- \fam\insertpenalties \advance\fam\@ne \insertpenalties\fam
- \fi \outputpenalty=-20029\relax
-\fi
-\ifnum\outputpenalty=-20029\relax % Check for `supereject' flag
- \ifnum\insertpenalties>\z@ % something is being held over, must get it out
-% \message{Forcing insertions on their own pages. \space}%
- \ifvoid\footins \r@ggedbottomtrue \else \advance\skip\footins 0ptplus1fil\fi
- \noplaceoutput % performs \supereject
- \else % must rejoin seamlessly:
- \placerestoreoutput
- \fi
-\else % check for other flag...
- \ifnum\outputpenalty=-10028 % in the middle of ejecting
- \ifnum\insertpenalties=\z@ \global\setbox\@cclv\vbox{}\fi
- \outputpenalty=-10029
- \fi
- \ifnum\outputpenalty=-10029\relax % section start
- \ifnum\insertpenalties>\z@ % something is being held over, must get it out
-% \message{Forcing insertions. \space}%
- \ifvoid\footins \r@ggedbottomtrue \else \advance\skip\footins 0ptplus1fil\fi
- \noplaceoutput % performs \eject, perhaps repeatedly:
- \leftline{}\kern-\topskip \penalty-10028\relax % (like \dosupereject)
- \else % must rejoin seamlessly:
- \placerestoreoutput
- \fi
- \else % just a regular page break
- \noplaceoutput
- \fi
-\fi
-}
-
-% there is a slim chance that footnotes may lose their place.
-\def\placerestoreoutput{%
- \ifvoid\footins\else\insert\footins{\unvbox\footins}\fi
- \ifvoid\topins\else\insert\topins{\unvbox\topins}\fi
-% If you have other floating insertion classes, do the same here.
- \unvbox\@cclv
-}
-
-\catcode`\@=\noplaceoutput
-
-\edef\noplaceoutput{\the\output}
-\output{\placeinsoutput}