summaryrefslogtreecommitdiff
path: root/macros/plain/formats/lollipop/tex/lollipop-float.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/plain/formats/lollipop/tex/lollipop-float.tex')
-rw-r--r--macros/plain/formats/lollipop/tex/lollipop-float.tex51
1 files changed, 51 insertions, 0 deletions
diff --git a/macros/plain/formats/lollipop/tex/lollipop-float.tex b/macros/plain/formats/lollipop/tex/lollipop-float.tex
new file mode 100644
index 0000000000..6f493748f9
--- /dev/null
+++ b/macros/plain/formats/lollipop/tex/lollipop-float.tex
@@ -0,0 +1,51 @@
+% lollipop-floats.tex copyright 1992/3 Victor Eijkhout
+% copyright 2014--2016 Vafa Khalighi
+%
+%
+% This program is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% (at your option) any later version.
+%
+% This program is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with this program. If not, see <http://www.gnu.org/licenses/>.
+%
+%
+% these macros handle inserts for the Lollipop format
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%% Floating insertions %%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\@GenericConstruct{Insertion}
+
+\NewTrace:ins
+
+\@InsertionOption{location}{
+ \switch {\if\EqualString{#1}}
+ {top} {}
+ {bot} {}
+ {mid} {}
+ {default} {\Wmessage{Unknown qualifier: <location:#1>}}
+ \endswitch}
+\newif\ifsplit@insert
+\add@Insertion@default{\split@insertno}
+\@InsertionOption{split}{
+ \switch {\if\EqualString{#1}}
+ {no} {\split@insertno}
+ {default} {\split@insertyes}
+ \endswitch}
+
+\def\@DefineInsertion{
+ \csarg\newinsert{\@name @ins}
+ \csarg\edef{\@name}{\insert\CSname{\@name @ins}
+ \ifsplit@insert\else\vbox\fi % make this a box if no split allowed
+ \bgroup \the\before@coms
+ }
+ \@DefineStopCommand{\the\after@coms \egroup}
+ }
+\endinput