Prevent page breaks directly before boxed typings.
[matthijs/master-project/report.git] / Utils / Lambda.tex
index 2b790d0..25eff44 100644 (file)
@@ -59,8 +59,10 @@ draw b;
 
 % Install the lambda calculus pretty-printer, as defined in pret-lam.lua.
 \installprettytype [LAM] [LAM]
-% Define \startlambda \stoplambda
-\definetyping[lambda][option=LAM,style=sans,before=\startboxed,after=\stopboxed,strip=auto]
+% Define \startlambda \stoplambda. Suppress page breaks directly before
+% such a box (\page[no] only works directly after a paragraph break, so
+% insert one).
+\definetyping[lambda][option=LAM,style=sans,before={\par\page[no]\startboxed},after={\stopboxed},strip=auto]
 % Define \startunboxedlambda \stopunboxedlambda
 \definetyping[unboxedlambda][option=LAM,style=sans,strip=auto]
 
@@ -70,12 +72,12 @@ draw b;
 % Install the transformation pretty-printer, as defined in pret-trans.lua.
 \installprettytype [TRANS] [TRANS]
 % Define \starttrans \stoptrans
-\definetyping[trans][option=TRANS,style=normal,before=\startboxed,after=\stopboxed,strip=auto]
+\definetyping[trans][option=TRANS,style=normal,before={\par\page[no]\startboxed},after={\stopboxed},strip=auto]
 
 % Install the haskell pretty-printer, as defined in pret-haskell.lua.
 \installprettytype [HASKELL] [HASKELL]
 % Define \starthaskell \stophaskell
-\definetyping[haskell][option=HASKELL,before=\startboxed,after=\stopboxed,strip=auto]
+\definetyping[haskell][option=HASKELL,before={\par\page[no]\startboxed},after={\stopboxed},strip=auto]
 % Define \hs
 \definetype[hs][option=HASKELL,style=mono]