Mercurial > emacs
comparison etc/ps-prin0.ps @ 29497:0763a6ed0743
Insert a version number comment (5.2.2). Indentation fix.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Wed, 07 Jun 2000 15:38:45 +0000 |
parents | a94b3ce0fa8c |
children | cdd489417ae4 |
comparison
equal
deleted
inserted
replaced
29496:bb81eb902e0c | 29497:0763a6ed0743 |
---|---|
1 % === BEGIN ps-print prologue 0 | 1 % === BEGIN ps-print prologue 0 |
2 % version: 5.2.2 | |
2 | 3 |
3 %%BeginProcSet: ErrorHandler | 4 %%BeginProcSet: ErrorHandler |
4 % Downloaded Error Break-page handler | 5 % Downloaded Error Break-page handler |
5 % Adapted from: | 6 % Adapted from: |
6 % PostScript Language Program Design, | 7 % PostScript Language Program Design, |
9 | 10 |
10 /ps$brkpage where{pop} | 11 /ps$brkpage where{pop} |
11 { | 12 { |
12 /ps$brkpage 64 dict def | 13 /ps$brkpage 64 dict def |
13 ps$brkpage begin | 14 ps$brkpage begin |
14 /tx 0 def /ty 0 def /toy 0 def /tox 0 def | 15 /tx 0 def/ty 0 def/toy 0 def/tox 0 def |
15 /prnt{ | 16 /prnt{ |
16 dup type /stringtype ne{=string cvs}if | 17 dup type/stringtype ne{=string cvs}if |
17 dup length 6 mul | 18 dup length 6 mul |
18 /tx exch def /ty 10 def | 19 /tx exch def/ty 10 def |
19 currentpoint /toy exch def /tox exch def | 20 currentpoint/toy exch def/tox exch def |
20 1 setgray newpath | 21 1 setgray newpath |
21 tox toy 2 sub moveto | 22 tox toy 2 sub moveto |
22 0 ty rlineto tx 0 rlineto | 23 0 ty rlineto tx 0 rlineto |
23 0 ty neg rlineto | 24 0 ty neg rlineto |
24 closepath fill | 25 closepath fill |
28 /=={/cp 0 def typeprint nl}def | 29 /=={/cp 0 def typeprint nl}def |
29 /typeprint{dup type dup currentdict exch known{exec}{unknowntype}ifelse}readonly def | 30 /typeprint{dup type dup currentdict exch known{exec}{unknowntype}ifelse}readonly def |
30 /lmargin 72 def | 31 /lmargin 72 def |
31 /rmargin 72 def | 32 /rmargin 72 def |
32 /tprint{ | 33 /tprint{ |
33 dup length cp add rmargin gt{nl /cp 0 def}if | 34 dup length cp add rmargin gt{nl/cp 0 def}if |
34 dup length cp add /cp exch def | 35 dup length cp add/cp exch def |
35 prnt | 36 prnt |
36 }readonly def | 37 }readonly def |
37 /cvsprint{=string cvs tprint( )tprint}readonly def | 38 /cvsprint{=string cvs tprint( )tprint}readonly def |
38 /unknowntype{exch pop cvlit(??)tprint cvsprint}readonly def | 39 /unknowntype{exch pop cvlit(??)tprint cvsprint}readonly def |
39 /integertype{cvsprint}readonly def | 40 /integertype{cvsprint}readonly def |
61 dup rcheck | 62 dup rcheck |
62 {dup xcheck | 63 {dup xcheck |
63 {({)tprint{typeprint}forall(})tprint} | 64 {({)tprint{typeprint}forall(})tprint} |
64 {([)tprint{typeprint}forall(])tprint}ifelse} | 65 {([)tprint{typeprint}forall(])tprint}ifelse} |
65 {pop(-packedarray-)tprint}ifelse}readonly def | 66 {pop(-packedarray-)tprint}ifelse}readonly def |
66 /courier /Courier findfont 10 scalefont def | 67 /courier/Courier findfont 10 scalefont def |
67 /OLDhandleerror errordict /handleerror get def | 68 /OLDhandleerror errordict/handleerror get def |
68 end %ps$brkpage | 69 end %ps$brkpage |
69 | 70 |
70 /handleerror{ | 71 /handleerror{ |
71 systemdict begin $error begin ps$brkpage begin | 72 systemdict begin $error begin ps$brkpage begin |
72 newerror | 73 newerror |
73 {/newerror false store vmstatus pop pop 0 ne{grestoreall}if | 74 {/newerror false store vmstatus pop pop 0 ne{grestoreall}if |
74 initgraphics | 75 initgraphics |
75 ErrorMessage 1 and 0 ne{ % print on paper | 76 ErrorMessage 1 and 0 ne{ % print on paper |
76 courier setfont lmargin 720 moveto | 77 courier setfont lmargin 720 moveto |
77 (# ERROR: )prnt errorname prnt nl | 78 (# ERROR: )prnt errorname prnt nl |
78 (# OFFENDING COMMAND: )prnt /command load prnt | 79 (# OFFENDING COMMAND: )prnt/command load prnt |
79 $error /ostack known | 80 $error/ostack known |
80 {nl nl(# STACK:)prnt nl nl $error /ostack get aload length{==}repeat}if | 81 {nl nl(# STACK:)prnt nl nl $error/ostack get aload length{==}repeat}if |
81 $error /errorinfo known | 82 $error/errorinfo known |
82 {nl nl(# ERRORINFO:)prnt nl nl $error /errorinfo get aload length{==}repeat}if | 83 {nl nl(# ERRORINFO:)prnt nl nl $error/errorinfo get aload length{==}repeat}if |
83 systemdict /showpage get exec}if | 84 systemdict/showpage get exec}if |
84 ErrorMessage 2 and 0 ne{ % send back to printing system | 85 ErrorMessage 2 and 0 ne{ % send back to printing system |
85 (\%\%[ Error: )print errorname =print | 86 (\%\%[ Error: )print errorname =print |
86 (; OffendingCommand: )print/command load =print | 87 (; OffendingCommand: )print/command load =print |
87 $error /errorinfo known | 88 $error/errorinfo known |
88 {(; ErrorInfo:)print $error /errorinfo get aload length{( )=print =print}repeat}if | 89 {(; ErrorInfo:)print $error/errorinfo get aload length{( )=print =print}repeat}if |
89 ( ]\%\%)= flush | 90 ( ]\%\%)= flush |
90 (\%\%[ Rest of job is ignored ]\%\%)= flush}if | 91 (\%\%[ Rest of job is ignored ]\%\%)= flush}if |
91 /newerror true store}if | 92 /newerror true store}if |
92 end end end | 93 end end end |
93 stop | 94 stop |
121 | 122 |
122 /DefOp{ | 123 /DefOp{ |
123 dup where{pop pop pop} | 124 dup where{pop pop pop} |
124 {exch dup where{pop}{pop/pop}ifelse load def}ifelse}def | 125 {exch dup where{pop}{pop/pop}ifelse load def}ifelse}def |
125 | 126 |
126 /duplexmode /setduplexmode DefOp | 127 /duplexmode/setduplexmode DefOp |
127 /tumble /settumble DefOp | 128 /tumble/settumble DefOp |
128 | 129 |
129 % === END ps-print prologue 0 | 130 % === END ps-print prologue 0 |