-
-
-tikz :: forall c .
- (forall g .
- (Int -> PGArrow g (GArrowUnit g) Int) ->
- (PGArrow g (GArrowTensor g c c) c) ->
- PGArrow g c c)
- -> IO ()
-tikz x = tikz' $ beautify $ optimize $ unG (x (\c -> PGArrowD { unG = GAS_const c }) (PGArrowD { unG = GAS_merge }))
-
-tikz' example
- = do putStrLn "\\documentclass{article}"
- putStrLn "\\usepackage[paperwidth=\\maxdimen,paperheight=\\maxdimen]{geometry}"
- putStrLn "\\usepackage{tikz}"
- putStrLn "\\usepackage{amsmath}"
- putStrLn "\\usepackage[tightpage,active]{preview}"
- putStrLn "\\begin{document}"
- putStrLn "\\setlength\\PreviewBorder{5pt}"
- putStrLn "\\begin{preview}"
- putStrLn $ "\\begin{tikzpicture}[every on chain/.style={join=by ->},yscale=-1]"
- tikz <- toTikZ example
- putStrLn tikz
- putStrLn "\\end{tikzpicture}"
- putStrLn "\\end{preview}"
- --putStrLn "\\pagebreak"
- --putStrLn "\\begin{align*}"
- --putStr (toTikZ' example)
- --putStrLn "\\end{align*}"
- putStrLn "\\end{document}"
+
+tikz_header =
+ "\\documentclass{article}\n" ++
+ "\\usepackage[paperwidth=\\maxdimen,paperheight=\\maxdimen]{geometry}\n" ++
+ "\\usepackage{tikz}\n" ++
+ "\\usepackage{amsmath}\n" ++
+ "\\usepackage[tightpage,active]{preview}\n" ++
+ "\\begin{document}\n" ++
+ "\\setlength\\PreviewBorder{5pt}\n" ++
+ "\\begin{preview}\n" ++
+ "\\begin{tikzpicture}[every on chain/.style={join=by ->},yscale=-1]\n"
+
+tikz_footer =
+ "\\end{tikzpicture}\n" ++
+ "\\end{preview}\n" ++
+ "\\end{document}\n"
+
+tikz example =
+ do putStrLn tikz_header
+ tikz <- toTikZ example
+ putStrLn tikz
+ putStrLn tikz_footer