X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fmaster-project%2Freport.git;a=blobdiff_plain;f=Utils%2FLambda.tex;h=fe1fb6ffcf405a506ce9c818b280b74573043237;hp=5efe1df0f0ad9aaeed8a510709e6ab490b212eeb;hb=8515f491f83e63caa71de03c6e71b25df12aedb2;hpb=de2fa4e3c8f450f3e3cb4cd1053ad055da8b4717 diff --git a/Utils/Lambda.tex b/Utils/Lambda.tex index 5efe1df..fe1fb6f 100644 --- a/Utils/Lambda.tex +++ b/Utils/Lambda.tex @@ -8,7 +8,7 @@ path a, b; % Create a rectangle of the full size a := origin -- (\MPvar{width}, 0mm); % Randomize it a bit -b := a randomized (\overlaywidth / 25) ; +b := a randomized (\overlaywidth / 50) ; % And draw it drawoptions (withpen pencircle scaled .75mm withcolor black) ; draw b; @@ -22,6 +22,25 @@ draw b; {\setupMPvariables[HLine][#1]% \useMPgraphic{HLine}} +\startuseMPgraphic{HDLine} +path a, b; +% Create a rectangle of the full size +a := origin -- (\MPvar{width}, 0mm); +% Randomize it a bit +b := a randomized (\overlaywidth / 100) ; +% And draw it +drawoptions (withpen pencircle scaled .75mm withcolor black dashed evenly) ; +draw b; +\stopuseMPgraphic + +% Draw a line with the given options. Accepts only the 'width' option. Be +% careful that these are metapost options, so use \the\textwidth instead of +% textwidth, and a metapost expression for arithmethic (e.g. 0.5 * +% \the\textwidth instead of 0.5\textwidth). +\def\HDLine[#1]% + {\setupMPvariables[HDLine][#1]% + \useMPgraphic{HDLine}} + \startuseMPgraphic{box} path a, b; % Create a rectangle of the full size @@ -71,9 +90,34 @@ draw b; \setuptyping[option=none,style=\tttf] } +% Type the given buffer with the haskell typing style. +% e.g., \typebufferhs{buffname} +\define[1]\typebufferhs{ + % We can't use \startlambda here defined by definetyping[lambda] above when + % typing buffers, so instead we'll redfine the options here. + \setuptyping[option=HASKELL,style=mono] + \startboxed + \typebuffer[#1] + \stopboxed + % Reset the typing options + \setuptyping[option=none,style=\tttf] +} + % Display a useMPgraphic in a pretty box \define[1]\boxedgraphic{ \startboxed \useMPgraphic{#1} \stopboxed } + +% Define a "definition" float. We would like some more backgroundoffset, but +% this offset doesn't move the caption, causing the border to cross the +% caption... Also, centering the content didn't seem to work... +% TODO: Make more pretty. +\definefloat[definition][definitions] +\setupfloat[definition][background=box,backgroundoffset=1mm] + +% Define an "example" float. Don't add box around it, since an example will +% commonly contain two boxed items (Before / after, code / picture). +\definefloat[example][examples] +\setupcaption[example][location=top] % Put captions on top