2 % WARNING: don't leave blank lines in the PS-code; they are
3 % transformed into \par
7 % header info (macros/defs, etc) should go into a \special{! ... },
8 % note the ! sign. See dvips.info for details.
12 % /foo { operatorname } bind def
14 % ``compiles'' operatorname binding in the body of foo, making
15 % the code faster, and more reliable (less flexible)
17 % transplant a TeX dimension into the PS output.
18 \def\PSsetTeXdimen#1{\expandafter\special{! /#1 (\the\csname #1\endcsname) deftexdimen}}
20 \def\turnOnPostScript{%
22 % PS helper: convert (0.2pt) to the token 0.2
26 thestring 0 thestring length 2 sub
38 \PSsetTeXdimen{staffrulethickness}
39 \PSsetTeXdimen{staffheight}
40 % urg, no dvips.info over here...
41 %\special{! \input lily.ps }
45 exch pop //systemdict /run get exec
48 /undefinedfilename signalerror
53 % This sets CTM so that you get to the currentpoint
54 % by executing a 0 0 moveto
55 \special{ps: @beginspecial @setspecial ##1 @endspecial}
59 %\PSsetTeXdimen{staffrulethickness}
60 %\PSsetTeXdimen{staffheight}
63 \def\turnOnExperimentalFeatures{%